Skip to content

Tested Devices

Frans van Dorsselaer edited this page Feb 13, 2024 · 19 revisions
Device ID Description USB version Result Reason
0403:6001 Argolis Smartreader (FTDI) 1.1 ✔️
0483:374b STMicroelectronics ST-LINK/V2.1 1.1 / 2.0 ✔️
050d:0012 Belkin F8T012 Bluetooth Adapter 2.0 ✔️
0529:0620 SafeNet Aladdin Token 2.0 ✔️
0718:0081 Imation Flash Drive 2.0 ✔️
0781:5530 SanDisk Cruzer 1.1 / 2.0 ✔️
0781:5581 SanDisk Ultra 3.0 #659 Device works running in debug mode
0781:5583 SanDisk Ultra Fit 3.1 #167 Device may work with a USB2 port
0781:5588 SanDisk Corp. USB Extreme Pro 3.0 / 3.1 ✔️
0781:5591 SanDisk Ultra Flair 3.0 #659 Device works running in debug mode
#167 Device reported to work with a USB2 port
090c:1000 Samsung Flash Drive FIT 3.0 ✔️
0951:1666 Kingston DataTraveler 100 3.0 / 3.1 ✔️
0c45:6366 Microdia USB Camera 2.0 ✔️
1050:0407 Yubikey 5 2.0 ✔️
10c4:ea60 Silicon Labs CP210x UART Bridge 1.1 ✔️ WSL: Driver present in kernel 5.10.102.1
14cd:1212 CanaKit MicroSD Card Reader 1.1 / 2.0 ✔️
1845:0104 Unknown Brand Flash Drive 2.0 ✔️
1915:7777 Nordic Semiconductor ASA Crazyradio PA USB Dongle 1.1 ✔️
1b1c:1a04 Corsair Survivor 3.0 3.0 ✔️
1bcf:28a6 DELL XPS Integrated Webcam 2.0 ✔️
20a0:42b2 Nitrokey 3 ✔️
2207:0006 Rockchip RV1126 2.0 ✔️ For ADB mode see https://github.com/dorssel/usbipd-win/issues/807#issuecomment-1870912937
2e04:c025 HMD Global Nokia 9 PureView 2.0 ✔️
2e8a:0005 Pimoroni pico lipo MicroPython Board in FS mode 1.1 / 2.0 ✔️
f055:9800 MicroPython Pyboard Virtual Comm Port in FS Mode 1.1 / 2.0 ✔️

Device Test Procedure

Preparation

Before testing new devices, please configure your machine and verify your setup with at least one other known good device.

Open a command prompt to your WSL distribution and leave it open throughout this entire procedure; this ensures that WSL and your distribution remain active.

Verify WSL version

From a normal (non-Administrator) Windows prompt, run the following

  • wsl --list --verbose
    Verify that you are running as WSL version 2
  NAME      STATE           VERSION
* Ubuntu    Running         2

Verify device

  • Plug the USB device into a USB port
    Verify that the device is connected and recognized by Windows

Share and attach USB device

From a Windows Elevated prompt (run as Administrator), run the following

  • usbipd list
    Verify that the device is visible and listed as 'Not shared'; note the BUSID
  • usbipd bind --busid <BUSID>
    This allows the device to be attached to a client later
  • usbipd list
    Verify that the device is visible and listed as 'Shared'

From a normal (non-Administrator) Windows prompt, run the following

  • usbipd attach --wsl --busid <BUSID>
    This will attach the device to WSL
  • usbipd list
    Verify that the device is visible, and listed as 'Attached'

Verify USB available in WSL

Below steps are based on Ubuntu, details may vary for other distros.

All USB device types

From the WSL command prompt you opened earlier, run the following

  • lsusb
    Verify that the device is visible
    jos@contoso:/mnt/c/Users/jos$ lsusb
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 001 Device 002: ID f055:9800 MicroPython Pyboard Virtual Comm Port in FS Mode
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    
  • dmesg | tail
    There should be a recent message indicating that the the device has been discovered similar to the example below.
    jos@contoso:/mnt/c/Users/jos$ dmesg | tail
    [ 2401.168835] vhci_hcd: vhci_device speed not set
    [ 2401.238829] usb 1-1: new full-speed USB device number 2 using vhci_hcd
    [ 2401.318859] vhci_hcd: vhci_device speed not set 
    [ 2401.389087] usb 1-1: SetAddress Request (2) to port 0
    [ 2401.453006] usb 1-1: New USB device found, idVendor=f055, idProduct=9800, bcdDevice= 2.00
    [ 2401.453010] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [ 2401.453013] usb 1-1: Product: Pyboard Virtual Comm Port in FS Mode
    [ 2401.453014] usb 1-1: Manufacturer: MicroPython
    [ 2401.453015] usb 1-1: SerialNumber: 206437A1304E
    [ 2401.458834] cdc_acm 1-1:1.1: ttyACM0: USB ACM device
    

USB serial port devices

  • ls /dev/tty*
    Verify that the device is visible as /tty/S<n> or /tty/ACM<n>

For terminal like devices:

  • screen /dev/ttyACM0 115200
    Verify that you can connect to the device and interact or send/receive.

USB Composite Devices:

  • run lsusb --tree
    Verify that all expected USB interfaces are shown, such as mass storage and communication devices
    jos@contoso:/mnt/c/Users/jos$ lsusb --tree
    /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=vhci_hcd/8p, 5000M
        |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=, 5000M
    /:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=vhci_hcd/8p, 480M
        |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=, 12M
        |__ Port 1: Dev 2, If 1, Class=Communications, Driver=cdc_acm, 12M
        |__ Port 1: Dev 2, If 2, Class=CDC Data, Driver=cdc_acm, 12M