Page 1 of 1

Changing the device code

Posted: Mon Mar 09, 2009 11:12 am
by funkypc
I have a satellite receiver, and the remote conflicts with my sound system. I have a way to change the device code in my satellite receiver, but I can't seem to figure out how to change it on my JP1.2 remote.
Here is a file for my satellite receiver. https://www.hifi-remote.com/forums/dload ... le_id=3815
Now my understanding is that the device ID of the original satellite remote is 0x1FE (or 0xFE01). I would like to change it on the JP1 remote to something else - say 0x1FD or 0x1FC.
Thankyou for the help.

Posted: Mon Mar 09, 2009 9:55 pm
by unclemiltie
I'm not familiar with the Coolsat so I'll ask a couple of questions:

1: can the OEM remote do this?

2: If you do it with the OEM remote and learn some of the keys from the "original" and "modified" what changes?

Generally, you'll find the answer in the fixed data somewhere in the protocol. On some of the protocols, there are specific bytes that set the device ID, but it may be in the device, sub-device or somewhere else. But, in general, if you can do it with the OEM remote, you can probably do it with a UEI remote.

Posted: Mon Mar 09, 2009 10:09 pm
by funkypc
No, I cannot do it with the OEM remote. Maybe if I pulled the eeprom and hacked it apart but I am not prepared to do this. ;)
I had to hack the firmware of the receiver to accept a different code. I have looked at the upgrade file that I linked to but I cant seem to figure out where this device ID is stored.

Posted: Mon Mar 09, 2009 11:42 pm
by unclemiltie
The protocol that your receiver uses is the NEC proto ($005A) which has room for a device, subdevice and an extra parameter. Unless you know how the device ID that you can change in your receiver encodes into the fixed data for the protocol it's going to be hard. You could play with these numbers (someone here who is an expert in those protocols can tell you how many bits are in each) but it's going to be a lot of trial and error unless you can find someone else who has done the work and made a remote work with the changed device ID.

If you can find someone with a changed device ID and can get them to learn a couple of buttons for you into a UEI remote and can get your hands on the IR file, this will be simple.


-bill

Posted: Tue Mar 10, 2009 6:40 am
by The Robman
The upgrade that you linked to uses NEC1 with a device code of 1 and with no sub-device specified. When the sub-device isn't specified it defaults to being the complement of the device code, which is the same as saying 255 minus the device code.

Therefore, the upgrade really uses a device code of 1 and a sub-device code of 254. If you convert both numbers to hex, you get 0x01FE, which is what you say the default code is.

The two alternative codes that you gave were 0x01FD and 0x01FC. To replicate those codes, you would leave the main device code set to 1 and change the sub-device code to either 253 (FD) or 252 (FC).

Posted: Tue Mar 10, 2009 8:42 am
by funkypc
Excellent info. Thanks Rob, I will try it tonight.

Posted: Tue Mar 10, 2009 4:40 pm
by funkypc
Worked like a charm! Now I can properly setup my sound system!
Thanks again for the help.

Posted: Tue Mar 10, 2009 5:27 pm
by The Robman
Could you write something up, or post some links, that explain how you change the firmware of this device so you can use these remote codes, just so that someone doing a search can find it.

Thanks,

Posted: Tue Mar 10, 2009 10:01 pm
by funkypc
Modifying the Coolsat 5000 remote code is actually quite simple. I got help from a hacker site, so I dont think I can/want to post links.

Note - I do not support hacking satellite TV - I use this for true FTA.

So you take the Coolsat firmware (I have a CS5000, but I'm quite confident the 4000 and 6000 would be identical.)

Then, you have to use a program called stbconvert to extract the bin from the coolsat5000_100_20051007.stb file. After the bin has been extracted, open up that bin (coolsat5000_100_20051007.BIN) with a hex editor (I used xvi32).

Search for the hex string FF 3A FF 3A. There should be one occurance of it.

That string gets you the device code. Basically what it is doing is adding FF to FF, which gets you 0x1FE - That is the remote device code. So, in my case, I changed it to FE 3A FF 3A which adds FE to FF and gets the device code of 0x1FD.

Then, all you have to do is open the bin with stbconvert and convert it back to a .stb, and load it into your receiver. Your receiver will only listen to the new remote device code. It will not listen to the old remote, or your conflicting remote of course.

New Device Code for DTVPAL DVR (Dish VIP 622)

Posted: Tue Nov 17, 2009 10:53 pm
by ml_2005
Hello,

I am trying to make a device upgrade for the DTVPAL DVR set to remote code 2. An upgrade for the default remote code is available -- just use the Dish VIP 622.

I learned the codes using a learning remote, but want to make the upgrade for a URC-6131.

The Learned signals show that the Protocol is Dish_Network, Device 0, Sub-Device 1.

I do not see these options in KM v9.18 for the URC-6131. What should I use for Unit Code, Device0, etc... ? I do not see a sub-device field.

Thanks.

Posted: Wed Nov 18, 2009 12:44 am
by 3FG
I'm not so familiar with KM. However, the protocol notes shown in RM say, in part, "They (device, unit, OBC) are compatible with DecodeIR.dll as Device.Unit:OBC"

So I guess that your learned signal is Device 0, with remote code 2. The remote codes 1-32 apparently correspond to unit numbers 0-31.

The following is just a general observation----
KM takes unit numbers, and RM takes remote codes. For the Dish VIP 622 upgrade, KM uses 2 bytes of fixed data and doesn't vary the hex code; RM uses 1 byte of fixed data but the hex codes vary as the remote code varies.

But once the remote is switched to 6131n, both programs have 5 bytes of fixed data. However, the two programs don't seem to yield exactly the same results, although again there is a systematic difference between fixed data and hex code.

Posted: Fri Nov 20, 2009 11:23 am
by ml_2005
Thanks.

I read through the protocol notes and followed the suggestion to use Dish Network Combo, and set the unit code to the DVR code and it works.

What I found surprising is that using the original VIP622 device upgrade, I can just change the Unit code, and it will work (as long as Dish Network Combo is used), but when I learned signals with from a remote configured for code 2, all of the OBC were different. The new upgrade I made from the learned OBC also seems to work.

Posted: Fri Nov 20, 2009 12:22 pm
by ElizabethD
That's how the unit thing works. Let's say you code OBC 15 in KM (PageUP). Depending on unit number, the hex and EFC change -
unit1 hex 3C
unit2 hex 3E
unit3 hex 3D
unit4 hex 3F
in KM you need to add 1 to the learned codes for Subdevice.

Added later:
I followed this up long ago so here is a bit more info in case interested.
Learned signals for the same PageUp show cmd, unit, byte2subdevice like this
:001111 00000 10000
:001111 10000 10000
:001111 01000 10000
:001111 11000 10000
cmd=OBC, 15 in this instance.

With a 3D in KM, once unit# is supplied, the protocol reverses stuff in a way that different hex values go out from the remote depending on the unit.