How to assign non-key devices (dev7) to real key?

General JP1 chit-chat. Developing special protocols, decoding IR signals, etc. Also a place to discuss Tips, Tricks, and How-To's.

Moderator: Moderators

Post Reply
starmanj
Posts: 34
Joined: Sun Oct 26, 2003 9:38 am

How to assign non-key devices (dev7) to real key?

Post by starmanj »

I have searched but can't find how to get a phantom device working on my 6131. The 6131 has 6 device buttons, but has 2 extra phantom devices available. I want to give phantom 7 a device code, but activate all phantom 7 buttons by pushing shift-tv. Can this be done?

PS this is a robman-enabled 6131 from his JP1 upgrade kit. Works great!

Starmanj
Last edited by starmanj on Fri Feb 06, 2004 11:00 am, edited 1 time in total.
The Robman
Site Owner
Posts: 21893
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

Even though they are not physically present on the remote itself, the 2 missing device buttons are defined in the RDF. To access the missing device modes you need to create macros that include the missing device buttons.

If you got the 6131 from me, I have probably already programmed macros to two of the shifted device buttons for you.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
starmanj
Posts: 34
Joined: Sun Oct 26, 2003 9:38 am

Post by starmanj »

Hi Robman-
I bought the JP1 chip and connectors from you. I thought a keymove to a shifted key pointing to the phantom key would do it, but that doesn't work. So a macro would do it? Like, shift-TV macro: phantom1 key. That would turn on all the phantom1 device buttons? Or you mean assign phantom1 device button sequences to the macro?

Thanks,
Starmanj
gjarboni
Expert
Posts: 294
Joined: Sat Sep 20, 2003 4:55 pm
Location: Columbia, MD

Post by gjarboni »

It's more like defining a macro on Shift-TV that only contains: dev7 (or dev8). In macros (on un-extended remotes) you switch devices by putting a command for the device you want to switch to. So if you want to switch to dev7 and go up one channel, your macro would be:

dev7, CH+

But any macro with dev7 (or dev8) will switch to the 7th (or 8th) device. Don't think of it as switching all the keys, think of it running a macro that pushes a button (dev7|8 ) that isn't there.
The Robman
Site Owner
Posts: 21893
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

I see where you're getting confused. Phantom buttons are buttons that not only don't exist, but they have no special meaning to the remote. Whereas what you are looking for here are buttons that DO have a special meaning to the remote. You are specifically looking for the two missing device buttons, not just any old phantom button.

The two missing device buttons are labelled "dev7" and "dev8" in the RDF. Create a macro on any button you like (shifted or otherwise) that includes the "dev7" button and you will just have created yourself a 7th device button.

The obvious choice would be a couple of shifted device buttons, but if you're not a Tivo user, you could also consider the two "thumbs" buttons.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
starmanj
Posts: 34
Joined: Sun Oct 26, 2003 9:38 am

Post by starmanj »

Bingo! Thank you sir.

I'm curious. The device I'm trying to create is a Yamaha VCR code 0038 (it's what a Zektor component switcher emulates). Why can't I keymove the dev7 device button directly to shift-TV? (instead of macro)

2nd question: I just found the thread that says the 6131 can't take EFC codes! (That wasted about 4 hours of my time--should have searched sooner!) At least I know why keymoves haven't been working using IR. It's odd, when I translate EFC to hex, IR won't accept my hex input correctly. Translating from 181 to Hex, I get 00 b5. IR converts 00 b5 into $46 $ff for some reason! IR also converts 181 into $a6. Is IR faulty? Or am I getting slow in my old age?

Starmanj
mr_d_p_gumby
Expert
Posts: 1370
Joined: Sun Aug 03, 2003 12:13 am
Location: Newbury Park, CA

Post by mr_d_p_gumby »

starmanj wrote:It's odd, when I translate EFC to hex, IR won't accept my hex input correctly. Translating from 181 to Hex, I get 00 b5. IR converts 00 b5 into $46 $ff for some reason! IR also converts 181 into $a6. Is IR faulty? Or am I getting slow in my old age?
IR does accept the hex input correctly. It just does not understand the "new type" key moves, and therefore tries to interpret the entry as if it were an "old style" key move when it displays the entry. It will upload the correct data to the remote.
The Robman
Site Owner
Posts: 21893
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

starmanj wrote:Bingo! Thank you sir.

I'm curious. The device I'm trying to create is a Yamaha VCR code 0038 (it's what a Zektor component switcher emulates). Why can't I keymove the dev7 device button directly to shift-TV? (instead of macro)
I think you're not understanding what keymoves are. Keymoves are just a way of re-programming a button to send a different infrared signal than the one it would otherwise send. In your case, you're not looking for shift/TV to send a signal, you're looking for it to select a device mode. To do that you need to press an actual device button. The remote is programmed to recognize certain keycodes as device buttons. In addition to the 6 device buttons that are physically present on the remote, we have discovered, thru reverse engineering, what the keycodes for the missing two device buttons are. So, you need to find a way of pressing buttons that don't exist, which is where macros come into the picture.

Howzat, did I make it any clearer?
starmanj wrote:2nd question: I just found the thread that says the 6131 can't take EFC codes! (That wasted about 4 hours of my time--should have searched sooner!) At least I know why keymoves haven't been working using IR. It's odd, when I translate EFC to hex, IR won't accept my hex input correctly. Translating from 181 to Hex, I get 00 b5. IR converts 00 b5 into $46 $ff for some reason! IR also converts 181 into $a6. Is IR faulty? Or am I getting slow in my old age?
If you read the threads that you found through your search, some of them will contain a description of the hex format used for keymoves in the URC-6131. When the hex code is a single byte it has NOTHING to do with the EFC being transmitted, it's the keycode of the button that was copied (ie, the button was programmed using a real key move, rather than an advanced code). When the hex code is two bytes, it's the EFC in hex format, rather than the OBC in hex format which is what KM would calculate for you.
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
starmanj
Posts: 34
Joined: Sun Oct 26, 2003 9:38 am

Post by starmanj »

Hi Robman,

My search showed this:
"To calculate hex for RC5 commands since AUDIO_1189 is a two byte protocol:

For OBC's <64

First byte = decimal 31-device and convert to hex
Second byte = decimal (63-OBC) X 4 and convert to hex

if OBC>63
First Byte=decimal 95-device and convert to hex
Second Byte=(127- OBC) X 4 and convert to hex

Example:

Device 16 OBC=79 (6-sound)

95-16=79=>0x 4F
48 x 4= 192 => 0x C0

Key Move using hex: 4F C0 "

The problem is, devices4.xls only offers EFC's, not OBC's. I read that you can use "00 (EFC converted to hex)" as the hex code for 6131. That doesn't work, as IR instantly changes my input to something else.

Try it-- I type in "00 b5" as hex, and IR changes it to "46 FF" for some reason.

Starmanj
starmanj
Posts: 34
Joined: Sun Oct 26, 2003 9:38 am

Post by starmanj »

Okay I figured it out. IR does change whatever you type in. You simply ignore it. It works anyway.

I don't know why IR changes whatever hex codes you type in...is this a bug? But it still accepts the original input and keymoves work properly. Phew...lots of trial and error, but worth it!

One more question-- is it possible to have a key have different macros based on what device is active? That is, thumbs up has different macro for TV than DVD?

Also I can't find IR codes anywhere for the Motorola DCT5100, the new Hi-Def cable box. It does come with a one-for-all remote WITH JP1! But the JP1 appears to be disabled, it won't respond no matter how I attach my plug. So can't cheat the codes out of it that way. any ideas?

Starmanj
gfb107
Expert
Posts: 3411
Joined: Sun Aug 03, 2003 7:18 pm
Location: Cary, NC
Contact:

Post by gfb107 »

starmanj wrote:One more question-- is it possible to have a key have different macros based on what device is active? That is, thumbs up has different macro for TV than DVD?
That's what DSMs (Device Specific Macros) are for. See device-specific-macro-original.txt. Many extenders (including the 6131 extender 1, BTW) have this function built-in. Another advantage of the 6131 extender is that it restore "normal" EFC behavior, so that you don't need to deal with the 2-byte EFC anymore.
The Robman
Site Owner
Posts: 21893
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

starmanj wrote:Also I can't find IR codes anywhere for the Motorola DCT5100, the new Hi-Def cable box. It does come with a one-for-all remote WITH JP1! But the JP1 appears to be disabled, it won't respond no matter how I attach my plug. So can't cheat the codes out of it that way. any ideas?
Does this box not respond to the standard CBL/0476 code?

As for the remote, I suspect that if you open it up you'll find that it has an "SST" brand flash chip on board rather than the traditional MCU & EEPROM combination that we're used to. We haven't looked into how to do JP1 with these remotes 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!
starmanj
Posts: 34
Joined: Sun Oct 26, 2003 9:38 am

Post by starmanj »

Okay all is well. Rob, you are correct, the new Mot cable box works with 0810 (didn't try 0476). I am really happy with this remote and setup. I assigned my Zektor 4-input component switch to dev7, and assigned device macros by shift-device to discrete turn everything on and switch inputs.

The 2-byte EFC doesn't bother me anymore, now that I know it's just adding 00 and a hex convert to the EFC. Would be nice if KM or IR had that built into it. And IR needs to fix the 2-byte input bug. IR should also grey out EFC option for keymoves for known RDFs that can't accept EFC's.

Thanks for the great help Rob and Greg!
Starmanj
Mark Pierson
Expert
Posts: 3018
Joined: Sun Aug 03, 2003 12:13 am
Location: Connecticut, USA
Contact:

Post by Mark Pierson »

starmanj wrote:Would be nice if KM or IR had that built into it. And IR needs to fix the 2-byte input bug.
KM does create proper key moves for the unextended 6131, but only for 1-byte commands, since we still don't know the format for 2-byte signals. IR also supports them, however there's some sort of UI bug which causes the data displayed on the Key Moves tab to be incorrect. It IS stored properly in the Raw Data which gets uploaded to the remote.

I've had a few discussions with Mark Pauker about this already, and he's looking into it.

IR should also grey out EFC option for keymoves for known RDFs that can't accept EFC's.
I agree, and I think Mark has said he'll look into that for a future release.
Mark
starmanj
Posts: 34
Joined: Sun Oct 26, 2003 9:38 am

Post by starmanj »

FYI, I got curious and blinked back my Comcast remote's code for the 5100 HD cable box. Robman again was right, the proper code to use is 0476!

BTW, I changed the subject to the proper question (ths robman)

Starmanj
Post Reply