VMWare supports multiple ways to pass through an USB device to a virtual machine;
- USB Pass through, this connects the virtual machine to an USB device
- VMDirectPath, this connects the whole USB Bus to your virtual machine (also called PCI Passthrough)
Both methods are easy to configure and there are plenty of tutorials and howto’s to find on the Internet. Also both ways have there pros and cons. In my particuler case I had to pass through an USB Tuner card, which wasn’t fully functional with the first method, so I had to use the second method.With the second method there is however one caveat, if you run ESX like me from an USB stick, you have to make sure you don’t pass through that particuler USB Bus, cause it will give you a lot of troubles without even noticing it at first sight. (see a previous post of mine).
So if you have, just like me two USB bus devices (Intel DM57Q), you need to pick the right one to pass through. First find the devices in the VMWare passthrough configuration.
Notice the ID, in this example I have two USB Bus devices.
Now I have to find out on which of these devices the ESXI USB Boot stick is connected. Connect to your ESX server with SSH (make sure this is enabled) and run the commando.
lsusb -v | grep -e Bus -e iSerial
In this output you can easily see on which bus number USB devices are connected. As you can see, the SanDisk which hold my ESX installation is connected on Bus 02 and if we look at the last two lines, we can see that the USB root hub of Bus 02 is connected to 00:1d.0, so we definitely don’t pass this one through
A small notice, if I pass through the other USB controller, all the devices on USB Bus 01 are passed through to the virtual machine which gets access to the passed through controller, like the;
- 1c73 – Anysee tuner
- 0403 – USB Serial reader
- 2040 – Hauppage tuner