347004 Virgin Media URC174001-00R00
From it's manual, the URC-6810 TV Zapper also seems to have no device selection, so would appear to be another JP1.4N remote. It even seems to share the strange "Star+Help changes the Navigation keys to TV" that the Virgin Media remote has; it's called AV Shift, and when AV is pressed it changes the Navigation keys over to TV until OK is pressed.
EDIT: The URC-6420 Simple 2 might be a JP1.4N remote as well; It has no device select keys, and setting a TV code only affects the TV Power, Volume, Mute and AV keys.
These JP1.4N remotes are almost like a remote that is always in Home Theater mode.
EDIT: The URC-6420 Simple 2 might be a JP1.4N remote as well; It has no device select keys, and setting a TV code only affects the TV Power, Volume, Mute and AV keys.
These JP1.4N remotes are almost like a remote that is always in Home Theater mode.
In Use: 3x URC7781 / 2x Nevo C2 / Harmony PS3 -|- Learner: Nevo C2
I have posted here an update for you to try. The zip includes a new RemoteMaster.jar (build 2) to replace the one in RMIR v2.04 build 1, and a revised RDF. I have also included your map and image files (and linked to them in the RDF) for anyone else who cares to download this trial package.
The RDF removes the Key Move, Macro and Learned Signals tabs as you don't think any of these are supported. It has the Volume Punchthrough on the General tab but keeps the 2nd and 3rd punchthrough bytes being set from the RDF. The RMIR revision is to allow this to be possible. I have left them as $10 $00. I don't think the 3rd byte is used, and as far as I can tell, you have not seen the 2nd byte being set by the remote to anything other than $10. If you want to experiment, you can change the byte 2 value in the RDF to try some other fixed value, or delete the last 3 bytes from each [DeviceButtons] entry (leaving just one on the right of each entry) so that RMIR won't change punchthrough bytes 2 and 3.
It would be nice to know what that byte 2 does, but I can't even guess at present. Its values in the Zapper+ are 01 or 00, changing depending on what devices have setup codes. It has 3 devices, TV, STB and Audio but like the VM remote there is no device selection, it operates with permanent punchthroughs and an AV button that behaves rather like the VM star key.
Do please report how you get on with these mods, whether anything is wrong or missing or any other comments you may have.
The RDF removes the Key Move, Macro and Learned Signals tabs as you don't think any of these are supported. It has the Volume Punchthrough on the General tab but keeps the 2nd and 3rd punchthrough bytes being set from the RDF. The RMIR revision is to allow this to be possible. I have left them as $10 $00. I don't think the 3rd byte is used, and as far as I can tell, you have not seen the 2nd byte being set by the remote to anything other than $10. If you want to experiment, you can change the byte 2 value in the RDF to try some other fixed value, or delete the last 3 bytes from each [DeviceButtons] entry (leaving just one on the right of each entry) so that RMIR won't change punchthrough bytes 2 and 3.
It would be nice to know what that byte 2 does, but I can't even guess at present. Its values in the Zapper+ are 01 or 00, changing depending on what devices have setup codes. It has 3 devices, TV, STB and Audio but like the VM remote there is no device selection, it operates with permanent punchthroughs and an AV button that behaves rather like the VM star key.
Do please report how you get on with these mods, whether anything is wrong or missing or any other comments you may have.
Graham
Using the new build/RDF, I added a device with a protocol upgrade (my Pioneer amp, which uses Pioneer 4DEV) and it appears to work correctly.
Everything I can think of appears to work.
The second punchthrough byte doesn't seem to do anything, I've set it to multiple random values, including 0x81, 0x00 and 0xFF, and no change has occurred in the remotes behavior. It doesn't even reset when I add a TV device without one present. The only way I can cause the remote to set it back to 0x10 is to Init to $00 and let the remote rebuild it's config.
A suggestion for a feature: in the RDF, add a field that allows arbitary text, to be displayed on the general tab with the Edit Device button. This text could then be used for per remote documentation, such as explanations of the button -> device mapping of JP1.4N remotes, and listing the magic combinations for remotes without a dedicated button. This would be useful for this remote, since it has both of the above, as well as a couple of the other remotes I have which really require further documentation.
Thank you very much.
Everything I can think of appears to work.
The second punchthrough byte doesn't seem to do anything, I've set it to multiple random values, including 0x81, 0x00 and 0xFF, and no change has occurred in the remotes behavior. It doesn't even reset when I add a TV device without one present. The only way I can cause the remote to set it back to 0x10 is to Init to $00 and let the remote rebuild it's config.
A suggestion for a feature: in the RDF, add a field that allows arbitary text, to be displayed on the general tab with the Edit Device button. This text could then be used for per remote documentation, such as explanations of the button -> device mapping of JP1.4N remotes, and listing the magic combinations for remotes without a dedicated button. This would be useful for this remote, since it has both of the above, as well as a couple of the other remotes I have which really require further documentation.
Thank you very much.
In Use: 3x URC7781 / 2x Nevo C2 / Harmony PS3 -|- Learner: Nevo C2
So I picked up another identical looking Virgin Media remote (for almost nothing, from a car boot sale). This one does not work with the rdf we have, and is labelled as a URC174000-04R01 - I'm guessing an earlier remote.
Here is a Raw DL, taken with RMIR 2.04build2.
Here is a Raw DL, taken with RMIR 2.04build2.
In Use: 3x URC7781 / 2x Nevo C2 / Harmony PS3 -|- Learner: Nevo C2
This one is a more standard JP1.4 remote, although its TV capability is more limited than the original subject of this thread. A candidate RDF file.
It will help to see the contents of rmaster.err following the "error downloading from remote message". Also, please use the high level tab in JP2Sniffer to verify that it can download from the remote.
It isn't obvious to me how the RDF should describe punch throughs or the [Device Button section]. But I doubt incorrect entries would stop the remote from downloading.
It isn't obvious to me how the RDF should describe punch throughs or the [Device Button section]. But I doubt incorrect entries would stop the remote from downloading.
The appropriate bit of rmaster.err:
JP2Sniffer reads 4 segments - types 13/C8/00/00 - then says read operation timed out.
Code: Select all
Starting normal download
Interface Name = NULL
Port Name = NULL
Testing interface: JP1.X Serial
Port Name = COM6
Opened on Port COM6
Opened interface type 1
Interface opened successfully
Base address = $5F00
Searching for RDF
Final signature sought = 328203
Remote identified as: Virgin Media URC174000-00R01
ERROR: ButtonMap 0 includes unknown keycode $83, Creating button!
Number of bytes read = $2100
Ending normal download
Data parsing started
Download error: null
java.util.concurrent.ExecutionException: java.lang.NegativeArraySizeException
at java.util.concurrent.FutureTask.report(Unknown Source)
at java.util.concurrent.FutureTask.get(Unknown Source)
at javax.swing.SwingWorker.get(Unknown Source)
at com.hifiremote.jp1.RemoteMaster$DownloadTask.done(RemoteMaster.java:691)
at javax.swing.SwingWorker$5.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
at sun.swing.AccumulativeRunnable.run(Unknown Source)
at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
at javax.swing.Timer.fireActionPerformed(Unknown Source)
at javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.NegativeArraySizeException
at com.hifiremote.jp1.Hex.<init>(Hex.java:68)
at com.hifiremote.jp1.RemoteConfiguration.loadSegments(RemoteConfiguration.java:1920)
at com.hifiremote.jp1.RemoteConfiguration.importIR(RemoteConfiguration.java:3802)
at com.hifiremote.jp1.RemoteConfiguration.parseData(RemoteConfiguration.java:4394)
at com.hifiremote.jp1.RemoteMaster$DownloadTask.doInBackground(RemoteMaster.java:675)
at com.hifiremote.jp1.RemoteMaster$DownloadTask.doInBackground(RemoteMaster.java:1)
at javax.swing.SwingWorker$1.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at javax.swing.SwingWorker.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
RemoteMaster.windowClosing() enteredIn Use: 3x URC7781 / 2x Nevo C2 / Harmony PS3 -|- Learner: Nevo C2
Thanks; I can now download without errors.
This remote does not like Initialize to $00 (It appears dead afterwards), but Initialize to $FF works.
The Image/Map for the JP1.4N Virgin Media remote works with this RDF.
The bad news is that the Buttons and ButtonMaps seem to be completely wrong. Most buttons don't do anything. The few that do are in the wrong place (if you assign to Vol+ in RMIR, it ends up on Stop on the remote).
This remote does not like Initialize to $00 (It appears dead afterwards), but Initialize to $FF works.
The Image/Map for the JP1.4N Virgin Media remote works with this RDF.
The bad news is that the Buttons and ButtonMaps seem to be completely wrong. Most buttons don't do anything. The few that do are in the wrong place (if you assign to Vol+ in RMIR, it ends up on Stop on the remote).
In Use: 3x URC7781 / 2x Nevo C2 / Harmony PS3 -|- Learner: Nevo C2
Can you give a more complete list of the buttons that work, giving (as in your example) the RMIR assignment and where it ends up on the remote? My guess is that the hardware of your two VM remotes is identical, so that the difference in button codes is software-related. With a few more examples we may be able to make a guess at how the key mapping has been changed.Knuckx wrote:The bad news is that the Buttons and ButtonMaps seem to be completely wrong. Most buttons don't do anything. The few that do are in the wrong place (if you assign to Vol+ in RMIR, it ends up on Stop on the remote).
Graham
In STB mode, STB Device type, all buttons assigned apart from *.
Depending on the number of buttons assigned, the place they appear seems to change; as Vol+ = Stop with less buttons assigned...
RMIR Button Name = Remote Button
Power = Play
button83 = FastFwd
Home = SkipBack
Mute = Down
Vol+ = OK
Vol- = Right
Help = Record
Rewind = Rewind
0 = Red
1 = Green
2 = Yellow
3 = Blue
4 = Guide
5 = Help
6 = Fav
7 = Info
8 = Up
9 = Left
That seems to be most of them; I've probably missed some.
Depending on the number of buttons assigned, the place they appear seems to change; as Vol+ = Stop with less buttons assigned...
RMIR Button Name = Remote Button
Power = Play
button83 = FastFwd
Home = SkipBack
Mute = Down
Vol+ = OK
Vol- = Right
Help = Record
Rewind = Rewind
0 = Red
1 = Green
2 = Yellow
3 = Blue
4 = Guide
5 = Help
6 = Fav
7 = Info
8 = Up
9 = Left
That seems to be most of them; I've probably missed some.
In Use: 3x URC7781 / 2x Nevo C2 / Harmony PS3 -|- Learner: Nevo C2
This remote doesn't use a digit table. Lots of remotes don't use the digit table, but still follow the standard format for upgrades, and place 00 at the byte location where the digit table number would be placed. The URC174000-00R01 is the only JP1.4/2/3 remote that I'm aware of that doesn't respect this aspect of the standard upgrade format: it simply omits the byte which would contain the digit table number.
Please test this assertion by loading an upgrade onto STB using RMIR. Then use the High Level tab of JP2Sniffer to download from the remote, edit the Type 10 segment as described below, and upload to the remote.
For example a standard upgrade using PID 005A (NEC1) device 243.253, setup code 1234 and only button 0 assigned would start like this:
00 00 00 00 00 04 D2 01 03 00 5A 00 81 20 30 40 3E 00 ........
The PID is in blue, and RMIR will have placed a 00 byte (red) just after the PID. Delete the 00 byte in red. Of course you should assign a lot of buttons to see the behavior; I only assigned one in order to generate the simplest upgrade.
Please test this assertion by loading an upgrade onto STB using RMIR. Then use the High Level tab of JP2Sniffer to download from the remote, edit the Type 10 segment as described below, and upload to the remote.
For example a standard upgrade using PID 005A (NEC1) device 243.253, setup code 1234 and only button 0 assigned would start like this:
00 00 00 00 00 04 D2 01 03 00 5A 00 81 20 30 40 3E 00 ........
The PID is in blue, and RMIR will have placed a 00 byte (red) just after the PID. Delete the 00 byte in red. Of course you should assign a lot of buttons to see the behavior; I only assigned one in order to generate the simplest upgrade.
RMIR can already handle remotes that omit the digit map byte. To do so, you need to add the line
into the [General] section of the RDF. It doesn't matter where in that section it occurs. You can add it at the end or somewhere in the middle. Please try it and let us know if it sorts the problem.
@3FG: I think this RDF item dates from very early in JP1, so I presume that some very old remotes also had this behaviour.
Code: Select all
OmitDigitMapByte=Y@3FG: I think this RDF item dates from very early in JP1, so I presume that some very old remotes also had this behaviour.
Graham
Yep, that RDF change fixed it. Still need to check keymoves/macros/learning/protocol upgrade/9xx codes, but all the keys match now. I will upload my copy of the RDF when I have finished messing with it.
Thanks to both of you for RMIR and all the help
Thanks to both of you for RMIR and all the help
In Use: 3x URC7781 / 2x Nevo C2 / Harmony PS3 -|- Learner: Nevo C2