On an Avanti CD player remote which uses the F12 protocol, I find that the learned commands result in odd OBCs having a Subdevice of 0 while the even OBCs have a Subdevice of 1.
All of the codes from the remote in question had Device 3.
Also, DecodeIR.dll version 2.41 was used.
Explanation of F12 Subdevice number
Moderator: Moderators
Explanation of F12 Subdevice number
"The best thing possible to do with knowledge is to share it".
-
vickyg2003
- Site Admin
- Posts: 7104
- Joined: Sat Mar 20, 2004 12:19 pm
- Location: Florida
- Contact:
The F12 protcol doesn't seem to have a Subdevice, its a device, a checkbit and an OBC,
If you suspect the F12 is not the correct decode you might want to capture a complete set of codes and post the IR(s) so that someone can take a look,
If you suspect the F12 is not the correct decode you might want to capture a complete set of codes and post the IR(s) so that someone can take a look,
Remember to provide feedback to let us know how the problem was solved and share your upgrades.
Tip: When creating an upgrade, always include ALL functions from the oem remote, even if you never plan on assigning them to a button. Complete function lists makes an upgrade more helpful to others.
Tip: When creating an upgrade, always include ALL functions from the oem remote, even if you never plan on assigning them to a button. Complete function lists makes an upgrade more helpful to others.
The F12 IR protocol is not well documented. As Vicky says, it features a 3 bit device number, an 8 bit function (OBC) number, and a check bit. DecodeIR.html simply says D:3, C:1, F:8. I've now looked at a number of learned F12 signals, and it appears that the bit C is what is normally termed a parity bit, in this case a even parity bit.
That means that C is set to zero if the number of 1 bits in the 11 bits of D+F is even, and set to 1 if the number of 1 bits is odd.
DecodeIR.dll displays the C bit as a subdevice bit, and that is convenient for e.g. Pronto Hex representations. However, the 00 1A executor we use for F12 appears to calculate the C bit, and so it isn't necessary to specify a "subdevice" in RM or KM.
In other words, just ignore the subdevice reported by DecodeIR.dll, and just use the device number.
That means that C is set to zero if the number of 1 bits in the 11 bits of D+F is even, and set to 1 if the number of 1 bits is odd.
DecodeIR.dll displays the C bit as a subdevice bit, and that is convenient for e.g. Pronto Hex representations. However, the 00 1A executor we use for F12 appears to calculate the C bit, and so it isn't necessary to specify a "subdevice" in RM or KM.
In other words, just ignore the subdevice reported by DecodeIR.dll, and just use the device number.