dorssel / usbipd-win

Windows software for sharing locally connected USB devices to other machines, including Hyper-V guests and WSL 2.
GNU General Public License v3.0
3.33k stars 208 forks source link

How to find my device with generic names #982

Open simeoncapy opened 2 weeks ago

simeoncapy commented 2 weeks ago

When I use the usbipd list command I cannot see my device, to be exact its name. Indeed, I have 4 generic "USB Input Device", so I don't know how to find it. But my device is recognised with its name in the devices list of Windows settings. image

Here is the result of the command:

Connected:
BUSID  VID:PID    DEVICE                                                        STATE
2-4    1c4f:0027  USB Input Device                                              Not shared
4-1    17ef:609d  USB Input Device                                              Not shared
4-3    06cb:00f9  Synaptics UWP WBDI                                            Not shared
4-4    174f:1812  Integrated Camera, Integrated IR Camera, Camera DFU Device    Not shared
4-7    2988:0304  USB Input Device                                              Not shared
4-8    2ce3:9563  Alcorlink USB Smart Card Reader                               Not shared
4-10   8087:0033  Intel(R) Wireless Bluetooth(R)                                Not shared
6-4    0bda:1101  USB Input Device                                              Not shared

Persisted:
GUID                                  DEVICE

usbipd: warning: USB filter 'USBPcap' is known to be incompatible with this software; 'bind --force' will be required.

So is there a way to discover which generic device is the one I am looking for?

dorssel commented 2 weeks ago

The device descriptions are those reported by the Windows USB subsystem; they are the same (or should be) as in Windows Device Manager. You can display the Linux device names (which may or may not provide more details) using usbipd list --usbids.

simeoncapy commented 2 weeks ago

Thanks for the answer. I checked on the Device Manager but I couldn't see my device. So I don't understand why the new settings can, and not the Device Manager. Another manifestation of Window's bicephalism...

But thanks for your other command. It couldn't detect my device but reduced the Unknown device to 2. So by changing my device's USB port, I could discriminate it.

Connected:
BUSID  VID:PID    DEVICE                                                        STATE
2-3    2988:0304  Unknown device                                                Not shared
2-4    1c4f:0027  SiGma Micro, Unknown device                                   Not shared
4-1    17ef:609d  Lenovo, Unknown device                                        Not shared
4-3    06cb:00f9  Synaptics, Inc., Unknown device                               Not shared
4-4    174f:1812  Syntek, Unknown device                                        Not shared
4-8    2ce3:9563  Unknown device                                                Not shared
4-10   8087:0033  Intel Corp., AX211 Bluetooth                                  Not shared
6-4    0bda:1101  Realtek Semiconductor Corp., Unknown device                   Not shared

And on WSL it appears with its name:

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2988:0304 3D Systems 3D Systems Haptic Device
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

[EDIT] But the device seems to not be available in tty. I run dmesg and I got:

[   58.179710] usb 1-1: New USB device found, idVendor=2988, idProduct=0304, bcdDevice= 2.00
[   58.179716] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   58.179718] usb 1-1: Product: 3D Systems Haptic Device
[   58.179720] usb 1-1: Manufacturer: 3D Systems
[   58.179721] usb 1-1: SerialNumber: 4196XXXXX
[   58.184653] hid-generic 0003:2988:0304.0001: device has no listeners, quitting
[  305.719980] TCP: eth0: Driver has suspect GRO implementation, TCP performance may be compromised.
[ 7261.013781] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -22
[ 7261.014901] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -22
[ 7261.015172] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -22
[ 7261.015479] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -2
[ 7261.015996] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -22
[ 7261.016248] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -22
[ 7261.016468] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -22
[ 7261.016769] misc dxg: dxgk: dxgkio_query_adapter_info: Ioctl failed: -2
[ 7452.336715] vhci_hcd: connection closed
[ 7452.336848] vhci_hcd: stop threads
[ 7452.336852] vhci_hcd: release socket
[ 7452.336856] vhci_hcd: disconnect device
[ 7452.336905] usb 1-1: USB disconnect, device number 2
dorssel commented 2 weeks ago

Are you sure the default WSL kernel has a driver for your device? You may need to compile your own, see https://github.com/dorssel/usbipd-win/wiki/WSL-support#building-your-own-wsl-2-kernel-with-additional-drivers