RC-6 Code Format Information

Using the RC-5 code explanation as a starting point, RC-6 has a number of similarities.

I haven't yet deciphered the RC-6 header bits, but there are odd and even codes (using a toggle bit), just like RC-5.

Here are the 2 versions of a sample RC-6 code:

0060 0020 0010 0020 0010 0010 0010 0010 0030 0030 0010 0010 0010 0010 0020 0020 0010 0010 0010 0010 0020 0020 0010 0010 0020 0020 0010 0010 0010 0010 0020 0020 0010 0bb0
0060 0020 0010 0020 0010 0010 0010 0010 0010 0020 0020 0010 0010 0010 0010 0010 0020 0020 0010 0010 0010 0010 0020 0020 0010 0010 0020 0020 0010 0010 0010 0010 0020 0020 0010 0bb0

Breaking each down into bits, we get:

I haven't figured out the meaning of the header bits, so they are only broken into transitions for now. If I ever figure them out, I'll update this page.

Header bits:
+0060 -0020 +0010 -0020 +0010 -0010 +0010 -0010 +0030 -0020

System bits:
-0010 +0010 0
-0010 +0010 0
-0010 +0010 0
+0010 -0010 1
-0010 +0010 0
-0010 +0010 0
-0010 +0010 0
+0010 -0010 1

Command bits:
-0010 +0010 0
-0010 +0010 0
+0010 -0010 1
-0010 +0010 0
-0010 +0010 0
-0010 +0010 0
+0010 -0010 1
-0010 +0010 0

Lead out:
-0bb0

+0060 -0020 +0010 -0020 +0010 -0010 +0010 -0010 +0010 -0020 +0020

System bits:
-0010 +0010
-0010 +0010
-0010 +0010
+0010 -0010
-0010 +0010
-0010 +0010
-0010 +0010
+0010 -0010

Command bits:
-0010 +0010
-0010 +0010
+0010 -0010
-0010 +0010
-0010 +0010
-0010 +0010
+0010 -0010
-0010 +0010

Lead out:
-0bb0

System value = 00010001 (binary) = 17 decimal = 11 hex
Command value = 00100010 (binary) = 34 decimal = 22 hex

After the header bits, the bit values are:

Bits 0-7 are the system code, high bit first
Bits 8-15 are the command code, high bit first

For RC-6A, there is also a customer code.
If the customer code is >= 32768, the code has 32 bits, otherwise, 24 bits:
Bits 0-7 (or 0-15) are the customer code, high bit first
Bits 8-15 (or 16-23) are the system code, high bit first.
Bits 16-23 (or 24-31) are the command code, high bit first.

1