On December 30, 2007 at 02:43, SoCalAudioVideo said...
Toshiba
Discrete on: 40 BF 7E 81
Toshiba uses NEC1. (If you just had the above info, you'd need to either be experienced enough to know Toshiba uses NEC1, or find some learned signals or CCF files to find out that Toshiba uses NEC1).
Knowing that, you then find the device and function numbers:
The 40 is the device number in hex. So device is 64 decimal.
In some signals the BF would be hex for the subdevice. But in NEC protocols, when those first two numbers add up to FF there is no subdevice. 40 plus BF equals FF so in this example there is no subdevice.
(BF hex is 191 decimal. MakeHex would work just as well with Device=64.191 as it would with Device=64 so you don't need to check for that special case if you don't want to.)
The final two numbers should add up to FF. In fact 7E plus 81 does equal FF. If it didn't add up correctly it wouldn't be NEC1 protocol (it would probably be that Apple protocol that is similar to NEC1, but there are other possibilities).
After confirming the 7E plus 81 is FF, you get the function number by converting 7E to decimal, which is 126.
pronto hex: 900a 006d 0000 0001 40BF 7E81
From there it is a little easier.
900a always means it is something at least very similar to NEC1 protocol.
The 006d means you have the standard frequency for NEC1. A different value would indicate a nonstandard frequency (though often that means the correct frequency really is standard but the Pronto that learned this signal made an error in learning the frequency).
The 40BF 7E81 are then interpreted just as I described above when they were "40 BF 7E 81" from Toshiba documentation.
Now, how do I get from that to:
From: NEC1, device 64, function 126
It is easy to get the long form Pronto Hex with MakeHex.