add discrete code and add unused buttons

This is the JP1 beginners forum. There's no such thing as a stupid question in here, so post away, but this forum is just for JP1 users and people considering JP1, non-JP1 users please use the appropriate forum above!

Moderator: Moderators

johnsfine
Site Admin
Posts: 4766
Joined: Sun Aug 10, 2003 5:00 pm
Location: Bedford, MA
Contact:

Post by johnsfine »

It doesn't matter whether the number is free. It only matters whether the number matches another setup code you are using in the same configuration.

An upgrade which matches a built in setup code hides that built-in setup code. If you're not using the built-in one, you don't care that it's hidden. If you want to use the built-in one later, it's easy to remove or change the upgrade.

We have some conventions for numbering upgrades (such as adding 1000 to the number of the similar setup code, when the result of that wouldn't be too large). But those only apply to upgrades you plan to share with others and the conventions exists primarily to help the person getting the upgrade understand what he's getting. Those conventions don't really address the issue of avoiding number collisions in your own remote (which is a simple task anyway and doesn't need numbering conventions).
sensismile
Posts: 30
Joined: Wed Jul 21, 2004 12:58 pm

Post by sensismile »

OK this works !

I created a deviceupgrade (AUD/2023) with the 3 aditional keys and used the KeyMover to asign the Keys the original Setup IT WORKS

Thanks for the help !

Now another Idea - I've seen in a VCR setup that it is possible to have the REC Button sends the signal after the second press - After the First Keypress it happends nothing and after the second it sends the signal. How can I implement this ?

Thanks
Stefan
Mark Pierson
Expert
Posts: 3023
Joined: Sun Aug 03, 2003 12:13 am
Location: Connecticut, USA
Contact:

Post by Mark Pierson »

sensismile wrote:Now another Idea - I've seen in a VCR setup that it is possible to have the REC Button sends the signal after the second press - After the First Keypress it happends nothing and after the second it sends the signal. How can I implement this ?
I believe this is a feature of the remote for cases whenever the REC button is defined in a setup code. If you create a key move on the REC button, it overrides the 2-press requirement. However I'm not sure if all UEI remotes works this way, or only certain models.
Mark
sensismile
Posts: 30
Joined: Wed Jul 21, 2004 12:58 pm

Post by sensismile »

Hi,

I just try to complete my RC5 Setup and encountered a strange Problem:
Use KM or RM and start to create an upgrade for RC5 protocol. In KM you would switch to OBC mode, and on the functions sheet put a number from 0 to 63 in the OBC column and leave byte2 blank. It will compute the EFC for you. The OBC is the decimal value corresponding to the hex "data" value your PC decodes. Your example of hex 0x12 is decimal 18, which is the uparrow key from SAT/0869. SAT/0869 uses 29 of the 64 possible OBC numbers, the largest of which is GUIDE=53, so all of 54 through 63 are available (as are 20 through 28).
For the Keys in the Range 20-28 this works. But when I try to enter Values 54-63 in RM it allways switches donw to lower Numbers. This starts when I try to enter values above 31. When enter 32 it switches to 0 - when entering 33 it switches to 1 and so on.
What am I doing wrong here ?

Thanks
Stefan
johnsfine
Site Admin
Posts: 4766
Joined: Sun Aug 10, 2003 5:00 pm
Location: Bedford, MA
Contact:

Post by johnsfine »

Sounds like an error in RM or in protocols.ini, not anything you could have done wrong.

I hope Greg looks at this soon. Otherwise, I'll try to debug it.
johnsfine
Site Admin
Posts: 4766
Joined: Sun Aug 10, 2003 5:00 pm
Location: Bedford, MA
Contact:

Post by johnsfine »

I wrote code (RC5Translator.java) long ago that managed a complex interaction between the device selection and the OBC field, to make things simpler for the end user.

The hard part is a change in OBC value between a value less than 64 and one greater than or equal 64 required a search of the device data to find the necessary change to the select value (or to find that the OBC change isn't valid).

A while back, Greg removed all that and simplified the code. I'm not sure why. In the course of that he made a typo (using 0x1F instead of 0x3F for a 6 bit mask) causing the current bug.

I could easily fix the typo, but I think the old complex code is worth puting back.

With just the typo fixed you'd need to know to change the pull down as well as the OBC when changing an OBC value across that boundary. With the old more complex code it happens automatically.

Greg: Am I missing some reason the automatic code was unsound?

Anyone: Am I overestimating the value of the automatic behavior?
sensismile
Posts: 30
Joined: Wed Jul 21, 2004 12:58 pm

Post by sensismile »

Hi Jhon,

as I really don't know how this calculation is done, could you give me the EFC/HEX for code 54 and code 55. These are the only one I need to set in the higher region for this device.It's for SAT/0879 Proto RC5 device 24.

Thanks
Stefan
jon_armstrong
Expert
Posts: 1238
Joined: Sun Aug 03, 2003 9:14 pm
Location: R.I.P. 3/25/2005
Contact:

Post by jon_armstrong »

John and Greg,

I thought that I repaired RC5 (and maybe broke it), but when I did the protocols.ini for StreamZap (that is RC5 only with six device bits) and discovered several things that I thought backfitted to RC5, now I can't find it. I'll take a look and see if I can find my entry. I thought I had posted it, but can't locate it right now.
-Jon
jon_armstrong
Expert
Posts: 1238
Joined: Sun Aug 03, 2003 9:14 pm
Location: R.I.P. 3/25/2005
Contact:

Post by jon_armstrong »

Here is the RC5 protocols.ini entry that now works in my limited testing:

[RC-5]
PID=00 E8
DevParms=Device 1:5=0,OBC>63=0:bool,Device 2:5=[0],OBC>63:bool=[1],Device 3:5=[2],OBC>63:bool=[3]
DeviceImporter=RC5Importer()
DeviceTranslator=Translator(comp,0,5,3) Translator(comp,2,5,11) Translator(comp,4,5,19) \
Rc5FlagTranslator()
FixedData=1f 1f 1f
CmdParms=Device:0|1|2=0,OBC:7=0
CmdTranslator=Translator(comp,1,6) Translator(0,2,6)
DefaultCmd=fc
CmdParmInit=RC5Initializer()
Notes=This combo supports half of the possible OBC range for each of up to \
three device numbers. To support the whole OBC range for one device \
number requires using two of the three Device number positions for that \
one device number. \
\n\n\
For each Device number position, leave the check box blank to support \
OBCs from 0 to 63 or mark the check box to support OBCs from 64 to 127.
Code.S3C80=40 9A 31 8B 0F C5 81 10 08 06 01 C2 01 A4 01 C2 01 A4 DE 2C 08 06 56 C0 03 09 01 76 00 01 6B 09 87 10 03 B6 C1 20 97 10 03 8D 01 46
Code.740=0F 19 31 80 0C E0 81 21 20 08 06 02 06 02 05 6F 20 A5 60 29 03 AA B5 5D 17 5A 02 09 20 85 5D 4C 00 FF
Code.6805-C9=0E 1B 31 20 0C E0 C1 20 20 08 06 02 14 02 0B 72 44 B6 5D A4 03 97 E6 5A B7 5A 01 57 02 1A 5A CC 01 83
Code.6805-RC16/18=10 28 31 20 0D C5 81 10 08 06 00 E0 DC 00 E0 DC 6F 20 B6 5D A4 03 B7 58 97 01 57 06 E6 5A A8 20 E7 5A CC 01 AF
-Jon
gfb107
Expert
Posts: 3411
Joined: Sun Aug 03, 2003 7:18 pm
Location: Cary, NC
Contact:

Post by gfb107 »

I'm adding back the code to automatically change the selected device when the user enters an OBC incompatible with the OBC>63 flag for that device.

I'm also fixing the incorrect mask for the OBC.

Look for v1.02 soon.
Post Reply