Many VirtualBox users receive error messages when using USB devices in the platform like:
These problems typically happen due to misconfiguration in VirtualBox or when the host system interferes with the USB passthrough. It is also possible that the USB subsystem fails completely, so relevant problems like "VirtualBox can't enumerate USB devices" arise.
Read on to discover effective fixes when VirtualBox can’t attach USB device.
Pro Tip: Follow these measures to successfully use USB in VirtualBox
• Install the
VirtualBox Extension Pack that matches your current version.
• Use USB 2.0 (EHCI) instead of USB 3.0 on macOS and some Linux distros.
• Add a blank USB filter to help VirtualBox detect any USB device.
• Ensure that the host operating system is not using the USB via File Explorer or other applications.
• To avoid host inference, launch the VM first, then plug the USB.
When the VirtualBox USB passthrough goes awry, different frustrating problems can arise. For instance, the system might not detect the device, errors might appear on boot, or the host might lock the USB.
To avoid these troubles, we discuss the correct steps applicable for different operating systems to configure a VM for seamless USB usage.
Follow the methods below to establish a real-time and seamless connection between VirtualBox on Windows and a USB device.
Step 1: Install the VirtualBox Extension Pack
This pack is a prerequisite for access to USB 2.0 or USB 3.0 devices via VirtualBox. Do the steps below:
Step 2: Enable USB Controller
With a USB controller, VirtualBox will have a “slot” for the attachment of the USB device. To enable this feature, simply do the following:
Step 3: Eject USB from Host Operating System
A VM gains full control of the USB device if the host OS has no claim on it. Otherwise, you can eject the USB from the system tray before attaching it to the VM via Devices → USB.
Step 4: Install Guest Additions
A missing integration driver might be a reason why VirtualBox failed to attach the USB because of potential blocking in device recognition. To fix this:
VirtualBox USB passthrough is a bit more complex on Linux Systems because permissions, kernel modules, and group memberships are essential to its operation in this OS. Read on and discover ways to make USB work flawlessly on Linux machines.
Step 1: Add Your User to vboxusers Group
The user account will gain USB access permission upon performing this step. To do this, input this command:
sudo usermod -aG vboxusers $USER
Then, log out and back in.
Step 2: Install Support Tools or Extension Pack
If your Linux system has no required kernel modules installed, you might need to install them manually. The fix command is:
sudo apt install virtualbox-ext-pack virtualbox-dkms
Step 3: Switch to xHCI (USB 3.0) Controller
USB 3.0 devices are usually incompatible with older EHCI (USB 2.0) controllers. To fix this, switch to the updated xHCI (USB 3.0) Controller in VirtualBox.
Launch the VM → Settings → USB → Choose USB 3.0 (xHCI).
Step 4: Remove and Reconnect the USB Device
Let the VM access the USB by dismounting the device from the Linux system. This will unlock the USB and make it accessible to the VM.
Enter this command to fix it and attach it via VirtualBox’s menu.
sudo umount /dev/sdX
If a VirtualBox mac failed to attach USB device, it is usually due to misconfiguration or issues with security and device permissions. This section provides solutions for successful USB passthrough and overcome connection barriers.
Step 1: Grant Full Disk Access to VirtualBox
You need to explicitly allow hardware access so MacOS can freely access the USB device. To resolve this, go to “System Preferences,” open “Security & Privacy,” choose “Full Disk Access,” and add VirtualBox.
Step 2: Plug in USB After VM Boot
If the macOS locks the USB device, try starting the virtual machine first before inserting the USB. Go to Devices → USB to plug the USB into the VM booting.
Step 3: Use USB 2.0 Instead of 3.0
Many macOS users reported compatibility issues with USB 3.0, so we suggest shifting to USB 2.0 as a possible remedy.
The fix is simple. Switch the controller to USB 2.0 (EHCI) in the VM settings.
If you receive a specific error message about a “VirtualBox failed to attach the USB” issue, it is usually easy to resolve. In this section, we’ll help you understand these error messages so you can apply immediate fixes and save hours of frustration.
This error message usually happens when the USB controller is disabled, or there’s a driver or registry issue that blocks access. To resolve this, enable USB 2.0/3.0 in the VM settings or reinstall your VirtualBox Extension Pack.
You may also fix Windows Registry with this command:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\
{36FC9E60-C465-11CF-8056-444553540000}
You may also delete UpperFilters
and LowerFilters
or reinstall USB drivers from:
C:\Program Files\Oracle\VirtualBox\drivers\USB
Simply follow these steps to resolve:
One reason why VirtualBox can’t enumerate USB devices is that the USB might be still accessible with the host machine.
To solve this problem, eject the device from the host before VM boot. Then, reboot the host and use a different USB port. You can also disable host-side auto-mounting.
This means that Windows background applications such as file managers or sync services still use the USB device.
These are the steps for resolution:
Fret not next time you encounter USB errors in VirtualBox. Yes, these problems are common, but they are easily fixable. Many of these issues stem from missing permissions, host conflicts, or misconfigured settings. But with the proper controller, extension Pack, and a few tweaks on the OS, you can get VirtualBox USB passthrough working smoothly.