Tech Tip: IR Control with RC6 coded IR signals

Philip’s RC6 IR format differs from normal IR (infrared) by employing a toggle sequence in the code. The toggle flips back and forth with every button press of the remote control. For example, the following two IR codes are the first and second press of the same button on a remote control.

Sequence A


Sequence B


Note: the values shown in bold are reversed between the two sequences. This is referred to as the toggle bit.

In order to automate RC6 devices using control software, the software must have both codes (A and B) and flip back and forth between the two as the remote control does. A problem may arise in the beginning when the software does not know which of the two codes to start with (A or B). To avoid this issue, the software should send a benign A sequence twice before sending the actual IR codes. This will ensure the device is expecting a B sequence as the next code, and the software can start with the B sequence of the real command it wants to send. Most remotes have a button that is considered benign, such as the CLEAR button.


You want to change channels using your software. Using the remote, you would need to enter a three digit channel number and then press the ENTER button. Below are the commands that will need to be sent from software:

  1. Send the sequence A version of the CLEAR button with a repeat count of two.

  2. Send the sequence B version of the first numerical digit of the channel number.

  3. Send the sequence A version of the second numerical digit.

  4. Send the sequence B version of the third numerical digit.

  5. Send the sequence A version of the ENTER button.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request


  • 0
    Ahmad Al-Nems

    could we use only one code using no-op code at the end off press (release) ?


Please sign in to leave a comment.
Powered by Zendesk