|
JP1 Remotes
|
View previous topic :: View next topic |
Author |
Message |
eferz Expert
Joined: 03 Jun 2010 Posts: 1078 Location: Austin, Texas |
Posted: Fri Sep 24, 2010 8:05 am Post subject: |
|
|
I guess both Morac's and Alan's issues could have been avoided if the Tivo (Original) protocol was used instead of the 2-byte version to create the bins. |
|
Back to top |
|
|
vickyg2003 Site Admin
Joined: 20 Mar 2004 Posts: 7073 Location: Florida |
Posted: Fri Sep 24, 2010 8:58 am Post subject: |
|
|
The Robman wrote: |
The reason the 2-byte version doesn't import properly is because the unit code is not stored in the fixed data, it's stored in the variable data on each button. |
Most Bins that I have imported have not matched the RDMU (that's one of the reasons that it bugs me when there is only a Bin file for testing, without the accompanying RDMU *ahem*).
I don't think there is anything that can be done to correct this situation when a custom protocol is involved.
But what about these protocols that are in the protocols.ini?
Is there any Protocols.ini setting that can be set to get them to import correctly? _________________ 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.
Last edited by vickyg2003 on Fri Sep 24, 2010 9:50 am; edited 1 time in total |
|
Back to top |
|
|
The Robman Site Owner
Joined: 01 Aug 2003 Posts: 21238 Location: Chicago, IL |
Posted: Fri Sep 24, 2010 9:46 am Post subject: |
|
|
OK, I've just taken a closer look at the various versions of the Tivo protocol as implemented in RM and KM.
Just FYI, the Tivo protocol looks just like the NEC1 protocol (which is device, device comp, OBC, OBC comp) except that the left nibble of the OBC comp byte is replaced with the unit code.
1) The Tivo (Official 2-byte) protocol.
This is broken in RM. The 2nd byte of variable data is supposed to contain the unit code in the left nibble, and the remainder of the complement of the OBC in the right nibble. RM formats the unit code nibble correctly, but it sets the OBC complement nibble to zeroes. (It's OK in KM)
2) The Tivo (Official) (ie, 1-byte) protocol.
This one appears to be OK in both RM and KM.
3) The Tivo (Advanced) (ie, 1-byte) protocol.
This is a redundant protocol that only exists in RM, further more, it appears that it has the nibbles of the last byte reversed (ie, the unit code is where the OBC comp should be, and vice versa).
So, bottom line, you should ONLY use the Tivo (Official) protocol at this time. _________________ Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Last edited by The Robman on Fri Sep 24, 2010 6:30 pm; edited 1 time in total |
|
Back to top |
|
|
mr_d_p_gumby Expert
Joined: 03 Aug 2003 Posts: 1370 Location: Newbury Park, CA |
Posted: Fri Sep 24, 2010 10:35 am Post subject: |
|
|
The Robman wrote: | 3) The Tivo (Advanced) (ie, 1-byte) protocol.
This is a redundant protocol that only exists in RM... | It also used to exist in KM, but I retired it in v9.17 (Feb 2009). KM now automatically redirects any loaded upgrade using Tivo (Advanced) to use the Tivo (Official) 1-byte protocol.
The Robman wrote: | 1) The Tivo (Official 2-byte) protocol.
This is broken in both RM and KM. The 2nd byte of variable data is supposed to contain the unit code in the left nibble, and the remainder of the complement of the OBC in the right nibble. RM/KM format the unit code nibble correctly, but they both set the OBC complement nibble to zeroes. | I'm surprised this has not caused any problems. I checked, and the last time I did anything to the Tivo protocols in KM was in v8.22, which would have been sometimne back in 2005. _________________ Mike England |
|
Back to top |
|
|
alanrichey Expert
Joined: 24 Mar 2008 Posts: 3529 Location: UK/USA |
Posted: Fri Sep 24, 2010 10:53 am Post subject: |
|
|
Good, thanks for the explanation. I will start using the 1-byte version from now on.
What's the difference between (Official) and (Advanced) ? |
|
Back to top |
|
|
The Robman Site Owner
Joined: 01 Aug 2003 Posts: 21238 Location: Chicago, IL |
Posted: Fri Sep 24, 2010 12:44 pm Post subject: |
|
|
The main difference is that the Official version works and the Advanced version doesn't.
If you're interested in the history, when UEI initially created their executor for Tivo, they didn't bother to figure out how to generate the 2nd byte, so they used a 2-byte executor. Here in the JP1 world, we don't like to waste memory, so we wrote our own executor that generated the 2nd byte and therefore only needed 1 byte of variable data. We called this version "Tivo (hacked)" but eventually it got renamed "Tivo (Advanced)" because some people were scared to use it due to the worked "hacked" being in it's name.
Unfortunately, it looks like that when the Hacked/Advanced executor got ported over to RM, the data in the unit code byte got swapped so it's now reversed.
Eventually, UEI modified the official executor to use 1 variable byte of data, which made the hacked/advanced homemade executor redundant, so it was deleted from KM but still remains in RM. _________________ Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help! |
|
Back to top |
|
|
alanrichey Expert
Joined: 24 Mar 2008 Posts: 3529 Location: UK/USA |
Posted: Fri Sep 24, 2010 12:58 pm Post subject: |
|
|
Interesting, but it begs the question: Why are the non-working versions still in PROTOCOLS.INI ? |
|
Back to top |
|
|
The Robman Site Owner
Joined: 01 Aug 2003 Posts: 21238 Location: Chicago, IL |
Posted: Fri Sep 24, 2010 2:22 pm Post subject: |
|
|
Because (a) we didn't know they weren't working until 09:46 am today and (b) nobody's deleted them yet. _________________ Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help! |
|
Back to top |
|
|
alanrichey Expert
Joined: 24 Mar 2008 Posts: 3529 Location: UK/USA |
Posted: Fri Sep 24, 2010 2:44 pm Post subject: |
|
|
Ah, Sorry. I got the impression from your posting that those facts had been know for some time. |
|
Back to top |
|
|
The Robman Site Owner
Joined: 01 Aug 2003 Posts: 21238 Location: Chicago, IL |
Posted: Fri Sep 24, 2010 6:31 pm Post subject: |
|
|
mr_d_p_gumby wrote: | The Robman wrote: | 1) The Tivo (Official 2-byte) protocol.
This is broken in both RM and KM. The 2nd byte of variable data is supposed to contain the unit code in the left nibble, and the remainder of the complement of the OBC in the right nibble. RM/KM format the unit code nibble correctly, but they both set the OBC complement nibble to zeroes. | I'm surprised this has not caused any problems. I checked, and the last time I did anything to the Tivo protocols in KM was in v8.22, which would have been some time back in 2005. |
Sorry, I was mistaken, I just rechecked it and it works fine in KM.
I got fooled by the fact that the hex for most of the low number OBCs ends in "F" so therefore the byte2 hex was a constant "F0". When you test OBCs > 31 you can see that it works. _________________ Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help! |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|