Doing the arithmetic we see that this code uses a base time of 550 microseconds. The lead in is a unique burst as is the lead out. It is a pulse width modulation system where the information is carried in the length of the off time with a fixed duration of on time.
The NEC message format is quite a bit more complicated then that of Sony. It is always a 32-bit code. Which consists of 16 bits of data and 16 bits of error checking. The code is divided into four 8-bit fields.
Device Code |
Device code Compliment |
Function Code |
Function Code Compliment |
A device code will be in the range of 0 to 255 or 256 discrete device codes. The same is true of the function code. The compliment fields are the 1’s compliment of the code they represent. The device code and the device code compliment must add up to 255 or else there is an error. The same is true of the function code and the function code compliment. NEC uses a discrete lead in and a discrete lead out, so the total code length will take 34 burst pairs to represent as a Burst Pair Sequence.
The following as an example of a Pioneer IR sequence for the CLD79 Elite Laser Disk Player.
0000 0067 0000 0022 0156 00ab 0016 0060 0016 0060
0016 0060 0016 0016 0016 0060 0016 0016 0016 0060
0016 0016 0016 0016 0016 0016 0016 0016 0016 0060
0016 0016 0016 0060 0016 0016 0016 0060 0016 0060
0016 0016 0016 0060 0016 0016 0016 0016 0016 0060
0016 0060 0016 0060 0016 0016 0016 0060 0016 0016
0016 0060 0016 0060 0016 0016 0016 0016 0016 0016
0016 0593
If you work out all of the detailed analysis in a manner similar to that shown for the sony you should determine that the carrier frequency is indeed 40 khz, there are 34 total burst pairs in the one burst sequence used, and the burst sequence is repeatable. The actual 32 bits of data is: 00010101 11101010 01011000 10100111 Looking at the adjacent fields (1 & 2, 3 & 4) we see they are compliments of each other. A short way of checking for compliments is that ones become zeros and zeros become ones.
The device code as transmitted is 00010101. Reversing it we get the binary value 10101000. This is the decimal value of 128+32+8=168.
The function code is transmitted as 01011000. Reversing it we get the binary number 00011010. This is the decimal value 16+8+2=26.
This is the discrete Power On Code for the CLD 79.
Conclusion
Let me once again say thank you to all those who helped me with the deciphering of these codes. I used to do it for a living but that was for some government agency and that is a whole other story. All the help made it much faster and much more enjoyable. If you are interested in finding out more about IR codes search the WWW. Sci.Electronics FAQ is a good search parameter along with the word "IR code". An article by Scott Coleman of Xanadu consulting sheds a lot of light on the Sony Control-S protocol. An excellent article by Juergen Putger describes decoding IR remotes in general. Once you find a couple of them, they will have links to the others.