Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Plugin] USB_Manager

Featured Replies

On 2/1/2025 at 10:13 AM, jademonkee said:

Yeah, I plan to pass through two IOMMU groups to my Windows VM, but that high speed port is in an IOMMU group that I can't pass through, and there's also a few other ports in that IOMMU Group that I would prefer to have accessible to Windows, as there's more than I need for Unraid.

So I'm pretty happy right now to find out that it's possible with this plugin.

Gonna do a search on what "USB HUB Processing" means in settings, and if I need to enable USBIP or not, now.

 

EDIT: Ah, found this in the changelog:

Add Hub processing.You can define a port mapping for a hub. If connected or vm starts all devices on that hub will be connected to the VM.         Will not process next level down hubs.

 

So I do not need it.

 

So it turns out that I can't bind any of the IOMMU groups with USB controllers to VFIO without crashing my BMC and stealing the ethernet from Unraid.

So I am now passing through USB ports using this plugin.

I have enabled "USB Hub Processing" but I could see now way to automatically assign "roothubs" to my VM (the little USB icon button is black for roothubs, and can only be clicked for ports). I have instead gone through and manually clicked on every single empty port and set it to automatically attach to the VM.

Is this the right/best way to go about getting my USB ports onto my VM (with hotplub support)? (I don't want hubs 1, 9, or 10 available to the VMs, though the ports for my keyboard and mouse will be passed through).

Screenshot attached.

Thanks for your help.

Screenshot 2025-02-04 at 14-31-02 Willow_USB.png

Edited by jademonkee

  • Replies 583
  • Views 124.8k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • I have started to add support for mapping devices as a Serial connection to a VM. So you wont have to use the XML fix.   Function works for starting/stopping VM, hotplug removal but doesnt w

  • Option added in 2022.08.20  

  • What output do you get if you hover over the virsh error?   The port number is only used if you enable connect as serial via the slider which is required for map Conbee II correctly above 6.

Posted Images

  • Author
4 hours ago, jademonkee said:

I have enabled "USB Hub Processing"

Hub processing is not supported on roothubs. It was put in place to support an external hub, i.e. in the monitor. I normally use device mappings as that will connect a device on any port. I then use a few ports for connecting devices to for ad-hoc requirements. Not sure what your use case for mapping that many ports.

3 hours ago, SimonF said:

Hub processing is not supported on roothubs. It was put in place to support an external hub, i.e. in the monitor. I normally use device mappings as that will connect a device on any port. I then use a few ports for connecting devices to for ad-hoc requirements. Not sure what your use case for mapping that many ports.

Just so I can plug whatever device into whatever port, but I went overboard haha.

Your approach makes much more sense. I really appreciate your insight, thank you.

Another question: when assigning a Hub to a VM, do I have to also assign the empty ports? Or is the hub enough?

for eg, I want the Hubs that correspond to port 3-2 and 4-2 to always be assigned to my VM, but do I also have to assign 3-2.1, 3-2.2, 4-2.1, 4-2.2 etc as empty ports, or is their assignment done automatically when I assign 3-2 and 4-2 to the VM?

Screenshot attached (you can also see the 20Gbps port being passed through, which I do want).

Many thanks.

Screenshot 2025-02-05 at 09-59-25 Willow_USB.png

  • Author
12 hours ago, jademonkee said:

Or is the hub enough?

Just the hub. The way it works is it will read all the devices under the hub and connect to the VM at start if enabled.

  • 3 weeks later...

I'm wondering if somehow the hotplug of usb device can be triggered from outside the web gui ?
I have this use case in mind with a physical switch managed by home assistant that allow to change usb device assignation or executable within the vm that will allow to reclaim the usb device. (to do stuff like you have 3 vm, one monitor, one usb hub, and have 3 keyboard shortcuts to attach the usb hub to vm 1,2 or 3)

  • 1 month later...
  • Author
39 minutes ago, rama3124 said:

Is there a way to create an unraid notification (or some other kind of notification) if the NUT server fails to start on boot or crashes for any reason?

You may want to post in the NUT page.

1 hour ago, SimonF said:

You may want to post in the NUT page.

Ooops, i thought i did post on that thread, must have clicked the wrong link

  • 1 month later...

HOLLY SHIT! Do you not realise how much of a time/lifesaver the auto reconnect usb to feature is?

In the past, with the hotplug plugin, I had to access unraid webui to reconnect a keyboard or mouse to the Windows 11 vm after I unplugged it to use with another machine and then replugged it back in, later on.

Now I can unplug and replug usb devices like a normal bare-metal machine.

I assume you have a PayPal donation link somewhere to chuck some beer money across?

  • Author
7 hours ago, Goldmaster said:

HOLLY SHIT! Do you not realise how much of a time/lifesaver the auto reconnect usb to feature is?

In the past, with the hotplug plugin, I had to access unraid webui to reconnect a keyboard or mouse to the Windows 11 vm after I unplugged it to use with another machine and then replugged it back in, later on.

Now I can unplug and replug usb devices like a normal bare-metal machine.

I assume you have a PayPal donation link somewhere to chuck some beer money across?

Glad it has fixed your need to auto connect. There is a donate link in the CA info for USBM.

On 5/24/2025 at 7:18 PM, SimonF said:

Glad it has fixed your need to auto connect. There is a donate link in the CA info for USBM.

Thank you, found the PayPal link and just done that.

Beer money on the way.

  • Author
4 minutes ago, Goldmaster said:

Thank you, found the PayPal link and just done that.

Beer money on the way.

Thankyou appreciated.

  • 5 months later...

Is there a tutorial or guide anywhere? I had this setup working for months, and after a machine reboot, I just can't get the USB device working over IP anymore. It was so easy to get working in the past, but now it just will not work.

if I try to list all the devices in console, I get an error

root@mymachine:~# usbip list -r localhost

usbip: error: could not connect to localhost:3240: System error

  • Author
7 hours ago, christobaass said:

if I try to list all the devices in console, I get an error

root@mymachine:~# usbip list -r localhost

usbip: error: could not connect to localhost:3240: System error

Do you have it enabled in the settings?

image.png

You can check the log to see if usbipd is running.

root@QNAPR420:~# cat /var/log/syslog | grep usbipd

Nov 17 07:42:35 QNAPR420 usb_manager: Start usbipd

Nov 17 07:42:35 QNAPR420 usbipd: usbipd: info: starting usbipd (usbip-utils 2.0)

Nov 17 07:42:35 QNAPR420 usbipd: usbipd: info: listening on 0.0.0.0:3240

Nov 17 07:42:35 QNAPR420 usbipd: usbipd: info: listening on :::3240

Nov 17 07:43:43 QNAPR420 usbipd: usbipd: info: connection from 127.0.0.1:58920

Nov 17 07:43:43 QNAPR420 usbipd: usbipd: info: received request: 0x8005(11)

Nov 17 07:43:43 QNAPR420 usbipd: usbipd: info: exportable devices: 0

Nov 17 07:43:43 QNAPR420 usbipd: usbipd: info: request 0x8005(11): complete

root@QNAPR420:~#

  • 1 month later...

for VM’s i know their is a way to auto map them to the VM, but for USBIP… is there any way to auto bind them so that they are available to IP host immediately after reboot.

IMG_1189.jpeg

  • Author
3 hours ago, sidjohn1 said:

for VM’s i know their is a way to auto map them to the VM, but for USBIP… is there any way to auto bind them so that they are available to IP host immediately after reboot.

IMG_1189.jpeg

No there is no option to bind devices to usbip via the plugin.

  • 1 month later...

I have a Sky connect ZBT-1 with Thread firmware and a SONOFF dongle with Zigbee flashed, turns out both share the same chipset, which means I can't passthrough both to my Home assistant VM.

Tried this plugin but it has the same issue, each time both dongles are connected and I Start or Stop the vm everything crashes on unraid and HA, I can only ssh.

Anyone with the same issue?

Why would you need 2 in the first place?

  • Author
1 hour ago, MiguelG said:

I have a Sky connect ZBT-1 with Thread firmware and a SONOFF dongle with Zigbee flashed, turns out both share the same chipset, which means I can't passthrough both to my Home assistant VM.

Tried this plugin but it has the same issue, each time both dongles are connected and I Start or Stop the vm everything crashes on unraid and HA, I can only ssh.

Anyone with the same issue?

How have you configure them in USBM. Also provide diagnostics if you can.

  • 1 month later...

Screenshot 2026-03-22 at 1.44.06 PM.png

For a couple of years I've used this plugin to sync my iPhone to a macOS VM.

Works great!

But with two new iOS devices when I try to attach them I get a "bind" failure in the unraid log, the VM crashes, and the device restarts (which I believe is a security measure.) Same VM, same port, same cable for all 3. The original device (iPhone) still attaches and syncs perfectly.

Any ideas?

Log excerpt with phone that works:

works

Mar 16 14:35:30 NAS kernel: usb 1-2: new high-speed USB device number 27 using xhci_hcd

Mar 16 14:35:31 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_befb940XXXXXXXXXXXX /dev/bus/usb/001/027 001 027

Mar 16 14:35:31 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_befb940XXXXXXXXXXXX running 001 027

Mar 16 14:35:31 NAS usb_manager: Info: virsh called macOS 001 027 Device attached successfully

Mar 16 14:35:46 NAS kernel: usb 1-2: reset high-speed USB device number 27 using xhci_hcd

Mar 16 14:36:04 NAS kernel: usb 1-2: USB disconnect, device number 27

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager usb_remove  Apple_Inc._iPhone_befb940XXXXXXXXXXXX /dev/bus/usb/001/027 001 027

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager Device Match 001/027 vm: macOS  001 027

Mar 16 14:36:04 NAS usb_manager: Info: virsh called macOS 001 027 Device detached successfully

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager Disconnect  001/027 vm: macOS running 001 027

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager Removed 001/027 vm: macOS running 001 027

Mar 16 14:36:04 NAS kernel: usb 1-2: new high-speed USB device number 28 using xhci_hcd

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_befb940XXXXXXXXXXXX /dev/bus/usb/001/028 001 028

Mar 16 14:36:05 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_befb940XXXXXXXXXXXX running 001 028

Mar 16 14:36:05 NAS usb_manager: Info: virsh called macOS 001 028 Device attached successfully

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.2: MAC-Address: 0a:e6:89:3a:84:dd

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.2 usb0: register 'cdc_ncm' at usb-0000:00:15.0-2, CDC NCM (Apple Tethering), 0a:e6:89:3a:84:dd

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.4: MAC-Address: fe:66:b5:33:4b:42

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.4 usb1: register 'cdc_ncm' at usb-0000:00:15.0-2, CDC NCM (Apple Private), fe:66:b5:33:4b:42

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.2 usb0: unregister 'cdc_ncm' usb-0000:00:15.0-2, CDC NCM (Apple Tethering)

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.4 usb1: unregister 'cdc_ncm' usb-0000:00:15.0-2, CDC NCM (Apple Private)

Log excerpt with phone that doesn't:

breaks

Mar 16 14:38:04 NAS kernel: usb 1-2: new high-speed USB device number 29 using xhci_hcd

Mar 16 14:38:05 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_6d4333XXXXXXXXX /dev/bus/usb/001/029 001 029

Mar 16 14:38:05 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_6d4333XXXXXXXXX running 001 029

Mar 16 14:38:05 NAS usb_manager: Info: virsh called macOS 001 029 Device attached successfully

Mar 16 14:38:05 NAS kernel: usb 1-2: USB disconnect, device number 29

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager usb_remove  Apple_Inc._iPhone_6d4333XXXXXXXXX /dev/bus/usb/001/029 001 029

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Device Match 001/029 vm: macOS  001 029

Mar 16 14:38:06 NAS usb_manager: Info: virsh called macOS 001 029 Device detached successfully

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Disconnect  001/029 vm: macOS running 001 029

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Removed 001/029 vm: macOS running 001 029

Mar 16 14:38:06 NAS kernel: usb 1-2: new high-speed USB device number 30 using xhci_hcd

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_6d4333XXXXXXXXX /dev/bus/usb/001/030 001 030

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_6d4333XXXXXXXXX running 001 030

Mar 16 14:38:06 NAS usb_manager: Info: virsh called macOS 001 030 Device attached successfully

Mar 16 14:38:58 NAS kernel: cdc_ncm 1-2:5.2: bind() failure

Mar 16 14:39:08 NAS kernel: usb 1-2: reset high-speed USB device number 30 using xhci_hcd

Mar 16 14:39:14 NAS kernel: usb 1-2: device descriptor read/64, error -110

Mar 16 14:39:30 NAS kernel: usb 1-2: device descriptor read/64, error -110

Mar 16 14:39:30 NAS kernel: usb 1-2: reset high-speed USB device number 30 using xhci_hcd

  • Author
On 3/22/2026 at 6:03 PM, CS01-HS said:

Screenshot 2026-03-22 at 1.44.06 PM.png

For a couple of years I've used this plugin to sync my iPhone to a macOS VM.

Works great!

But with two new iOS devices when I try to attach them I get a "bind" failure in the unraid log, the VM crashes, and the device restarts (which I believe is a security measure.) Same VM, same port, same cable for all 3. The original device (iPhone) still attaches and syncs perfectly.

Any ideas?

Log excerpt with phone that works:

works

Mar 16 14:35:30 NAS kernel: usb 1-2: new high-speed USB device number 27 using xhci_hcd

Mar 16 14:35:31 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_befb940XXXXXXXXXXXX /dev/bus/usb/001/027 001 027

Mar 16 14:35:31 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_befb940XXXXXXXXXXXX running 001 027

Mar 16 14:35:31 NAS usb_manager: Info: virsh called macOS 001 027 Device attached successfully

Mar 16 14:35:46 NAS kernel: usb 1-2: reset high-speed USB device number 27 using xhci_hcd

Mar 16 14:36:04 NAS kernel: usb 1-2: USB disconnect, device number 27

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager usb_remove  Apple_Inc._iPhone_befb940XXXXXXXXXXXX /dev/bus/usb/001/027 001 027

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager Device Match 001/027 vm: macOS  001 027

Mar 16 14:36:04 NAS usb_manager: Info: virsh called macOS 001 027 Device detached successfully

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager Disconnect  001/027 vm: macOS running 001 027

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager Removed 001/027 vm: macOS running 001 027

Mar 16 14:36:04 NAS kernel: usb 1-2: new high-speed USB device number 28 using xhci_hcd

Mar 16 14:36:04 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_befb940XXXXXXXXXXXX /dev/bus/usb/001/028 001 028

Mar 16 14:36:05 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_befb940XXXXXXXXXXXX running 001 028

Mar 16 14:36:05 NAS usb_manager: Info: virsh called macOS 001 028 Device attached successfully

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.2: MAC-Address: 0a:e6:89:3a:84:dd

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.2 usb0: register 'cdc_ncm' at usb-0000:00:15.0-2, CDC NCM (Apple Tethering), 0a:e6:89:3a:84:dd

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.4: MAC-Address: fe:66:b5:33:4b:42

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.4 usb1: register 'cdc_ncm' at usb-0000:00:15.0-2, CDC NCM (Apple Private), fe:66:b5:33:4b:42

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.2 usb0: unregister 'cdc_ncm' usb-0000:00:15.0-2, CDC NCM (Apple Tethering)

Mar 16 14:36:05 NAS kernel: cdc_ncm 1-2:5.4 usb1: unregister 'cdc_ncm' usb-0000:00:15.0-2, CDC NCM (Apple Private)

Log excerpt with phone that doesn't:

breaks

Mar 16 14:38:04 NAS kernel: usb 1-2: new high-speed USB device number 29 using xhci_hcd

Mar 16 14:38:05 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_6d4333XXXXXXXXX /dev/bus/usb/001/029 001 029

Mar 16 14:38:05 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_6d4333XXXXXXXXX running 001 029

Mar 16 14:38:05 NAS usb_manager: Info: virsh called macOS 001 029 Device attached successfully

Mar 16 14:38:05 NAS kernel: usb 1-2: USB disconnect, device number 29

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager usb_remove  Apple_Inc._iPhone_6d4333XXXXXXXXX /dev/bus/usb/001/029 001 029

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Device Match 001/029 vm: macOS  001 029

Mar 16 14:38:06 NAS usb_manager: Info: virsh called macOS 001 029 Device detached successfully

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Disconnect  001/029 vm: macOS running 001 029

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Removed 001/029 vm: macOS running 001 029

Mar 16 14:38:06 NAS kernel: usb 1-2: new high-speed USB device number 30 using xhci_hcd

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager usb_add Apple_Inc._iPhone_6d4333XXXXXXXXX /dev/bus/usb/001/030 001 030

Mar 16 14:38:06 NAS usb_manager: Info: rc.usb_manager Autoconnect vm state:running Apple_Inc._iPhone_6d4333XXXXXXXXX running 001 030

Mar 16 14:38:06 NAS usb_manager: Info: virsh called macOS 001 030 Device attached successfully

Mar 16 14:38:58 NAS kernel: cdc_ncm 1-2:5.2: bind() failure

Mar 16 14:39:08 NAS kernel: usb 1-2: reset high-speed USB device number 30 using xhci_hcd

Mar 16 14:39:14 NAS kernel: usb 1-2: device descriptor read/64, error -110

Mar 16 14:39:30 NAS kernel: usb 1-2: device descriptor read/64, error -110

Mar 16 14:39:30 NAS kernel: usb 1-2: reset high-speed USB device number 30 using xhci_hcd

Is the device connected via USB3 and do you have USB3 in the VM? That is the only thing I can think of.

7 hours ago, SimonF said:

Is the device connected via USB3 and do you have USB3 in the VM? That is the only thing I can think of.

USB 2.0 device but connected to a USB3 port. I switched to a USB2 port - no luck, same error. Thanks though.

I went through hell trying to get the original device to sync before I discovered your plugin so maybe something I did in that process is the difference.

  • Author
30 minutes ago, CS01-HS said:

USB 2.0 device but connected to a USB3 port. I switched to a USB2 port - no luck, same error. Thanks though.

I went through hell trying to get the original device to sync before I discovered your plugin so maybe something I did in that process is the difference.

Will do some research but may take me a bit of time, as I am busy with the beta at present.

  • Author
8 hours ago, SimonF said:

Is the device connected via USB3 and do you have USB3 in the VM? That is the only thing I can think of.

Which Unraid OS version are you on 7.2.4?

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...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.