 |
JP1 Remotes
|
| View previous topic :: View next topic |
| Author |
Message |
vickyg2003 Forum Regular
Joined: 20 Mar 2004 Posts: 3193 Location: Michigan
|
Posted: Thu Nov 05, 2009 12:50 pm Post subject: Manual setting KM and RM |
|
|
I need an education on how to get a protocol into RM and KM.
I've been working on a variation of the 00C9 protocol for a JVC48 derivative. It takes 5 bytes of fixed data, and for the life of me, I can't figure out how to get KM or RM to produce those 5 bytes of fixed data when using manual settings.
Any insight? _________________ 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.
|
|
| Back to top |
|
 |
johnsfine Site Admin
Joined: 10 Aug 2003 Posts: 4759 Location: Bedford, MA
|
Posted: Thu Nov 05, 2009 12:59 pm Post subject: |
|
|
| For RM it is easier and better to create an new entry in protocols.ini |
|
| Back to top |
|
 |
vickyg2003 Forum Regular
Joined: 20 Mar 2004 Posts: 3193 Location: Michigan
|
Posted: Thu Nov 05, 2009 3:02 pm Post subject: |
|
|
hahaha! Create an entry in protocols.ini. You have got to be kidding, right? I am definately NOT READY to do something like that!
A lot of what I do in PB, is merely make macro friendly changes to a protocol, and I don't know how to get these back to people. I've dropped the changes into their IR file and hand edited their device upgrade to point at my 01FF custom protocol, but from my own experience I know that having my upgrades in a KM or RM file makes it very nice when I setup a new remote.
There was a field in RM that seemed to be for fixed data, but it doesn't make it to the upgrade. _________________ 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.
|
|
| Back to top |
|
 |
gfb107 Expert
Joined: 03 Aug 2003 Posts: 3112 Location: Cary, NC
|
|
| Back to top |
|
 |
vickyg2003 Forum Regular
Joined: 20 Mar 2004 Posts: 3193 Location: Michigan
|
Posted: Fri Nov 06, 2009 2:16 pm Post subject: |
|
|
Okay, you don't know where I'm getting stuck.
1, on that advanced menu option where you suck in the protocol from the clipboard, what is the fixed raw data field for, and how do I use it.
2) Now I'm going to give you my JVC-48 example.
The JVC-48 protocol has 1 device and 1 sub device but has 5 bytes of fixed data. I went in and made a minor tweak to send the lead in pair on the "first frame only" and shorten the lead-out time. Not Rocket science, a pretty simple mod. I dump the protocol into IR, load it at the remote, shoot it at the widget and voile, the bumps are all in the right place. Now I want to put this in RM or KM. I have no idea of how to get this in there. Since this is the 00C9, a very common panasonic protocol, I need to give it a new PID and put it into an upgrade for the user, but I don't understand how the 5 bytes are calculated, nor what they do. I've dug around in protocol.ini at John's suggestion, but can't figure out how to get this information into the new upgrade. I've been playing with this for hours, but its just plain over my head.
[JVC-48]
OldNames=Panasonic JVC
PID=00 C9
CmdTranslator=Translator(lsb,comp)
CmdParms=OBC=0
Notes=JVC version of Kaseikyo
DevParms=Device,Sub Device
DeviceTranslator=Translator(lsb,comp,0,8,24) \
Translator(lsb,comp,1,8,32) \
XorCheck(8,0,255,2,24)
FixedData=ff 3f 7f ff ff _________________ 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.
|
|
| Back to top |
|
 |
vickyg2003 Forum Regular
Joined: 20 Mar 2004 Posts: 3193 Location: Michigan
|
Posted: Fri Nov 06, 2009 5:26 pm Post subject: |
|
|
Apparently I had RM in some sort of confused state. A big part of my problem with this modified protocol is that no matter what I put into my fixed data, I couldn't get the hex in the fixed data to make any sense. It wasn't hex, lsb, comp, comp, lsb, but I just went in with a clean RM file and was able to get the fixed data to come up with the numbers that I wanted. _________________ 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.
|
|
| Back to top |
|
 |
gfb107 Expert
Joined: 03 Aug 2003 Posts: 3112 Location: Cary, NC
|
Posted: Fri Nov 06, 2009 5:59 pm Post subject: |
|
|
You didn't give me the protocol upgrade code I asked for.
The number or fixed and variable bytes is coded is taken from the protocol upgrade code.
Unfortunately, you've picked a somewhat difficult case.
The DeviceTranslator entry tells you how to encode the device and sub-device in the fixed data, as well as any other special processing.
Translator(lsb,comp,0,8,24) says that the Device number (which is the first entry in the DevParm line, so it has index 0) is 8 bits and gets stored starting at bit 24 of the fixed data (that's byte 4), using LSB COMP.
Similarly, Translator(lsb,comp,1,8,32) says Sub Device (DevParm index 1) is 8 bits, stored a bit 32 (byte 5) using LSB COMP.
There's also the XorCheck, which means that there's an 8-bit xor checksum starting at bit 0 (byte 1), seeded with 255 (=$FF), computed over 2 bytes starting at bit 24 (byte 4).
We can't tell anything about the encoding of bytes 2 and 3, as they simply receive the initial value from the FixedData entry and RM performs no additional manipulation on them, and they are not part of the XOR checksum.
From the CmdTranslator line we also note that the variable byte is LSB COMP
Back to the Manual Settings Dialog in RM.
Once you've entered the PID of 01 FF and imported the protocol code,
The other fields should auto-populate.
As we discussed above, we need to select LSB and Comp for Device Parameters Device 4 and Device 5, and also for Command Parameter OBC.
Just leave the Raw Fixed Data alone, there appears to be a bug here.
If you click View Ini, you can see that RM has taken everything you've done here and generated an entry that could be copied and pasted into protocols.ini.
Click OK.
Now back on the setup panel, we need to select Protocol 'PID 01 FF', which will be at the very bottom of the list.
Now you can fill in the values for the Protocol Parameters
As already discussed, the JVC-48 Device will be Device 4, and the Sub Device will be Device 5.
Enter 63 for Device 2 and 127 for Device 3 to match the defaults for JVC-48 of 3F and 7F from the default Fixed Data for JVC-48
Determining what to put in Device 1 is more difficult, you have to compute the XOR checksum of the computed fixed data bytes 4 and 5, seeded with FF, then convert that to decimal and enter it as the value for Device 1.
Has this helped at all? _________________ -- Greg
RemoteMaster primary developer, now accepting donations
JP1 How-To's and Software Tools
The #1 Code Search FAQ and it's answer (PLEASE READ FIRST) |
|
| Back to top |
|
 |
gfb107 Expert
Joined: 03 Aug 2003 Posts: 3112 Location: Cary, NC
|
|
| Back to top |
|
 |
vickyg2003 Forum Regular
Joined: 20 Mar 2004 Posts: 3193 Location: Michigan
|
Posted: Fri Nov 06, 2009 9:42 pm Post subject: |
|
|
| gfb107 wrote: |
Unfortunately, you've picked a somewhat difficult case.
|
I did't pick it, it picked me. However, if I figure this out, I should have a pretty good grasp of how to handle RM upgrades
| Quote: |
The DeviceTranslator entry tells you how to encode the device and sub-device in the fixed data, as well as any other special processing.
Translator(lsb,comp,0,8,24) says that the Device number (which is the first entry in the DevParm line, so it has index 0) is 8 bits and gets stored starting at bit 24 of the fixed data (that's byte 4), using LSB COMP.
Similarly, Translator(lsb,comp,1,8,32) says Sub Device (DevParm index 1) is 8 bits, stored a bit 32 (byte 5) using LSB COMP.
There's also the XorCheck, which means that there's an 8-bit xor checksum starting at bit 0 (byte 1), seeded with 255 (=$FF), computed over 2 bytes starting at bit 24 (byte 4).
We can't tell anything about the encoding of bytes 2 and 3, as they simply receive the initial value from the FixedData entry and RM performs no additional manipulation on them, and they are not part of the XOR checksum.
From the CmdTranslator line we also note that the variable byte is LSB COMP
|
Thanks for the explanation of the syntax here.
| Quote: |
Back to the Manual Settings Dialog in RM.
Once you've entered the PID of 01 FF and imported the protocol code,
The other fields should auto-populate.
As we discussed above, we need to select LSB and Comp for Device Parameters Device 4 and Device 5, and also for Command Parameter OBC.
|
Yes with the simple protocols where I know what the device do this was pretty easy both in KM and RM.
| Quote: |
Just leave the Raw Fixed Data alone, there appears to be a bug here.
|
Good, I'm glad this isn't my problem. It does seem to need to be there though or the device data won't populate the fixed fields, or maybe I've just made another user error here.
| Quote: |
Has this helped at all? |
Right now it doesn't feel like it has, but I've got to spend some time digesting this post and working with the software. I just need to get "the process" figured out.
| Quote: | | Upon further reflection, it occurs to me that if you've followed the above steps you can save the upgrade, then edit it and replace the lines generated by the the Manual Settings with the existing lines for JVC-48 from protocols.ini |
Now THIS sounds promising. I'm going to have to play around with the software some more.
Thanks for all your help. _________________ 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.
|
|
| Back to top |
|
 |
ElizabethD Forum Regular
Joined: 09 Feb 2004 Posts: 1767
|
Posted: Sat Nov 07, 2009 3:58 pm Post subject: KM way |
|
|
Vicky,
In KM, if you select Manual settings for cell C8 on the Setup sheet, then paste your protocol into notes (column H), send upgrade and protocol to IR then in IR they will be visible when you click the device. I haven't done that in a while, but I'm pretty sure that's how it goes. I don't recall whether the 5 bytes will be obvious in KM, but they should be visible at least on the first line of the device upgrade. _________________ Liz
Tweeking 8910, HTPro/9811, C7-7800, 6131o, 6131n and enjoying the ride  |
|
| Back to top |
|
 |
mr_d_p_gumby Expert
Joined: 03 Aug 2003 Posts: 1312 Location: Chatsworth, CA
|
Posted: Sat Nov 07, 2009 4:20 pm Post subject: Re: KM way |
|
|
| ElizabethD wrote: | | In KM, if you select Manual settings for cell C8 on the Setup sheet... | Oh, and Vicky, whatever you do, be sure NOT to look at the Protocol Help tab after selecting Manual Settings.  _________________ Mike England |
|
| Back to top |
|
 |
vickyg2003 Forum Regular
Joined: 20 Mar 2004 Posts: 3193 Location: Michigan
|
Posted: Sat Nov 07, 2009 4:35 pm Post subject: |
|
|
| Quote: | | Oh, and Vicky, whatever you do, be sure NOT to look at the Protocol Help tab after selecting Manual Settings. | now why didn't I think of that My problem was I did something to both KM and RM where it wouldn't take the raw data. I am really good at putting software into unreceptive states while I trial and error my way through the software. Everything is looking much better since I started with a NEW file in KM and a NEW file in RM. _________________ 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.
|
|
| 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
|