USB devices not accessible in virtual machines on ESXi hosts
search cancel

USB devices not accessible in virtual machines on ESXi hosts

book

Article ID: 398992

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

  • Cannot see the USB drive on VMs after mounting the USB hub while in vSphere.
  • A USB stick is plugged in to the Host server.
  • Windows Device Manager does not show errored.
  • Windows Explorer does not show the USB drive.

 

Environment

Seen in:

  • ESXi 7.0 and later versions with USB passthrough capability enabled
  • Virtual machines running Windows and Linux guest operating systems
  • vSphere Client used for VM configuration and management
  • Physical servers with USB ports and BIOS/UEFI USB support enabled

Cause

Virtual machines require both a USB controller and USB passthrough device configuration to access physical USB devices connected to the ESXi host. When these hardware components are not configured in the VM settings, the guest operating system cannot establish communication with the physical USB devices, even though the ESXi host successfully detects and enables them for passthrough.

Resolution

  1. Power off the virtual machine that requires USB device access.

  2. In the vSphere Client, right-click the virtual machine and select Edit Settings.

  3. Click ADD NEW DEVICE and select USB Controller from the dropdown menu.

  4. Configure the USB controller type:

    • Select USB 3.1 for modern USB 3.0+ devices and optimal performance
    • Select USB 2.0 if using older USB hardware or experiencing compatibility issues
  5. Click ADD NEW DEVICE again and select Host USB Device from the dropdown menu.

  6. From the Host USB Device dropdown, select the specific USB device you want to pass through to the virtual machine.

  7. Click OK to save the configuration changes.

  8. Power on the virtual machine.

  9. Verify the USB device appears in the guest operating system (Windows Explorer, Device Manager, or equivalent for Linux).

Troubleshooting USB Controller Compatibility:

If the USB device is not recognized or functions incorrectly after configuration:

  1. Power off the virtual machine.
  2. Remove the existing USB controller from the VM settings.
  3. Remove the USB passthrough device assignment.
  4. Add a USB 2.0 controller instead of USB 3.1.
  5. Re-add the Host USB Device assignment.
  6. Power on the virtual machine and verify functionality.

Additional Information

ESXi USB Device Detection:

Use these commands to verify USB device status on the ESXi host:

  • Check USB device detection: lsusb
  • Verify USB passthrough capability: esxcli hardware usb passthrough device list
  • Check USB controller hardware: lspci | grep -i usb

BIOS/UEFI Configuration:

If USB devices are not detected by the ESXi host, verify that USB support is enabled in the server's BIOS or UEFI settings. Look for options such as "USB Controller," "Legacy USB Support," or "USB Passthrough" and ensure they are enabled.

USB Controller Selection Guidelines:

  • USB 3.1 Controller: Recommended for USB 3.0+ devices and modern guest operating systems
  • USB 2.0 Controller: Use for older USB hardware, legacy guest operating systems, or when experiencing compatibility issues with USB 3.1

Multiple USB Device Support:

Each virtual machine can have multiple USB passthrough devices configured. Add additional Host USB Device entries following the same procedure for each physical USB device you want to access from the virtual machine.

Guest Operating System Compatibility:

This configuration works with Windows and Linux guest operating systems. Some older guest operating systems may require additional USB drivers after the USB controller is added to the virtual machine.

For more information, see Add USB Devices from an ESXi Host to a Virtual Machine and USB Configuration from a Client Computer to a Virtual Machine in the VMware vSphere documentation.