VMware Cloud Community
HenrikSigfrid
Contributor
Contributor

Passthrough USB HUB to guest

I see vmware do not support passthrough of hub or hid devices. I need to get an external USB hub connect to motherboard usb-port to be passed through to a guest so that I can control the ports which are software controllable. The hub is registering as a hub if I do LSUSB on the host I recently found you can allow HIDs to be passed through with VMX option usb.generic.allowhid does something similliar exist for hubs?

0 Kudos
4 Replies
dariusd
VMware Employee
VMware Employee

I don't believe it is possible to pass through a USB hub.  I had a discussion about this with some of the engineers on the USB team a few years ago, and they said at that time that no host operating system provided the necessary functionality for passing through a USB hub to a virtual machine.  I'm fairly sure the same is still true today.

Be careful with usb.generic.allowHID... if you pass through your host's keyboard or mouse, you might find yourself "stuck" in the virtual machine with no way to escape back to the host.

--

Darius

0 Kudos
HenrikSigfrid
Contributor
Contributor

But this being ESXi there is no host OS to take care of. But I guess the answer is this same?

With the allowHID there is n9 real threat since ESXI is remote managed.

0 Kudos
dariusd
VMware Employee
VMware Employee

Hah!  I'm so used to seeing this question in the Workstation and Fusion forums that I answered on auto-pilot.  Sorry!

You're right that there's no real risk of locking yourself out of a remote-managed ESXi instance.  In theory it might be possible to lock yourself out of the console until you attach a different keyboard to the host, but that sounds like it is unlikely to be a real concern.

I don't think the situation is any different for USB hubs on ESXi, though... As far as I am aware, it remains unsupported.

Cheers,

--

Darius

0 Kudos
srwsol
Hot Shot
Hot Shot

The passthrough functionality operates at the PCI device level, which would require that the USB controller on the motherboard be passed through to the VM.  Unfortunately if you passthrough the USB controller on the motherboard to the VM you will likely lose all console access to ESXi.  I've found through experimentation that even if there are multiple USB controllers on the motherboard they don't often work well when setup for PCI pass through.  If you must have that particular USB hub under direct control of a VM for some reason the best way I can think of to do it is to purchase an additional USB PCI card and install it in a PCI slot.  You can then pass through just that PCI device to the VM and connect the hub to the USB port of that card.  In that setup the VM will have full access to and control over the hub.

0 Kudos