sirjp1 wrote:I tried this and it works. The Rec button sends the command on the first press if I use the EFC above. So the mystery continues, why is it that when I use a device upgrade file I have to press Rec twice, but with a learned command or EFC code it works on the first press?
Btw, is there a post that describes how you figure out these EFC codes? How did you find 35228 for example?
No mystery. We're simply getting around UEI's rules. They're trying to protect you from recording over something by accident (probably a relic of the old VCR days). If you learn or reassign, then it's no longer the original record function, hence no reason to protect you anymore. When we change to a TV device type, since TVs can't record anyway, then the protection is also bypassed. In your case just leave it as a TV type. That doesn't hurt a thing.
We know from experience those big EFC values are used in complex protocols. That was our first clue. 3FG worked his magic and confirmed this hunch was correct. So to get the right EFCs, we just open the upgrade (Hamsterman's for example), note the device and subdevice, and pick the new protocol (changing from Sony20 to Sony Combo (12/15/20)). Enter the original device code back into the first subdev1 field (226). Then on the functions tab, change every Device and Subdevice to 26 and 226. Now we have all the original functions setup to work with the new protocol. All the new EFCs are calculated automatically. This doesn't come up a lot, so there is no documented procedure. Just make the new parameters to match the original ones. This only works going between different versions of the same protocol (from Sony20 to Sony Combo (12/15/20) for example). It wouldn't work going from Sony to Panasonic because they're entirely different and incompatible by design.
Note that if you type 00081 in the EFC5 column for the Eject function, it immediately changes to 35220, the same number you saw in your download. But also note that everything else is wrong (protocol, device and EFC). Hence entering 00081 on your remote resulted in all those being wrong as well, resulting in a function that didn't work. In the combo protocol, EFC 00081 means something entirely different than is does in the simple protocol.