Windows – VirtualBox USB capture issue (Windows 7 Host/Guest)

usbvirtual machinevirtualboxwindows 7

In the past, I've used to use the USB capture option in VirtualBox frequently due to using some software that used a USB dongle for licensing. I have a new laptop (same OS as my old machine – Windows 7) and cannot get USB capture to work for any device.

I'm troubleshooting with a regular USB thumb drive. VirtualBox actually claims to have captured the device, but the guest OS (also Windows 7) does not recognize it. Additionally, the VirtualBox Devices -> USB menu does not show a checkbox beside the supposedly captured device. It's not visible in the host OS, so it is at least partially working.

I've updated to v.5.1.8, installed the Extension Pack / Guest Additions, and also tried creating a USB filter for the device (in the past I could just select it from the Devices -> USB menu to capture/release it as needed), but nothing has resolved the issue.

One final detail – there is no way to release the captured (but invisible) device from the VM. Clicking on it in the Devices -> USB menu opens an error dialog saying the device "is busy with a previous request. Please try again later."

More info:
I've also discovered that VirtualBox continues to claim the device is captured even after the device has been removed from the host computer and the VM rebooted. It appears that the only way to clear it is to reboot the host.

Best Answer

The solution (in this case) was found on this VirtualBox Forums post. There is also a slightly expanded version of the same steps on this reply to that post. The issue was identified as early as 2009 VirtualBox Defect #5343.

The steps are as follows:

  1. Edit your registry

    • Open the Windows registry, by clicking on Start > Run and typing regedit
    • Navigate to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class{36FC9E60-C465-11CF-8056-444553540000}
    • In the right hand panel, if the UpperFilters entry exists, delete it
  2. Install the VirtualBox USB driver manually

    • Go to folder C:\Program Files\Oracle\VirtualBox\drivers\USB\filter
    • Right-click on VboxUSBMon.inf
    • Click Install
  3. Reboot the host computer

  4. Unplug your USB device (I did this before the reboot)

  5. Open VirtualBox and Close it (to remove the USB device from the VM's captured list)

  6. Plug your USB device

  7. Open VirtualBox and Run Virtual Machine.

  8. Right click on the VM status bar USB icon and select the USB device you want to attach to the VM (or select it from the Devices > USB list)


The VirtualBox forum post also included a warning about not attaching a USB device connected to a USB bridge without first capturing the USB bridge. I have successfully used devices connected via an external USB hub without capturing any other devices, but be aware that could be an issue.