Some info about RC6 / RC6A

RC6 is the basic simplest form:

Header <> Toggles <> System(8-bit) <> Command(8-bit)

This presumably uses the official standard meanings for systems and commands.

RC6A has a slightly different header, and inserts an extra 8 or 16 bits after the Toggles.
The earliest bit dictates whether it is 8 or 16.
This allows 128 plus 32678 manufacturer-specific codes.
Each officially-numbered manufacturer can then interpret the system and command codes as they please.

As it is, people will just reverse-engineer it and do their own thing, just like the RC5 projects from this site, they cannot do that and call it RC6 or RC6A, also, they risk interference from legitimately coded equipment.
So it is in their own interests to conform, lest their troublesome equipment gets mentioned in HiFi News etc.

The main point is that most people can share a common set of codings to allow manufacturer's handsets to be compatible with each other's equipment.

The second point is that if a manufacturer invents something completely new that does not have an existing system / command code set, they can apply to have it registered as an official RC6 code set.
If their new gadget doesn't look like it is going to become a common product worthy of the limited official RC6 system codes, they can be assigned an 8 or 16-bit manufacturer code and do their own thing with their system / command coding, the RC6 / RC6A authorities can then wash their hands of that.
Even if the manufacturer makes a complete pigs ear, they've only made a mess for themselves.
Other manufacturer's equipment will either think "Its not RC6" or "Its RC6A but not my manufacturer" and ignore it.

This is all only going to work if there is one organisation authority to administer the codings and Philips have the right to do so.
That's why Philips is a bit reserved with information about RC6 to make it not a tangle of codes what with RC5 is happend.

The RC6 format is defined as follows:

HHHHHHH Header data (16 bits) 1111110010010101 NO bi-phase coded
T T Toggle bits (4 bits)  0011 or 1100 NO bi-phase coded
SSSSSSSS System byte (8 bits) bi-phase coded
CCCCCCCC Command byte (8 bits) bi-phase coded


The RC6A format is defined as follows:

HHHHHHH Header data (17 bits) 11111110010101001 NO bi-phase coded
T T Toggle bits (4 bits) 0011 or 1100 NO bi-phase coded
s (if it's 0)
s (if it's 1)
Customer range 0...127  (7 bits)
Customer range 32768...65535 (15 bits)
bi-phase coded
UUUUUUU Customer identifier (7 or 15 bits depending on 's' bit) bi-phase coded
SSSSSSSS System byte (8 bits) bi-phase coded
CCCCCCCC Command byte (8 bits) bi-phase coded


All bits which have bi-phase encoded will have a single bit split up into two half bits:
0 = 01  /  1 = 10   Note: Inverse from RC5 / RC5X biphase format!

Note: a RC6 / RC6A bit transmission takes half the time of a RC5 / RC5X bit transmission.

For example some codes for a remote controlled beamer:

Beamer 'on / stand-by':
1111110010010101 0011 0101100110011001 0101010110100101


1111110010010101 Header data RC6 NO bi-phase coded
0011 or 1100 Toggle bits NO bi-phase coded
0101100110011001 System code = 00101010 = 42
0101010110100101 Command code = 00001100 = 12

Thus, a beamer works with RC6, the system-code is 42 and the command-code for 'ON / STAND-BY' is 12.
Here are some other beamer RC6 command-codes.

88 UP
92 OK
93 P.I.P.
245 16:9 / 3:4