[Plugin] USB_Manager


SimonF

Recommended Posts

1 hour ago, SimonF said:

Are you using the hotplug from my plugin or the libvirt version. If you have installed USB manager you should have USB on the menu bar. Within that page you will see the each usb dev there is an icon for the port or device mapping. Click on the option and set the slider to connect on VM start.

 

Didn't realize there was a USB tab added to the nav bar, nor did I know libvirt had a hotplug feature to begin with. (facepalm.. lol) Just made this adjustment in the UI. Thanks for the help! Will keep an eye on things and report back if still disconnecting. Very cool tool

  • Like 1
Link to comment

Thanks for this awesome plugin.
Attaching USB devices while a VM is running is working perfectly. The port mapping option "Auto Connect at USB Device Plugin" also works perfectly when a VM is running and I plug a device into the port.
But unfortunately the port mapping option "Auto Connect to VM at VM Start" doesn't work. When a device is plugged in and I start the VM the device doesn't get attached and nothing is shown on the system log. And when I then attach the devices manually and stop the VM the devices are still shown as connected. When I start the VM again the devices are also not attached but are still shown as connected. When pressing detach an error is shown (probably because they weren't attached anyway) and after reattaching they work perfectly.
So I think something is wrong with the VM state hooks so I looked into the hooks file and search for "manager" but nothing was found. Do I have to manually add something in there? Thanks.

Link to comment
Posted (edited)
15 minutes ago, Modac said:

Thanks for this awesome plugin.
Attaching USB devices while a VM is running is working perfectly. The port mapping option "Auto Connect at USB Device Plugin" also works perfectly when a VM is running and I plug a device into the port.
But unfortunately the port mapping option "Auto Connect to VM at VM Start" doesn't work. When a device is plugged in and I start the VM the device doesn't get attached and nothing is shown on the system log. And when I then attach the devices manually and stop the VM the devices are still shown as connected. When I start the VM again the devices are also not attached but are still shown as connected. When pressing detach an error is shown (probably because they weren't attached anyway) and after reattaching they work perfectly.
So I think something is wrong with the VM state hooks so I looked into the hooks file and search for "manager" but nothing was found. Do I have to manually add something in there? Thanks.

Which OS vers are you running? also which vers of the plugin beta or non beta.?

 

if 6.10 plus there should be a qemu.d in hooks directory.

 

if should install hooks entries.

 

was vm manager enabled when you imstalled the plugin?

Edited by SimonF
Link to comment
14 minutes ago, SimonF said:

Which OS vers are you running? also which vers of the plugin beta or non beta.?

 

if 6.10 plus there should be a qemu.d in hooks directory.

 

if should install hooks entries.

 

was vm manager enabled when you imstalled the plugin?

So to answer your questions:
OS Version: 6.9.2
Non Beta Plugin

I reinstalled the plugin and the hooks file has been changed now, so I figured the VM manager was disabled when I first installed it.
It is probably pretty rare that the VM manager is disabled during installation but maybe add a note somewhere that that the VM manager has to be enabled during the installation?
Unfortunately I can't test the hotplugging now because libvirt service wont start after I disabled and enabled the vm manager again. I'll have to restart the server tomorrow.

But I think my issue is fixed, thanks for the reply.

  • Thanks 1
Link to comment
9 hours ago, Modac said:

It is probably pretty rare that the VM manager is disabled during installation but maybe add a note somewhere that that the VM manager has to be enabled during the installation?

Thanks, I haven't accounted for this use case, I will add an event process for when Libvirt is started to check that the hooks file updates are in place which should fix this. Thanks for the feedback.

Link to comment
  • 4 weeks later...
Posted (edited)

Man, I gotta say... I´ve been holding back on moving my main pc to unraid just because I can't get additional usb controllers. This plugin saved me a lot of money and I whish I would have found it a month ago. This is FUCKING GENIUS! I use a USB switch to go between my work laptop (which isn´t optional) to my PC for gaming.... So I don't have to be swithing cables all the time. Whith this plugin I just set the rule and now when I press the switch button everything works almost-flawlessly. Sometimes my wireless headphones don't show up but it's just a matter of switching them off and on again... I'm so happy right now.. you have no clue! THANKS!

Edited by KnF
  • Thanks 1
Link to comment

It does try to map it, but it shows a random error which goes away with the flick of a switch, it´s Corsair Virtuoso. It has some weird way of working.. when you turn the headset off it acts like the usb device were unplugged, this way the OS stops detecting the Sound device and automagically switches to the next audio output... 

Link to comment
Posted (edited)

It's me again. I'm having some issues, but I will not ask you to solve them. I'm going to try help you improve this plugin which is already awesome. I'm a 15 year experience dev so I think I can try to debug the issues that I'm having, but I might need your help from time to time. 

 

I've been trying to pinpoint an issue. Most of the times it works just fine, but sometimes it doesn't. 

 

I'm gonna explain my setup so you get more context. 

 

I have a Ugreen USB 3.0 Switch which has 4 "devices" ports and 2 "computer" ports. When you press the button on top of it, it disconnects the 4 "devices" from PC 1 and connects them into PC 2. You click again and the same thing happens but in reverse. So far so good. Never had any issues even though PC 1 is a PC (Unraid now) and PC 2 is a Macbook Pro (work laptop).

I only have 3 devices connected to it. 

  1. K70 Keyboard.
  2. Corsair Dongle for Headphones 
  3. Logitech USB wireless receiver for mouse.

Whenever I press the button to switch from PC 2 to PC 1 this is what I see in the syslog (time and host removed):

Bear in mind that I deleted all the rules!

 

kernel: usb 2-7: new SuperSpeed USB device number 40 using xhci_hcd
kernel: hub 2-7:1.0: USB hub found
kernel: hub 2-7:1.0: 4 ports detected
kernel: usb 1-4.4: new high-speed USB device number 52 using xhci_hcd
usb_manager: Info: rc.usb_manager usb_add GenesysLogic_USB3.1_Hub /dev/bus/usb/002/040 002 040
kernel: hub 1-4.4:1.0: USB hub found
kernel: hub 1-4.4:1.0: 4 ports detected
usb_manager: Info: rc.usb_manager Autoconnect No Mapping found GenesysLogic_USB3.1_Hub /dev/bus/usb/002/040 002 040 port 2-7
usb_manager: Info: rc.usb_manager usb_add GenesysLogic_USB2.0_Hub /dev/bus/usb/001/052 001 052
usb_manager: Info: rc.usb_manager Autoconnect No Mapping found GenesysLogic_USB2.0_Hub /dev/bus/usb/001/052 001 052 port 1-4.4
kernel: usb 1-4.4.2: new full-speed USB device number 53 using xhci_hcd
kernel: input: Corsair Corsair K70R Gaming Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.2/1-4.4.2:1.0/0003:1B1C:1B09.0175/input/input485
kernel: hid-generic 0003:1B1C:1B09.0175: input,hidraw2: USB HID v1.11 Keyboard [Corsair Corsair K70R Gaming Keyboard] on usb-0000:00:14.0-4.4.2/input0
kernel: input: Corsair Corsair K70R Gaming Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.2/1-4.4.2:1.1/0003:1B1C:1B09.0176/input/input486
kernel: hid-generic 0003:1B1C:1B09.0176: input,hidraw3: USB HID v1.11 Device [Corsair Corsair K70R Gaming Keyboard] on usb-0000:00:14.0-4.4.2/input1
kernel: input: Corsair Corsair K70R Gaming Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.2/1-4.4.2:1.2/0003:1B1C:1B09.0177/input/input487
kernel: hid-generic 0003:1B1C:1B09.0177: input,hidraw4: USB HID v1.11 Keyboard [Corsair Corsair K70R Gaming Keyboard] on usb-0000:00:14.0-4.4.2/input2
kernel: usb 1-4.4.3: new full-speed USB device number 54 using xhci_hcd
usb_manager: Info: rc.usb_manager usb_add Corsair_Corsair_K70R_Gaming_Keyboard /dev/bus/usb/001/053 001 053
kernel: input: Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.3/1-4.4.3:1.3/0003:1B1C:0A3E.0178/input/input488
kernel: input: Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.3/1-4.4.3:1.3/0003:1B1C:0A3E.0178/input/input489
kernel: input: Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.3/1-4.4.3:1.3/0003:1B1C:0A3E.0178/input/input490
kernel: hid-generic 0003:1B1C:0A3E.0178: input,hiddev98,hidraw5: USB HID v1.11 Device [Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset] on usb-0000:00:14.0-4.4.3/input3
kernel: hid-generic 0003:1B1C:0A3E.0179: hiddev99,hidraw6: USB HID v1.11 Device [Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset] on usb-0000:00:14.0-4.4.3/input4
kernel: usb 1-4.4.4: new full-speed USB device number 55 using xhci_hcd
usb_manager: Info: rc.usb_manager usb_add Corsair_CORSAIR_VIRTUOSO_SE_Wireless_Gaming_Headset_16addd87000400da /dev/bus/usb/001/054 001 054
kernel: input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.0/0003:046D:C539.017A/input/input491
kernel: hid-generic 0003:046D:C539.017A: input,hidraw7: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-4.4.4/input0
kernel: input: Logitech USB Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.1/0003:046D:C539.017B/input/input492
kernel: input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.1/0003:046D:C539.017B/input/input493
kernel: input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.1/0003:046D:C539.017B/input/input494
kernel: hid-generic 0003:046D:C539.017B: input,hiddev100,hidraw8: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-4.4.4/input1
kernel: hid-generic 0003:046D:C539.017C: hiddev101,hidraw9: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4.4.4/input2
usb_manager: Info: rc.usb_manager Autoconnect Parent 1-4.4
usb_manager: Info: rc.usb_manager Autoconnect No Mapping found Corsair_Corsair_K70R_Gaming_Keyboard /dev/bus/usb/001/053 001 053 port 1-4.4.2
usb_manager: Info: rc.usb_manager Autoconnect Parent 1-4.4
usb_manager: Info: rc.usb_manager Autoconnect No Mapping found Corsair_CORSAIR_VIRTUOSO_SE_Wireless_Gaming_Headset_16addd87000400da /dev/bus/usb/001/054 001 054 port 1-4.4.3
usb_manager: Info: rc.usb_manager usb_add Logitech_USB_Receiver /dev/bus/usb/001/055 001 055
usb_manager: Info: rc.usb_manager Autoconnect Parent 1-4.4
usb_manager: Info: rc.usb_manager Autoconnect No Mapping found Logitech_USB_Receiver /dev/bus/usb/001/055 001 055 port 1-4.4.4

 

Notice how usb_manager tries to map things as soon as they're detected. 

 

Now, I created a rule for the hub 1-4.4 so it attaches to the VM on plug and vm start. This is the log for the transition when I press the button (reconnection):

kernel: usb 2-7: new SuperSpeed USB device number 44 using xhci_hcd
kernel: hub 2-7:1.0: USB hub found
kernel: hub 2-7:1.0: 4 ports detected
kernel: usb 1-4.4: new high-speed USB device number 70 using xhci_hcd
kernel: hub 1-4.4:1.0: USB hub found
kernel: hub 1-4.4:1.0: 4 ports detected
usb_manager: Info: rc.usb_manager usb_add GenesysLogic_USB3.1_Hub /dev/bus/usb/002/044 002 044
usb_manager: Info: rc.usb_manager Autoconnect No Mapping found GenesysLogic_USB3.1_Hub /dev/bus/usb/002/044 002 044 port 2-7
usb_manager: Info: rc.usb_manager usb_add GenesysLogic_USB2.0_Hub /dev/bus/usb/001/070 001 070
usb_manager: Info: rc.usb_manager Autoconnect No Mapping found GenesysLogic_USB2.0_Hub /dev/bus/usb/001/070 001 070 port 1-4.4
kernel: usb 1-4.4.2: new full-speed USB device number 71 using xhci_hcd
kernel: input: Corsair Corsair K70R Gaming Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.2/1-4.4.2:1.0/0003:1B1C:1B09.01A3/input/input546
kernel: hid-generic 0003:1B1C:1B09.01A3: input,hidraw2: USB HID v1.11 Keyboard [Corsair Corsair K70R Gaming Keyboard] on usb-0000:00:14.0-4.4.2/input0
kernel: input: Corsair Corsair K70R Gaming Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.2/1-4.4.2:1.1/0003:1B1C:1B09.01A4/input/input547
kernel: hid-generic 0003:1B1C:1B09.01A4: input,hidraw3: USB HID v1.11 Device [Corsair Corsair K70R Gaming Keyboard] on usb-0000:00:14.0-4.4.2/input1
kernel: input: Corsair Corsair K70R Gaming Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.2/1-4.4.2:1.2/0003:1B1C:1B09.01A5/input/input548
kernel: hid-generic 0003:1B1C:1B09.01A5: input,hidraw4: USB HID v1.11 Keyboard [Corsair Corsair K70R Gaming Keyboard] on usb-0000:00:14.0-4.4.2/input2
kernel: usb 1-4.4.3: new full-speed USB device number 72 using xhci_hcd
usb_manager: Info: rc.usb_manager usb_add Corsair_Corsair_K70R_Gaming_Keyboard /dev/bus/usb/001/071 001 071
kernel: input: Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.3/1-4.4.3:1.3/0003:1B1C:0A3E.01A6/input/input549
kernel: input: Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.3/1-4.4.3:1.3/0003:1B1C:0A3E.01A6/input/input550
kernel: input: Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.3/1-4.4.3:1.3/0003:1B1C:0A3E.01A6/input/input551
kernel: hid-generic 0003:1B1C:0A3E.01A6: input,hiddev98,hidraw5: USB HID v1.11 Device [Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset] on usb-0000:00:14.0-4.4.3/input3
kernel: hid-generic 0003:1B1C:0A3E.01A7: hiddev99,hidraw6: USB HID v1.11 Device [Corsair CORSAIR VIRTUOSO SE Wireless Gaming Headset] on usb-0000:00:14.0-4.4.3/input4
kernel: usb 1-4.4.4: new full-speed USB device number 73 using xhci_hcd
usb_manager: Info: rc.usb_manager usb_add Corsair_CORSAIR_VIRTUOSO_SE_Wireless_Gaming_Headset_16addd87000400da /dev/bus/usb/001/072 001 072
kernel: input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.0/0003:046D:C539.01A8/input/input552
kernel: hid-generic 0003:046D:C539.01A8: input,hidraw7: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-4.4.4/input0
kernel: input: Logitech USB Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.1/0003:046D:C539.01A9/input/input553
kernel: input: Logitech USB Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.1/0003:046D:C539.01A9/input/input554
kernel: input: Logitech USB Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4.4/1-4.4.4/1-4.4.4:1.1/0003:046D:C539.01A9/input/input555
kernel: hid-generic 0003:046D:C539.01A9: input,hiddev100,hidraw8: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-4.4.4/input1
kernel: hid-generic 0003:046D:C539.01AA: hiddev101,hidraw9: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4.4.4/input2
usb_manager: Info: rc.usb_manager Autoconnect Parent 1-4.4
usb_manager: Info: rc.usb_manager Autoconnect Parent vm state:running Corsair_Corsair_K70R_Gaming_Keyboard running 001 071 port 1-4.4.2
usb_manager: Info: rc.usb_manager Autoconnect Parent 1-4.4
usb_manager: Info: rc.usb_manager Autoconnect Parent vm state:running Corsair_CORSAIR_VIRTUOSO_SE_Wireless_Gaming_Headset_16addd87000400da running 001 072 port 1-4.4.3
acpid: input device has been disconnected, fd 13
acpid: input device has been disconnected, fd 14
usb_manager: Info: rc.usb_manager usb_add Logitech_USB_Receiver /dev/bus/usb/001/073 001 073
usb_manager: usb_manager virsh called KnF 1 71 Device attached successfully  
usb_manager: usb_manager virsh called KnF 1 72 error: Failed to attach device from /tmp/libvirthotplugusbbybusKnF.xml error: Requested operation is not valid: USB device 001:072 is in use by driver QEMU, domain KnF  
usb_manager: Info: rc.usb_manager Autoconnect Parent 1-4.4
usb_manager: Info: rc.usb_manager Autoconnect Parent vm state:running Logitech_USB_Receiver running 001 073 port 1-4.4.4
acpid: input device has been disconnected, fd 15
acpid: input device has been disconnected, fd 16
acpid: input device has been disconnected, fd 17
usb_manager: usb_manager virsh called KnF 1 73 Device attached successfully  

 

As you can see, there's 3 usb devices (71, 72 and 73) two of them attach successfully and there's one that fails to attach (the headset). Problem is that even though 71 (keyboard) attached successfully it doesn't work. When the keyboard works it shows in the device manager (inside the VM) as 3 "HID Keyboards"

connected.png.d87bbbcf2823124d66e26102e5560294.png

 

and when it doesn't it only shows up once. 

disconnected.png.636494e377189f983bfc10ccb8e35608.png

 

If I disconnect the keyboard from the switch and re-connect it, it works perfectly again....

 

What I think it's happening is that when the /tmp/libvirthotplugusbbybusKnF.xml file is being generated and passed to virsh it's too soon and there might be a race condition that's causing the issue. I'm gonna try to edit the files of the plugin and add a little delay to the execution of the virsh command. Maybe that's all it needs. I'll report back.

Edited by KnF
Link to comment

Well.. that was quick. 

 

I added the sleep(1); and everything messed up. Then I changed the $filename to include the $usbdev so it wouldn't collide with the same file that was being generated by the other USB devices and it worked flawlessly. No more errors!! 🥳

$filename = '/tmp/libvirthotplugusbbybus'.$vmname.'-'. $usbdev .'.xml';

 

Link to comment
Posted (edited)
5 hours ago, KnF said:

Well.. that was quick. 

 

I added the sleep(1); and everything messed up. Then I changed the $filename to include the $usbdev so it wouldn't collide with the same file that was being generated by the other USB devices and it worked flawlessly. No more errors!! 🥳

$filename = '/tmp/libvirthotplugusbbybus'.$vmname.'-'. $usbdev .'.xml';

 

Thanks for the PR and working through the issue. I thought I had change the file name in V2 but i didn't.

Edited by SimonF
Link to comment
13 hours ago, KnF said:

Well.. that was quick. 

 

I added the sleep(1); and everything messed up. Then I changed the $filename to include the $usbdev so it wouldn't collide with the same file that was being generated by the other USB devices and it worked flawlessly. No more errors!! 🥳

$filename = '/tmp/libvirthotplugusbbybus'.$vmname.'-'. $usbdev .'.xml';

 

Fixed in 2022.05.20 Thanks for the PR

  • Like 1
Link to comment
  • 4 weeks later...

Updating my system to Unraid 6.10.3 causes the USB devices to disappear from the VM they're attached to. In my case this is /dev/ttyUSB1 and /dev/ttyUSB2 under Home Assistant OS with a Zooz Z-Wave controller and Sonoff Zigbee Controller that share the same Silicon Labs VID/PID.

 

Reverting to 10.6.2 immediately fixed the issue.

Link to comment
Posted (edited)
5 hours ago, Espressomatic said:

Updating my system to Unraid 6.10.3 causes the USB devices to disappear from the VM they're attached to. In my case this is /dev/ttyUSB1 and /dev/ttyUSB2 under Home Assistant OS with a Zooz Z-Wave controller and Sonoff Zigbee Controller that share the same Silicon Labs VID/PID.

 

Reverting to 10.6.2 immediately fixed the issue.

I will take a look, do you have any screen prints or log info?

 

 cat /var/log/syslog | grep usb_manager

 

On my 6.10.3 system seems to be working as expected..

 

Jun 16 06:30:49 Tower usb_manager: Info: rc.usb_manager Building Connected Status
Jun 16 06:31:16 Tower usb_manager: Info: rc.usb_manager Reset Connected Status
Jun 16 06:31:17 Tower usb_manager: Starting usbip config check...
Jun 16 06:39:44 Tower usb_manager: Info: rc.usb_manager  vm_action Ubuntu prepare begin -
Jun 16 06:39:44 Tower usb_manager: Info: rc.usb_manager Autoconnect Port Map Port:3-7.1 0557_2419 vm: Ubuntu 
Jun 16 06:39:44 Tower usb_manager: usb_manager virsh called Ubuntu 3 5 Device attached successfully  
Jun 16 06:39:44 Tower usb_manager: Info: rc.usb_manager Autoconnect Start 0557_2419 vm: Ubuntu 
Jun 16 06:40:13 Tower usb_manager: usb_manager virsh called Ubuntu 3 3 Device attached successfully  

Edited by SimonF
Link to comment
16 hours ago, SimonF said:

I will take a look, do you have any screen prints or log info?

 

 

 

I'll install 6.10.3 again to duplicate the issue to grab any details from the log. I'll attach the output as of right now below.

 

As far as the UI goes, everything looked correct (as it usually does, displaying that the devices were attached).

 

Jun 15 20:23:53 TVHD root: plugin: installing: /boot/config/plugins/usb_managerv2beta.plg
Jun 15 20:23:53 TVHD root: plugin: skipping: /boot/config/plugins/usb_manager/packages/usb_manager-2022.03.26beta3.txz already exists
Jun 15 20:23:53 TVHD root: plugin: running: /boot/config/plugins/usb_manager/packages/usb_manager-2022.03.26beta3.txz
Jun 15 20:23:53 TVHD root: | Installing new package /boot/config/plugins/usb_manager/packages/usb_manager-2022.03.26beta3.txz
Jun 15 20:23:53 TVHD root: Verifying package usb_manager-2022.03.26beta3.txz.
Jun 15 20:23:53 TVHD root: Installing package usb_manager-2022.03.26beta3.txz:
Jun 15 20:23:53 TVHD root: Package usb_manager-2022.03.26beta3.txz installed.
Jun 15 20:23:53 TVHD root: | Skipping package usb_manager-2022.03.26beta3 (already installed)
Jun 15 20:23:53 TVHD root: plugin: creating: /tmp/start_usb_manager - from INLINE content
Jun 15 20:23:53 TVHD root: plugin: setting: /tmp/start_usb_manager - mode to 0770
Jun 15 20:23:53 TVHD root: plugin: skipping: /boot/config/plugins/usb_manager/usb_manager.cfg already exists
Jun 15 20:23:53 TVHD root: plugin: skipping: /boot/config/plugins/usb_manager/remote_usbip.cfg already exists
Jun 15 20:23:53 TVHD root: plugin: skipping: /boot/config/plugins/usb_manager/vm_mappings.cfg already exists
Jun 15 20:23:54 TVHD root:  usb_manager has been installed.
Jun 15 20:23:55 TVHD root: plugin: usb_managerv2beta.plg installed
Jun 15 20:24:00 TVHD usb_manager: Info: rc.usb_manager Building Connected Status
Jun 15 20:24:38 TVHD usb_manager: Info: rc.usb_manager  vm_action Home Assistant prepare begin -
Jun 15 20:24:38 TVHD usb_manager: Info: rc.usb_manager Reset Connected Status
Jun 15 20:24:38 TVHD usb_manager: Info: rc.usb_manager  vm_action HomeBridge prepare begin -
Jun 15 20:24:38 TVHD usb_manager: usb_manager virsh called Home Assistant 2 3 Device attached successfully  
Jun 15 20:24:38 TVHD usb_manager: Info: rc.usb_manager Autoconnect Start 002/003 temp vm: Home Assistant 
Jun 15 20:24:39 TVHD usb_manager: usb_manager virsh called Home Assistant 2 6 Device attached successfully  
Jun 15 20:24:39 TVHD usb_manager: Info: rc.usb_manager Autoconnect Start 002/006 temp vm: Home Assistant 
Jun 15 20:24:39 TVHD usb_manager: usb_manager virsh called Home Assistant 2 4 Device attached successfully  
Jun 15 20:24:39 TVHD usb_manager: Info: rc.usb_manager Autoconnect Start 002/004 temp vm: Home Assistant 
Jun 15 20:24:39 TVHD usb_manager: Starting usbip config check...
Jun 15 20:24:39 TVHD usb_manager: Start usbipd

 

 

Link to comment

Well, puzzling. This time it works.  Last night, after updating to 6.10.3, no amount of restarts of the VM or entire server brought back the missing USB devices to the VM.

 

Today, everything is looking fine right from the initial reboot after update.

 

So false alarm?  I supposed if anyone else comes in here with a similar issue, try reverting the OS and then applying the update again. :)

Edited by Espressomatic
  • Like 1
Link to comment
8 hours ago, Espressomatic said:

Well, puzzling. This time it works.  Last night, after updating to 6.10.3, no amount of restarts of the VM or entire server brought back the missing USB devices to the VM.

 

Today, everything is looking fine right from the initial reboot after update.

 

So false alarm?  I supposed if anyone else comes in here with a similar issue, try reverting the OS and then applying the update again. :)

I notice the usbipd is being started, if you are not using USB over IP you can disable that in the settings. All these options are just for USBIP

 

image.thumb.png.65086ddfc85ee45565e89c6de1f28092.png

Link to comment

Did anyone test the speed/throughput that is achievable with devices such as USB sticks / drives? So far I can't get it to run with decent speeds (I got 500KBps at best for average and problematic delay at the beginning of the transfer). I'm using Unraid and a laptop under gigabit switch in local network. Is it a problem in my config or is this performance to be expected from this protocol?

Link to comment
4 hours ago, Eksitus said:

Did anyone test the speed/throughput that is achievable with devices such as USB sticks / drives? So far I can't get it to run with decent speeds (I got 500KBps at best for average and problematic delay at the beginning of the transfer). I'm using Unraid and a laptop under gigabit switch in local network. Is it a problem in my config or is this performance to be expected from this protocol?

Are you asking about using usbip or attaching USB devices to VMs? 

Link to comment
3 hours ago, SimonF said:

Are you asking about using usbip or attaching USB devices to VMs? 

I'm asking about the scenario where USB stick or other high bandwidth devices are plugged in and exported/bound elsewhere in the local network and then attached to unraid/VMs using USB/IP protocol.

Link to comment
On 6/17/2022 at 3:00 AM, SimonF said:

I notice the usbipd is being started, if you are not using USB over IP you can disable that in the settings. All these options are just for USBIP

 

Weird. I'm not using USBIP and it's disabled as far as I know.

Screen Shot 2022-06-20 at 8.58.14 AM.png

 

Also, if I enable it and then disable it, this warning pops up:

 

460958152_ScreenShot2022-06-20at9_00_46AM.png.2c1b30a3b604a13065a5e2857cef9854.png

 

Doesn't seem right to me that would appear when disabling.

 

Edited by Espressomatic
Link to comment
7 hours ago, Eksitus said:

I'm asking about the scenario where USB stick or other high bandwidth devices are plugged in and exported/bound elsewhere in the local network and then attached to unraid/VMs using USB/IP protocol.

I have done a few tests with USB HD shared and flash drives, HD I got over 400Mb/s, flash about 8Mb write.

 

HD was on one Unraid server, Ubuntu VM on over a different Unraid server.

Screenshot 2022-06-20 121435.png

Screenshot 2022-06-20 121520.png

Link to comment

Hey,

 

Thank you for making / creating this plugin.

 

I just installed it but im trying to figure out what each option means, and it doesn't seem to be noted anywhere:

 

Could anyone explain the following:

 

1. Enable USB Manager Hotplug on VM page:

2. Enable HUB Processing:

3. Enable USBIP:

4. Difference between Edit port Setttings / Port mapping and Device Settings / Device Mapping.

 

 

Thank you all in advance for answering these questions!

Link to comment
2 hours ago, Mirano said:

Enable USB Manager Hotplug on VM page:

This enables option to hotplug on the VM Page.

 

 

image.thumb.png.079542716c2ebd24126c12cac784a53e.png

 

2 hours ago, Mirano said:

Enable HUB Processing:

You can set a port mapping for USB Hubs and with this enabled it will process all the device attached to that HUB.

 

image.thumb.png.32f62f06c340c7458499e80fa837c151.png

 

image.thumb.png.d82312a441fce32ee4c4625d32bd2fe4.png

 

2 hours ago, Mirano said:

Enable USBIP:

This will enabled USB over IP functions. i.e. sharing USB devices between computers.

 

2 hours ago, Mirano said:

Difference between Edit port Setttings / Port mapping and Device Settings / Device Mapping.

Device mappings will map a specific device no matter where it is connected to a VM.

 

Port mapping will only map USB devices in a specific USB port. Device takes priority over port.

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.