EZ-RC alternative for my Monster remote?
Moderator: Moderators
There are two distinct types of XSight remote. The Nevos are like the XSight Touch/Color and all recent activity in these forums has been related to these remotes, but there are also the XSight Lite/Plus remotes and ARRX equivalents. These also used EZ-RC but internally they are very different, being more related to JP1.4 remotes than to the Touch/Color. One distinction between the two types is that the older Touch/Color and similar have mini USB connectors, the Lite/Plus have micro USB connectors.
Teammaf has said that his remote has a mini USB connector, so I have assumed it is of the Touch/Color type. However, if it is then the message "Read versions from remote failed to initiate" in his rmaster.err file from RMIR build 18 (and "Read initialization failed" in that from build 14, which is essentially the same) is rather worrying. It suggests that his remote does not use the same command structure as the other Touch/Color remotes.
I think the next thing to try is to see if it is really of the Lite/Plus type. Teammaf, instead of your present RDF starting USB7, please take a copy of USB8008 (URC-8610 XSight Lite).rdf and change the start of this to USB7. You will, of course, need either to delete your present RDF or change the number after USB to something other than 7.
The reason you need USB7 rather than USB0007 is because we have not come across before a USB PID value that begins with zeroes. Once we sort this out, I will amend RMIR so that it uses 4 hex digits (it is a hexadecimal value, not a decimal one) even when it has leading zeroes, but in the meantime you should continue with simply 7.
If raw download fails with the Lite/Plus style of RDF then we are in deeper water. We should be able to sort it but it will be a more difficult task.
Teammaf has said that his remote has a mini USB connector, so I have assumed it is of the Touch/Color type. However, if it is then the message "Read versions from remote failed to initiate" in his rmaster.err file from RMIR build 18 (and "Read initialization failed" in that from build 14, which is essentially the same) is rather worrying. It suggests that his remote does not use the same command structure as the other Touch/Color remotes.
I think the next thing to try is to see if it is really of the Lite/Plus type. Teammaf, instead of your present RDF starting USB7, please take a copy of USB8008 (URC-8610 XSight Lite).rdf and change the start of this to USB7. You will, of course, need either to delete your present RDF or change the number after USB to something other than 7.
The reason you need USB7 rather than USB0007 is because we have not come across before a USB PID value that begins with zeroes. Once we sort this out, I will amend RMIR so that it uses 4 hex digits (it is a hexadecimal value, not a decimal one) even when it has leading zeroes, but in the meantime you should continue with simply 7.
If raw download fails with the Lite/Plus style of RDF then we are in deeper water. We should be able to sort it but it will be a more difficult task.
Graham
@Teammaf
It has dawned on me that no-one has remembered to tell you that to use RMIR or EZ-RC on XSight remotes with Windows 8.1 or 10, you must have Enhanced Power Management disabled for the device. There is a link in the Help menu of RMIR 2.04 build 18 to information on this, but the link appears to be broken (whether accessed from RMIR or directly). So here is the text of the ReadMe from that link. You need to use RegEdit to check or change this setting, as for obvious reasons we don't have a registry fix file for your remote:
It has dawned on me that no-one has remembered to tell you that to use RMIR or EZ-RC on XSight remotes with Windows 8.1 or 10, you must have Enhanced Power Management disabled for the device. There is a link in the Help menu of RMIR 2.04 build 18 to information on this, but the link appears to be broken (whether accessed from RMIR or directly). So here is the text of the ReadMe from that link. You need to use RegEdit to check or change this setting, as for obvious reasons we don't have a registry fix file for your remote:
The included reg files fix the issue of Xsight remotes disconnecting immediately in Windows 8.1. This is due to a USB power management feature documented at the site below.
http://blogs.msdn.com/b/usbcoreblog/arc ... ently.aspx
To apply the fix, double click the reg file(s) appropriate for your model remote(s). This enables the remote to maintain a connection in Windows 8.1 both for use with the EZ-RC website and with Remote Master. It changes the following key from 1 to 0, where xxxx is the PID associated with each remote:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_06E7&PID_xxxx\XSIGHT.\Device Parameters]
"EnhancedPowerManagementEnabled"
After a firmware update, the key may be different. So apply the fix again to the new key:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_06E7&PID_xxxx\Xsight\Device Parameters]
"EnhancedPowerManagementEnabled"
Thanks to hifi-remote.com user eXim82 for discovering this fix.
Graham
Im on Windows 7, shouldve stated this somewhere, but yeah windows 7 64 bit.mathdon wrote:@Teammaf
It has dawned on me that no-one has remembered to tell you that to use RMIR or EZ-RC on XSight remotes with Windows 8.1 or 10, you must have Enhanced Power Management disabled for the device. There is a link in the Help menu of RMIR 2.04 build 18 to information on this, but the link appears to be broken (whether accessed from RMIR or directly). So here is the text of the ReadMe from that link. You need to use RegEdit to check or change this setting, as for obvious reasons we don't have a registry fix file for your remote:
The included reg files fix the issue of Xsight remotes disconnecting immediately in Windows 8.1. This is due to a USB power management feature documented at the site below.
http://blogs.msdn.com/b/usbcoreblog/arc ... ently.aspx
To apply the fix, double click the reg file(s) appropriate for your model remote(s). This enables the remote to maintain a connection in Windows 8.1 both for use with the EZ-RC website and with Remote Master. It changes the following key from 1 to 0, where xxxx is the PID associated with each remote:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_06E7&PID_xxxx\XSIGHT.\Device Parameters]
"EnhancedPowerManagementEnabled"
After a firmware update, the key may be different. So apply the fix again to the new key:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_06E7&PID_xxxx\Xsight\Device Parameters]
"EnhancedPowerManagementEnabled"
Thanks to hifi-remote.com user eXim82 for discovering this fix.
So heres what happens when I rename that RDF(USB8008 (URC-8610 XSight Lite).rdf) to USB7. When I do a regular download it actually lights up my remote. But I dont think it completes, going to leave it downloading for a while and see if it errors out or what happens. Whats the longest time to wait that's normal to do a download on a remote?mathdon wrote:There are two distinct types of XSight remote. The Nevos are like the XSight Touch/Color and all recent activity in these forums has been related to these remotes, but there are also the XSight Lite/Plus remotes and ARRX equivalents. These also used EZ-RC but internally they are very different, being more related to JP1.4 remotes than to the Touch/Color. One distinction between the two types is that the older Touch/Color and similar have mini USB connectors, the Lite/Plus have micro USB connectors.
Teammaf has said that his remote has a mini USB connector, so I have assumed it is of the Touch/Color type. However, if it is then the message "Read versions from remote failed to initiate" in his rmaster.err file from RMIR build 18 (and "Read initialization failed" in that from build 14, which is essentially the same) is rather worrying. It suggests that his remote does not use the same command structure as the other Touch/Color remotes.
I think the next thing to try is to see if it is really of the Lite/Plus type. Teammaf, instead of your present RDF starting USB7, please take a copy of USB8008 (URC-8610 XSight Lite).rdf and change the start of this to USB7. You will, of course, need either to delete your present RDF or change the number after USB to something other than 7.
The reason you need USB7 rather than USB0007 is because we have not come across before a USB PID value that begins with zeroes. Once we sort this out, I will amend RMIR so that it uses 4 hex digits (it is a hexadecimal value, not a decimal one) even when it has leading zeroes, but in the meantime you should continue with simply 7.
If raw download fails with the Lite/Plus style of RDF then we are in deeper water. We should be able to sort it but it will be a more difficult task.
Doing a Raw download it asks me the number of bytes to select, I did whatever showed default selection of 2k, RAW download actually completed and showed information for once, but once again I cannot save, I click save, nothing happens, no prompt box or anything.

Not sure if this info is related to why I cant save:
Code: Select all
Testing interface: CommHID
Remote found: Manufacturer = Universal Electronics Inc., Product = Monster AVL-50 USB HID (C) 2009, Product ID = 7
Port Name = HID
Opened on Port HID
Opened interface type 106
Interface opened successfully
Base address = $0
Remote signature = USB7
Initial buffer size = $0
Final buffer size = $800
Number of bytes read = $800
Ending raw download
Exception in thread "AWT-EventQueue-0" java.lang.StringIndexOutOfBoundsException: String index out of range: 7
at java.lang.String.substring(Unknown Source)
at com.hifiremote.jp1.RawDataDialog.actionPerformed(RawDataDialog.java:253)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(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$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.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.pumpEventsForFilter(Unknown Source)
at java.awt.WaitDispatchSupport$2.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.awt.WaitDispatchSupport$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.WaitDispatchSupport.enter(Unknown Source)
at java.awt.Dialog.show(Unknown Source)
at java.awt.Component.show(Unknown Source)
at java.awt.Component.setVisible(Unknown Source)
at java.awt.Window.setVisible(Unknown Source)
at java.awt.Dialog.setVisible(Unknown Source)
at com.hifiremote.jp1.RemoteMaster.actionPerformed(RemoteMaster.java:3549)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(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$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.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)Seems to be something wrong with the signature. It may be connected to the issue with file being named USB7 instead of USB0007.
Try this build (26):
https://www.dropbox.com/s/bc7tfj5l58foa ... r.jar?dl=0 (sorry for dropbox link, I have some issue uploading to the forum files section).
Just replace the RemoteMaster.jar file in your RM directory (make a copy of the original one).
I've added an extra check where the Exception happens.
I'm not an expert on that matter but the content of the RAW download dialog doesn't look right to me anyway. Still, try my build and check if you can save the file.
Try this build (26):
https://www.dropbox.com/s/bc7tfj5l58foa ... r.jar?dl=0 (sorry for dropbox link, I have some issue uploading to the forum files section).
Just replace the RemoteMaster.jar file in your RM directory (make a copy of the original one).
I've added an extra check where the Exception happens.
I'm not an expert on that matter but the content of the RAW download dialog doesn't look right to me anyway. Still, try my build and check if you can save the file.
Marcin
What a genius...
What I was thinking too from what i read in the .err the 7 vs 0007 thing.
It worked I got a file to save, but im not sure what fill type is it suppose to be .ir ? does it matter 1k 2k 4k 8k raw download?
Should i be able to re-open it with the same program?
let me know then ill upload
What I was thinking too from what i read in the .err the 7 vs 0007 thing.
It worked I got a file to save, but im not sure what fill type is it suppose to be .ir ? does it matter 1k 2k 4k 8k raw download?
Should i be able to re-open it with the same program?
let me know then ill upload
It's just a RAW dump of the remote's flash memory area, where the settings should be stored. As I've said before, I'm not an expert when it comes to analysing such data. I don't know what Graham and others use to view this later but I suppose that it's just some hex editor.
I don't know about the dump size. You can try the largest one first. If it goes through then upload that one. If not then select next one and try again.
I don't know about the dump size. You can try the largest one first. If it goes through then upload that one. If not then select next one and try again.
Marcin
Unfortunately the raw download is failing. It appears to consist of a series of repetitions of the same 64-byte packet, which is an error packet signifying "Bad address".
Here's some more info for the experts. The initial call to MAXQ_USB_getInfoAndSig() is failing, leaving the download with the information that the EEPROM (E2) area has length 0 starting at address 0. The length 0 is the reason why it asks Teammaf for the number of bytes to download, to which he is replying 2K. It then attempts to read 2K bytes starting at address 0, reading 64 bytes at at time except that the first 3 bytes of the first read are control data so do not get recorded in the raw download. These 2K bytes at address 0 are protected memory in the OS of the remote, so the reads fail. Since the first read only gives 61 bytes of data, we see from Teammaf's screenshot that each 64-byte packet is
My understanding is that 00 02 is the length of the following data, the 03 is an error code for "Bad address", I don't know the significance of the 01 if any, and since there are only 2 bytes of data, the rest is random junk.
To me, this seems to say that the remote is indeed of the XSight Lite type as it does respond to the read request, even if only with an error code. The main failure is that RMIR was unable to read the start address of the E2 area. The length is less significant, as we would learn a lot if we could read even the start of the E2. I'm not sure how to proceed. I'm not the expert on communication with the XSight Lite remotes, that was written by 3FG. Perhaps he has thoughts on how to read the info and signature block when the code in RMIR fails, otherwise perhaps we will need to resort to trial and error.
This is my understanding so far of this rather curious remote.
Here's some more info for the experts. The initial call to MAXQ_USB_getInfoAndSig() is failing, leaving the download with the information that the EEPROM (E2) area has length 0 starting at address 0. The length 0 is the reason why it asks Teammaf for the number of bytes to download, to which he is replying 2K. It then attempts to read 2K bytes starting at address 0, reading 64 bytes at at time except that the first 3 bytes of the first read are control data so do not get recorded in the raw download. These 2K bytes at address 0 are protected memory in the OS of the remote, so the reads fail. Since the first read only gives 61 bytes of data, we see from Teammaf's screenshot that each 64-byte packet is
Code: Select all
00 02 03 01 10 C7 00 55 followed by 00'sTo me, this seems to say that the remote is indeed of the XSight Lite type as it does respond to the read request, even if only with an error code. The main failure is that RMIR was unable to read the start address of the E2 area. The length is less significant, as we would learn a lot if we could read even the start of the E2. I'm not sure how to proceed. I'm not the expert on communication with the XSight Lite remotes, that was written by 3FG. Perhaps he has thoughts on how to read the info and signature block when the code in RMIR fails, otherwise perhaps we will need to resort to trial and error.
This is my understanding so far of this rather curious remote.
Graham
Uploaded directly after the Raw download finishes, click save, and save as the file name it brings up which is 7.ir
Also put in the wrong section, if mods can move to diagnosis section, went in the wrong section.
https://www.hifi-remote.com/forums/dload ... e_id=14569
Not sure if its in the right format or not, or if past posts are related to such file. I know it wont open for me after I try to open the file back in RM
Also put in the wrong section, if mods can move to diagnosis section, went in the wrong section.
https://www.hifi-remote.com/forums/dload ... e_id=14569
Not sure if its in the right format or not, or if past posts are related to such file. I know it wont open for me after I try to open the file back in RM
Teammaf,
As mentioned above, your remote might be based on the MAXQ622 processor, similar to the USB8011 (ARRX12G XSight 12). If so, we can try to investigate the remote using the Windows program JP2Sniffer. Before startiing JP2Sniffer, connect the USB cable to the remote. Then go to the Low Level tab, and click in order Begin Comm, wait a few seconds, and hopefully you'll see Then click GetInfo Click GetSigBlk Finally, be sure to click End Comm to return the remote to normal operating mode. We hope to see similar length responses to those above, but not necessarily the exact same hex numbers. Please copy whatever does show up and post it here.
As mentioned above, your remote might be based on the MAXQ622 processor, similar to the USB8011 (ARRX12G XSight 12). If so, we can try to investigate the remote using the Windows program JP2Sniffer. Before startiing JP2Sniffer, connect the USB cable to the remote. Then go to the Low Level tab, and click in order Begin Comm, wait a few seconds, and hopefully you'll see
Code: Select all
00 02 51 53 00 02 00 02Code: Select all
00 02 50 52 00 08 00 86 15 00 01 FE 00 64 Code: Select all
00 08 01 00 01 FE 00 00 54 A2 00 56 00 87 78 00 00 02 00 32 30 31 31 31 33 FF FF FF FF FF FF FF FF 00 01 13 93 06 E7 FE 00 11 57 D1 04 F9 80 11 08 FF FF FF FF 02 00 07 00 00 16 00 80 02 00 18 80 02 00 1C 80 02 00 20 80 02 00 24 80 02 00 28 80 02 00 2C FF FF FF FF FF FF FF FF FF FF FF FF FF 2E 00 08 01 00 02 00 1C 00 04 13 00 06 00 00 02 C0 00 C4 00 08 01 00 02 00 20 00 04 2F 00 06 00 00 03 00 00 05 00 08 01 00 02 00 2C 00 04 23 00 06 00 00 03 E2 00 E7