Skip to content

Windows software for sharing locally connected USB devices to other machines, including Hyper-V guests and WSL 2.

License

Notifications You must be signed in to change notification settings

inmortalbobz/usbipd-win

 
 

Repository files navigation

usbipd-win

Build CodeQL MegaLinter REUSE status codecov

Windows software for sharing locally connected USB devices to other machines, including Hyper-V guests and WSL 2.

How to install

This software requires Microsoft Windows 8.1 x64 / Microsoft Windows Server 2012 or newer; it does not depend on any other software.

Run the installer (.msi) from the latest release on the Windows machine where your USB device is connected.

Alternatively, use the Windows Package Manager:

winget install usbipd

This will install:

  • A service called usbipd (display name: USBIP Device Host).
    You can check the status of this service using the Services app from Windows.
  • A command line tool usbipd.
    The location of this tool will be added to the PATH environment variable.
  • A firewall rule called usbipd to allow all local subnets to connect to the service.
    You can modify this firewall rule to fine tune access control.
    ℹ️
    If you are using a third-party firewall, you may have to reconfigure it to allow incoming connections on TCP port 3240.

How to use

Share Devices

By default devices are not shared with USBIP clients. To lookup and share devices, open a command prompt as an Administrator and use the usbipd tool. For example:

usbipd --help
usbipd list
usbipd bind --busid=<BUSID>

Connecting Devices

From another (possibly virtual) machine running Linux, use usbip to claim the USB device:

usbip list --remote=<HOST>
sudo usbip attach --remote=<HOST> --busid=<BUSID>

A list of tested devices can be found on the wiki. Please file an issue if your device is not working.

WSL 2

You can use the usbipd wsl subcommand to share and connect a device with a single command. For example, open a command prompt:

usbipd wsl --help
usbipd wsl list
usbipd wsl attach --busid=<BUSID>

ℹ️
Currently, WSL 2 does not support USB devices by default.
As a workaround, instructions on how to setup a USBIP client for WSL 2 can be found on the wiki.

Andrew Leech has created a convenient GUI for those who prefer that over a CLI, see his GitLab project.

How to remove

Uninstall via Add/Remove Programs or via Settings/Apps.

Alternatively, use the Windows Package Manager:

winget uninstall usbipd

There should be no left-overs; please file an issue if you do find any.

About

Windows software for sharing locally connected USB devices to other machines, including Hyper-V guests and WSL 2.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • C# 99.0%
  • Other 1.0%