View previous topic :: View next topic |
Author |
Message |
matzh9
Joined: 21 Aug 2004 Posts: 12
|
Posted: Sun Aug 22, 2004 10:26 am Post subject: Converting uploaded codes to Pronto format |
|
|
I'm new to this and need some help to get started. I have a homecontrol system build around ADI/Leopard that controls all my devices, lighs etc. Everything works really well except the Leopard can not learn my Force satellite receiver's IR codes. The Force remote is a JP1 capable URC-39720_B00-05.
I thought it would be a simple task to upload the IR codes and translate them to Pronto format and then download these to the Leopard, but I got stuck.
My problem is to readout carrier frequency, lead in/out and 0/1 bursts. Can somebody please help me with directions. The Protocol ID looks to be 16C.
Thanks, Matz |
|
Back to top |
|
|
Mark Pierson Expert
Joined: 03 Aug 2003 Posts: 3017 Location: Connecticut, USA |
Posted: Sun Aug 22, 2004 12:03 pm Post subject: |
|
|
Check out this message. _________________ Mark |
|
Back to top |
|
|
matzh9
Joined: 21 Aug 2004 Posts: 12
|
Posted: Sun Aug 22, 2004 12:47 pm Post subject: |
|
|
Hi Mark!
I'm using the updated IRTools but could use MakeHex if I just had/understood the required input. This is a Sony12 example for MakeHex;
...
Protocol=Sony12
Frequency=40000
Time Base=600
One=2,-1
Zero=1,-1
Prefix=4,-1
Message Time=45m
Form=;*,f:7,d:5
How do I coorelate these with IR.EXE device and protocol information I get when uploading? What information does "Fixed Data" field hold?
Matz |
|
Back to top |
|
|
Mark Pierson Expert
Joined: 03 Aug 2003 Posts: 3017 Location: Connecticut, USA |
Posted: Sun Aug 22, 2004 1:07 pm Post subject: |
|
|
matzh9 wrote: | How do I coorelate these with IR.EXE device and protocol information I get when uploading? What information does "Fixed Data" field hold? |
You need to use keymap-master (KM) or RemoteMaster (RM) to create a device upgrade that then gets copied and pasted into IR's Devices tab. Start by reading this how-to. You might even find upgrades for your equipment in the Device Codes folder in the files area. _________________ Mark |
|
Back to top |
|
|
mr_d_p_gumby Expert
Joined: 03 Aug 2003 Posts: 1370 Location: Newbury Park, CA |
Posted: Sun Aug 22, 2004 1:17 pm Post subject: |
|
|
matzh9 wrote: | I'm using the updated IRTools but could use MakeHex if I just had/understood the required input. | This is called IRP notation, and is mostly documented in the readme that comes wth MakeHex. You may find other references on IRP from Jon here and there if you search. matzh9 wrote: | How do I coorelate these with IR.EXE device and protocol information I get when uploading? What information does "Fixed Data" field hold? | Unfortunately, you are missing a big chunk of information here. IR's decoding of an upgrade gives you high-level parameters that are used by the protocol executor for PID 016C. MakeHex needs raw timing data. There are only a few ways you can get the timing information you need.1) Disassemble the UEI protocol code and analyze it for timing data. It's written in S3C80 assembly, and this can be a tedious and time-consuming process.
2) Learn the commands on a learning remote that can be downloaded to a PC. If it's a JP1 learning remote, then IR will be able to show you the raw timing info. JP1 learning remotes can be had for $20 or less (URC-8810w from WalMart, for example).
3) Look at the output of the IR stream on a scope, and derive timing the old-fashioned way. Option 2 is probably your easiest way. matzh9 wrote: | The Protocol ID looks to be 16C. | If that is true, then it might be a protocol upgrade, since I don't think that one is in the ROM of the remote. You might try posting a saved IR file of the EEPROM image downloaded from the remote. (Post to Yahoo JP1 diagnostics folder; post a link to the file in this thread; see sticky here about posting Yahoo links.) Maybe one of the JP1 experts can make some sense of it. _________________ Mike England |
|
Back to top |
|
|
matzh9
Joined: 21 Aug 2004 Posts: 12
|
Posted: Sun Aug 22, 2004 1:58 pm Post subject: |
|
|
This is the dumpfile I used http://groups.yahoo.com/group/jp1/files/User%20Configurations/URC-39720_B00-05.txt. This is the Force remote that came with my satellite receiver. I have tried to learn its codes both on my Leopard and on a Kameleon 6:1 but none of the learned codes actually work. This is why I wanted to use the Pronto path I described earlier.
mr_d_p_gumby I interpret from Your comment that IR.EXE will only show frequency etc for learnt codes.
My neighbour has the same setup as me so I will borrow his remote and try learning codes between the two remotes (Meaning I'll have codes both in EEPROM and as learnt).
I think the Force implementation has to be a bit unique and/or complicated, on Remote Central there is almost nothing even though its one of the most sold DSSes here in scandinavia, Force 536S.
Thanks for your support,
Matz |
|
Back to top |
|
|
mr_d_p_gumby Expert
Joined: 03 Aug 2003 Posts: 1370 Location: Newbury Park, CA |
Posted: Sun Aug 22, 2004 2:38 pm Post subject: |
|
|
matzh9 wrote: | I interpret from Your comment that IR.EXE will only show frequency etc for learnt codes. | Yes. I'd suggest you try learning some of the commands. Even if they do not work, you might be able to get valid information from them.
BTW, the frequency is probably 38.1 kHz. The protocol executor in the file you mentioned is very complex, so that's about all I can tell at this point. _________________ Mike England |
|
Back to top |
|
|
damir
Joined: 01 Oct 2003 Posts: 102 Location: Croatia |
|
Back to top |
|
|
jon_armstrong Expert
Joined: 03 Aug 2003 Posts: 1238 Location: R.I.P. 3/25/2005 |
Posted: Sun Aug 22, 2004 7:40 pm Post subject: |
|
|
I also did a more complete analysis here. I believe this same protocol is also used in the Dreambox. I can't get to it right now but I can create an Excel spreadsheet that wll translate to Pronto hex.
matzh9, this is also you lucky day since I am probably one of the few people here an Applied Digital Ocelot and actually have used IRMax. _________________ -Jon |
|
Back to top |
|
|
mr_d_p_gumby Expert
Joined: 03 Aug 2003 Posts: 1370 Location: Newbury Park, CA |
Posted: Sun Aug 22, 2004 11:05 pm Post subject: |
|
|
jon_armstrong wrote: | I believe this same protocol is also used in the Dreambox. | Yes, it's in the ROM of the Dreambox and the URC-8040. jon_armstrong wrote: | matzh9, this is also you lucky day since I am probably one of the few people here an Applied Digital Ocelot and actually have used IRMax. | Lucky indeed. Let's hope he doesn't have to become as proficient as you are at understanding IR protocols in order to use the Ocelot/Leopard! _________________ Mike England |
|
Back to top |
|
|
damir
Joined: 01 Oct 2003 Posts: 102 Location: Croatia |
Posted: Mon Aug 23, 2004 7:09 am Post subject: |
|
|
mr_d_p_gumby wrote: | jon_armstrong wrote: | I believe this same protocol is also used in the Dreambox. | Yes, it's in the ROM of the Dreambox and the URC-8040. |
Dreambox and URC-8040 have newer version of 016C (202 bytes long).
This older version in Force (185 bytes) is buggy, it fails on some hex commands.
If I remember correctly one of them is 0C 00. |
|
Back to top |
|
|
matzh9
Joined: 21 Aug 2004 Posts: 12
|
Posted: Mon Aug 23, 2004 2:49 pm Post subject: |
|
|
Thanks everybody for the prompt support. I need some time to melt this and try it out. At least its pretty clear why these codes could not be learnt. Jon i think your link might have solved my problem. I'll let you know.
I'm sure You understand why I want everything controlled from the Leopard.
Matz |
|
Back to top |
|
|
jon_armstrong Expert
Joined: 03 Aug 2003 Posts: 1238 Location: R.I.P. 3/25/2005 |
Posted: Mon Aug 23, 2004 7:21 pm Post subject: |
|
|
matzh9 wrote: | Jon i think your link might have solved my problem. I'll let you know. |
I took a pretty long look at the Ocelot/Leopard IR encoding scheme and even tested how it converts Pronto hex. The pivotal issue is that there is only 136 uSec between each of the 16 burst pair values. In theory if these burst pairs are off by >68 uSec then the value will be wrong. To further complicate things the Pronto stores its values in terms of number of wavelengths or in ~26 uSec units. The Ocelot uses a fixed 40 uSec increments.
Here are four examples of what I saw:
210 -760 970 What we want
208 -756 964 pronto encoded
320 -680 1000 LIR encoding
286 -770 1056 measured
210 -1304 1514 What we want
208 -1329 1537 pronto encoded
320 -1280 1600 LIR encoding
286 -1376 1662 measured
210 -2120 2330 What we want
208 -2136 2345 pronto encoded
320 -2080 2400 LIR encoding
286 -2186 2472 measured
210 -2800 3010 What we want
208 -2762 2970 pronto encoded
320 -2680 3000 LIR encoding
286 -2794 3080 measured
All are in uSec and "what we want" is our best understanding of the real IR Protocol. The others are decoding the encoded Pronto hex, LIR encoding is literally what the IRMax conversion program is telling the Leopard to send (according to the published file description by the manufacturer). Measured is what I measured as being sent by my Ocelot.
The third column is what is the most important since it is the length of time between the leading edge of the on pulse. If this is off by >68 uSec then we will get the wrong results.
Basically, I think you must scale and encode directly to the LIR file description which isn't very hard. But the point is that for this Protocol, I don't think converting to Pronto hex and then converting to LIR format will result in reliable commands.
Quote: | I'm sure You understand why I want everything controlled from the Leopard | .
Yes and that, Mike, actually is why I learned all about IR protocols so I could program mine. I ultimately ended up using OFA remotes to control all my equipment, but that is a different story _________________ -Jon |
|
Back to top |
|
|
matzh9
Joined: 21 Aug 2004 Posts: 12
|
Posted: Tue Aug 24, 2004 10:15 am Post subject: |
|
|
Jon!
You are way ahead of me on understanding this but what You say makes good sence.
It also looks as Leopard has problems with the repeat parts meaning I would have to interpret the repeat commands and translate to "flat" LIR format. Right? Then there might instead be an issue with the length required. Do You think I'm waisting my time or is it doable?
Matz |
|
Back to top |
|
|
jon_armstrong Expert
Joined: 03 Aug 2003 Posts: 1238 Location: R.I.P. 3/25/2005 |
Posted: Tue Aug 24, 2004 3:18 pm Post subject: |
|
|
I think it's "doable". I created an lir test file with numerals 0 through 9 on IR positions 10 through 19. Load it in CMax and test those commands to see if they work.
I put the one time command plus three repeats. You are correct that you must create one big command. My limited testing indicates that the commands it is sending out are close to what I think they should be. However, I'm not your IR receiver _________________ -Jon |
|
Back to top |
|
|
|