Electronic Team uses cookies to personalize your experience on our website. By continuing to use this site, you agree to our cookie policy. Click here to learn more.

The Most Detailed VirtualBox USB Passthrough Tutorial

Editorial Team Editorial Team
Aug 17, 2023

Working with USB devices on VirtualBox can be frustrating, as you can run into connectivity issues. You can solve this problem by implementing the VirtualBox USB passthrough feature on your system. You can easily access the USB in a virtual machine, which is connected to your host OS.

This guide is designed to show you how to enable this feature so you can use USB devices as if they were directly connected to your VirtualBox environment. Also in this guide, you will find the software solution tutorial if you don’t want to make a deal with VirtualBox settings. Try VirtualBox USB passthrough right now by clicking the button below.

14-day Free Trial available
License price starts at $159.95
Available for
VirtualBox iPhone redirection

VirtualBox USB passthrough with Extension Pack

The VirtualBox extension pack needs to be installed to allow VirtualBox passthrough of USB devices. The extension pack is an optional package that provides additional functionality to a VirtualBox environment. With the extension pack installed, USB 2.0/3.0 support is provided, letting users access USB devices from within the VirtualBox environment.

Ensure that you are running the most current version of VirtualBox and that all drivers are updated to eliminate compatibility issues when installing the extension pack. Use the following steps to install the VirtualBox extension pack.

VirtualBox extension pack
  1. Open VirtualBox and click the Help menu. Select the About VirtualBox option and make note of the version of Virtual Box you are running. This information is essential, as you need to make sure you are using the compatible extension pack for the VBox version you are running. Using an incompatible extension pack may result in errors or abnormal behavior and VirtualBox USB passthrough not working correctly.

  2. Open your preferred web browser and go to the Oracle download page.

  3. Locate the download link for your version of VirtualBox and save the extension pack to your machine.

  4. Close all guest VirtualBox virtual machines to avoid interference during the installation process.

  5. Click File > Tools > Extension Pack Manager. The main window will be redirected to the Extension Pack Manager.

  6. Click Install in the Extension Package Manager and find the extension pack you previously downloaded. Accept the User Agreement and click Install in the message box.

  7. Restart VirtualBox after the extension pack is installed so the changes can be implemented.

Using Command Line to Install the Extension Pack on Mac


Please, install the latest versions of both vBox and Extension Pack, then reboot your machine.

Mac vboxusers dealing with vBox kernel drive failures can usually fix the problem using the provided instructions. However, please note they are specific to modern/recent macOS versions such as Mojave, Catalina, and Big Sur.

Here is the method that allows Mac users to install Extension Packs using the vboxmanage command line. This can be done manually or via cask.

After downloading the Extension Pack open the Terminal and run the command shown below:

sudo vboxmanage extpack uninstall ~/Downloads/Oracle_VM_VirtualBox_Extension_Pack-6.1.10.vbox-extpack

How to Enable USB on VirtualBox

The USB section of VirtualBox’s Settings window is where you can configure the platform’s extensive USB support. With proper configuration, Oracle VM VirtualBox can directly access USB devices attached to the host from within a virtual environment. This is accomplished through the use of a virtual USB controller presented to the operating system. When the guest VM begins using a USB device, it becomes unavailable to the host machine.

Note:

  • Care must be taken with USB devices currently being used by the host system. For instance, if a USB hard drive is mounted and accessed by the host system, connecting the guest VM will immediately disconnect the device without properly shutting it down. This may lead to data loss.
  • Oracle Solaris hosts may be impacted by known limitations regarding USB support.

Select "Enable USB Controller" check box to allow USB passthrough in a VirtualBox VM. The following settings are available and should be selected based on the USB device you will be accessing through VBox.

USB Controller: Select the controller that provides the necessary level of USB support for your device.

  • OHCI for USB 1.1
  • EHCI for USB 2.0 which also enables the OHCI controller.
  • xHCI for USB 3.0. This option supports all USB speeds.

Note:You need to obtain and install a VirtualBox extension package to enable the EHCI and xHCI controllers. More information is available in Section 1.5, “Installing Oracle VM VirtualBox and Extension Packs”.

  • USB Device Filters: You can define the devices that will be automatically attached to a guest VM when USB support is enabled. Accomplishing this is done by creating filters that specify the properties of the USB devices you want to attach. USB devices that match the filter will be automatically passed to the guest VM when they are attached to the local host. Devices that do not match the filter can also be passed to the guest manually using the Devices > USB menu.

    • ✦ You can create a new filter by clicking the + button to the right of the USB Device Filters window. The filter can be named for easier identification. Specifying more criteria allows you to precisely select the devices that can be used by the VM. You can specify any or all of the following criteria for filtering USB devices.

    • Vendor and Product ID. Each USB vendor has a unique identification number known as its vendor ID. All USB product lines are also assigned a product ID number. These numbers are typically written on the device in hexadecimal with a colon separating the two numbers.

    • ✦ You can specify the USB Manufacturer and Product by name in your filter. The following command displays all USB devices attached to the host along with their vendor and product IDs:

VBoxManage list usbhost.

  • USB devices attached to Windows systems can be displayed in Device Manager. On Linux, the lsusb command lists the devices.
  • Serial Number. You can include the serial number in the filter which may be necessary if you have multiple identical devices attached to the host.
  • Remote. Use this setting to specify if the device is local, remote, or either.

Enabling VirtualBox USB passthrough on a Windows computer requires you to unplug the device and reconnect it after the filter has been created.

Filters enable you to control which devices are automatically made available to VirtualBox VMs. Multiple filters can specify the same device. A filter can be defined and then deactivated by unchecking the check box next to its name. It can then be enabled again when desired.

Remote USB Passthrough in VirtualBox

Oracle VM VirtualBox provides the VirtualBox Remote Desktop Extension (VRDE) to enable guest VMs to connect to remote USB devices.

VirtualBox also supports remote devices over the network via the VirtualBox Remote Desktop Protocol (VDRP). A VirtualBox VM guest can access USB devices on a remote computer accessed with VRDP as if they were directly connected to the local host. This allows the creation of an Oracle VM VirtualBox host that enables a client to connect from any machine with a network adapter that can run an RDP viewer. The remote Oracle VM VirtualBox server can access devices connected to the client.

When setting up filters for remote devices, you must specify either Remote or Any when configuring the settings.

Remote USB devices can only be accessed if the extension is supported by the RDP client being used. VirtualBox provides an RDP client for Linux and Oracle Solaris hosts called rdesktop-vrdp. The RDP client can be started with the following command:

rdesktop-vrdp -r usb -a 16 -N my.host.address

You may also be able to use uttsc if you are using a Sun Raytheon client to access remote USB devices. Oracle plans to provide RDP clients for other platforms in future versions of the virtualization platform.

It is recommended that you disable the automatic loading of host drivers on the remote host. Failure to disable this procedure may impact the accessibility of the devices by the RDP client. The VMs VBox.log file will track plug and unplug events when VirtualBox USB device passthrough is set up correctly.

You can set up vBox access to USB peripherals with just three steps:

1
Download USB Network Gate to any folder you like and install it on the computer to which the USB device you want to share is attached.
 install usb network gate
2
Use USB Network Gate’s interface to share the device.
 Switch to 'Share USB devices tab' and select USB device (Windows version)
3
Now, install the software on the virtual machine which needs access to the device and use its intuitive GUI to mount the shared device on your vBox VM.
 Share USB device (Windows version)

Video Guide:

 video guide

USB Network Gate offers a true cross-platform solution that can be used in mixed environments, including vBox USB Windows 10 support. With its help, you can easily redirect your iPhone to all operating systems, including Linux (Ubuntu), Mac, and any Windows except for Win XP, even without any drivers installed on the client side. And don’t forget to enable traffic encryption to make sure no one will use an unprotected ESXI connection for unauthorized access to your VMDK files.

May occur the problem on machines where VirtualBox is installed. After plugging a USB device into a USB port of the computer or after sharing/unsharing a USB device with USB Network Gate, VBoxUSBMon.sys driver may crash causing BSOD.

To fix this issue, you can stop VBoxUSBMon.sys driver or use another virtual machine instead of VirtualBox.


A note for Linux users: there is a handy lsusb utility you can check all the data on your local machine’s USB buses and the devices with. It is very important for users to have a Linux kernel that supports the dev bus USB interface to know how to put lsusb to good use. Also, you need to be in the vboxusers group for any of this to work.


FAQ

The most common error messages to pop up are related to compatibility. Here are the two main reasons that cause the issues:

1. You have an outdated vBox version.

2. The Extension Pack version is out-of-date or not compatible with the vBox software version being used.
When you installed and enabled Extention Pack for VirtualBox USB passthrough you will have the ability to work with your device. You may set up filters with manufacturer and product ID, serial number, etc. to access only those USB devices which match to filters.
USB Network Gate
Redirect USB devices over network
14-day Free Trial available
License price starts at $159.95
Available for