• Stars
    star
    3,003
  • Rank 14,399 (Top 0.3 %)
  • Language
    C#
  • License
    GNU General Publi...
  • Created over 3 years ago
  • Updated 21 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

usbipd-win

Build CodeQL MegaLinter REUSE status codecov GitHub all releases

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>

ℹ️
Instructions on how to prepare WSL 2 for USBIP can be found on the wiki.

GUI

For those who prefer a GUI over a CLI, the following is available:

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.