Multiple USB Devices Same Hardware ID


Go to solution Solved by hawihoney,

Recommended Posts

I am trying to troubleshoot an issue with two of my USB devices having the same hardware IDs and It will not like my Home Assistant VM start. I have checked out the this Forum and found someone with a similar issue with the error message "operation failed: mutliple USB devices for 1a86:55d4, Use to specify one" when I try to start my Home Assistant VM. These two devices are my z-wave stick and zigbee dongle. I  installed the USB Manager plug-in and tried to follow the string here( UBS Manager). but found it hard to follow on how to correct my issue. I am new at deal with hardware issues like this. Attached are the two error messages. Is there a way to reassign/change the hardware ID? If I can not change this, how does other people get around this issue?

unraid1.png

unraid2.png

Edited by Tommy B.
Link to comment
15 minutes ago, Tommy B. said:

I am trying to troubleshoot an issue with two of my USB devices having the same hardware IDs and It will not like my Home Assistant VM start. I have checked out the this Forum and found someone with a similar issue with the error message "operation failed: mutliple USB devices for 1a86:55d4, Use to specify one" when I try to start my Home Assistant VM. These two devices are my z-wave stick and zigbee dongle. I  installed the USB Manager plug-in and tried to follow the string here( UBS Manager). but found it hard to follow on how to correct my issue. I am new at deal with hardware issues like this. Attached are the two error messages. Is there a way to reassign/change the hardware ID? If I can not change this, how does other people get around this issue?

unraid1.png

unraid2.png

No way to change you should just need to create a device or port mapping in usb manager for each device

Link to comment
  • Solution
9 hours ago, Tommy B. said:

mutliple USB devices for 1a86:55d4

 

Switch to "XML view" in VM declaration and try with bus:device instead of vendor:product. E.g.

 

# Instead of something like this ...
  <hostdev mode='subsystem' type='usb' managed='no'>
    <source>
      <vendor id='0x0930'/>
      <product id='0x6544'/>
    </source>    
[...]
  </hostdev>

# try something like this:
  <hostdev mode='subsystem' type='usb' managed='no'>
    <source>
      <address bus='1' device='2'/>
    </source>
[...]
  </hostdev>

 

In your case these are vendor:1a86 product:55d4 vs. bus:2 device:5 and bus:2 device:6.

 

***EDIT*** Removed non-relevant code lines from above to avoid confusion. 

 

Edited by hawihoney
Link to comment
12 hours ago, Tommy B. said:

Changing the XTML worked. I had to also change <address type='usb' bus='0' port='1'/> and <boot order='1'/>. I tried to map first but I never got that to work.

 

Thanks for the HELP!

If the device resets for any reason the port number may change. So if you loose connection in vm check ports still match

Link to comment
  • 9 months later...

I found this really useful and appreciate your assistance. I did have to decipher this for my case so, for my future reference and for others, here is more of a "How-to".  There may be an easier way then this like using 'USB Manager' but here is the hard way. Hope this helps others.

 

Created based on UNRAID version 6.12.8

 

Obtain USB Device Info:
1. Goto 'Tools' > 'System Devices'.
2. Scroll down to 'USB Devices'.
3. Note the 'Bus' and 'Device' number for each USB device you need to attach to the VM.
    In this example the Zigbee info is Bus=1 and Device=17 and the Z-Wave info is Bus=1 and Device=18.

image.thumb.png.41b12f1d5a94c8ad555e635f13960f7c.png

 

Clear USB Devices:
3. Edit the VM where the USB devices are to be attached.
4. Make sure both the Zigbee and Z-Wave 'USB Devices' (or other USB devices you have conflicts with) are unchecked and click 'Update'.

image.thumb.png.e9c1bd1c0a73949d05ccf412d04cd12c.png

 

Adding Conflicting USB Devices:
5. Edit the VM where the USB devices are to be attached.
6. Check only one of the USB Devices and click 'Update'.
7. Edit the VM again.
8. In the top right toggle 'Form View'. This will change to 'XML View'.

image.png.dd46f595e6f00bbc9915ae6bf093e90d.png
9. Scroll down near the bottom to the 'hostdev' section.

image.thumb.png.c59ab78a1bbf2c14f17367d4147710e8.png
10. Replace the two lines with 'vendor' and 'product' to <address bus='#' device='#'/> using the bus and device numbers of one of the devices you noted above.
Example:
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>

        <vendor id='0x1a86'/>
        <product id='0x55d4'/>

      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>

to
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>

        <address bus='1' device='17'/>
      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>

11. Note the 'port' number on line '<address type='usb' bus='0' port='2'/>'. This is the virtual USB port on the VM.
12. Copy the whole 'hostdev' section "<hostdev....</hostdev>".
13. Press enter after '</hostdev>' and paste. This will give you two 'hostdev' sections with the same info.
Example:
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address bus='1' device='17'/>
      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address bus='1' device='17'/>
      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>

14. In the second 'hostdev' section change the bus and device numbers of the other device you noted above.
15. Change the 'port' number in line '<address type='usb' bus='0' port='2'/>' to the next consecutive number.
Example:
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address bus='1' device='17'/>
      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <address
bus='1' device='18'/>
      </source>
      <address type='usb' bus='0'
port='3'/>
    </hostdev>

image.thumb.png.d36d91147714faa36a87a72c88ec8279.png

 

15. Click 'Update' and power on the VM.

Done

 

Some things to know.

1. If you go back into 'Form View' these USB items will not be checked and two new unknown ones will be added. 

image.png.c4dc5bc022564defc1af025bde7dacc5.png

 

2. To validate these are correctly installed use the SimonFair's 'USB Manager' app.  A new USB tab will be added and it will clearly show if the device is connected the the VM.

image.thumb.png.cbb249be705caad2d0d9fc413be40a9e.png

 

3. I do not know if this will get reset during updates or in other circumstances as I am just now working with this.  Best to bookmark this page or record this info elsewhere if it need to be reconfigured again.

4. While a 'boot order' was mentioned above, I did not have to specify one so I did not try to figure that out.  If you need this, please post and hopefully someone will add info on adding 'boot order' via the XML view.

5. Don't move the USB devices to different ports or it will break the connections to the VM.  If you need to move them you will need to update the bus and device numbers to the new values found in 'System Devices'.

 

I hope this is useful to others.

 

 

 

Edited by dlowe
Noted there is probably an easier way through 'USB Manager'
Link to comment
5 hours ago, dlowe said:

3. I do not know if this will get reset during updates or in other circumstances as I am just now working with this.  Best to bookmark this page or record this info elsewhere if it need to be reconfigured again.

If you update via the gui it may remove those. But you can create port mappings in my plugin that will connect the devices to the VM at start without having to add to XML or template.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.