Public bug reported:

It's vrc-3nt joystick usb dongle
(https://www.vrcworld.com/support/faq2.aspx?question=7360). It works
fine in ubuntu 24.10, /dev/input/js0 device is created, and the joystick
can be correctly calibrated with e.g. jscal, but the joystick is not
seen in the wine. I tried both stock ubuntu wine 9 and upstream wine 10
from the winehq repository, the result is still the same, no joystick in
the 'wine control' or wine games. I also tried:

- symlinking /dev/js0 to /dev/input/js0
- winetricks xinput
- winetrick dinput

Nothing helped. In Fedora 41, the dongle works fine in wine (fedora 41
has wine-10).

# lsusb -v
Bus 001 Device 005: ID 07c0:1125 Code Mercenaries Hard- und Software GmbH 
Virtual RC USB
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 [unknown]
  bDeviceSubClass         0 [unknown]
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x07c0 Code Mercenaries Hard- und Software GmbH
  idProduct          0x1125 Virtual RC USB
  bcdDevice           10.22
  iManufacturer           1 Virtual Racing Industries bv
  iProduct                2 Virtual RC USB
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x003b
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          4 HID Joystick
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 [unknown]
      bInterfaceProtocol      0
      iInterface              5 Virtual RC USB
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      56
          Report Descriptors:
            ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0007  1x 7 bytes
        bInterval              10
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 [unknown]
      bInterfaceProtocol      0
      iInterface              6 EP2 Int Pipe
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      23
          Report Descriptors:
            ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
Device Status:     0x0002
  (Bus Powered)
  Remote Wakeup Enabled

# dmesg
...
[  303.686764] usb 1-3: new low-speed USB device number 5 using xhci_hcd
[  303.996514] usb 1-3: New USB device found, idVendor=07c0, idProduct=1125, 
bcdDevice=10.22
[  303.996523] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  303.996526] usb 1-3: Product: Virtual RC USB
[  303.996529] usb 1-3: Manufacturer: Virtual Racing Industries bv
[  304.033177] input: Virtual Racing Industries bv Virtual RC USB as 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input15
[  304.033306] hid-generic 0003:07C0:1125.0005: input,hidraw4: USB HID v1.10 
Joystick [Virtual Racing Industries bv Virtual RC USB] on 
usb-0000:01:00.0-3/input0
[  304.047214] input: Virtual Racing Industries bv Virtual RC USB as 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.1/0003:07C0:1125.0006/input/input16
[  304.047320] hid-generic 0003:07C0:1125.0006: input,hidraw5: USB HID v1.10 
Device [Virtual Racing Industries bv Virtual RC USB] on 
usb-0000:01:00.0-3/input1
[  304.083675] vrc2 0003:07C0:1125.0005: fixing up VRC-2 report descriptor
[  304.083797] input: Virtual Racing Industries bv Virtual RC USB as 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input17
[  304.083930] vrc2 0003:07C0:1125.0005: input,hidraw4: USB HID v1.10 Joystick 
[Virtual Racing Industries bv Virtual RC USB] on usb-0000:01:00.0-3/input0

# udevadm info /dev/input/js0
P: 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input17/js0
M: js0
R: 0
U: input
D: c 13:0
N: input/js0
L: 0
E: 
DEVPATH=/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input17/js0
E: DEVNAME=/dev/input/js0
E: MAJOR=13
E: MINOR=0
E: SUBSYSTEM=input
E: USEC_INITIALIZED=304084443
E: ID_INPUT=1
E: ID_BUS=usb
E: ID_MODEL=Virtual_RC_USB
E: ID_MODEL_ENC=Virtual\x20RC\x20USB
E: ID_MODEL_ID=1125
E: ID_SERIAL=Virtual_Racing_Industries_bv_Virtual_RC_USB
E: ID_VENDOR=Virtual_Racing_Industries_bv
E: ID_VENDOR_ENC=Virtual\x20Racing\x20Industries\x20bv
E: ID_VENDOR_ID=07c0
E: ID_REVISION=1022
E: ID_TYPE=hid
E: ID_USB_MODEL=Virtual_RC_USB
E: ID_USB_MODEL_ENC=Virtual\x20RC\x20USB
E: ID_USB_MODEL_ID=1125
E: ID_USB_SERIAL=Virtual_Racing_Industries_bv_Virtual_RC_USB
E: ID_USB_VENDOR=Virtual_Racing_Industries_bv
E: ID_USB_VENDOR_ENC=Virtual\x20Racing\x20Industries\x20bv
E: ID_USB_VENDOR_ID=07c0
E: ID_USB_REVISION=1022
E: ID_USB_TYPE=hid
E: ID_USB_INTERFACES=:030000:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=usbhid
E: ID_PATH_WITH_USB_REVISION=pci-0000:01:00.0-usbv2-0:3:1.0
E: ID_PATH=pci-0000:01:00.0-usb-0:3:1.0
E: ID_PATH_TAG=pci-0000_01_00_0-usb-0_3_1_0
E: TAGS=:snap_firefox_geckodriver:snap_firefox_firefox:
E: CURRENT_TAGS=:snap_firefox_geckodriver:snap_firefox_firefox:

I guess the main problem can be this dmesg line (it doesn't show up in Fedora):
[  304.083675] vrc2 0003:07C0:1125.0005: fixing up VRC-2 report descriptor

The fedora also has ID_INPUT_JOYSTICK=1 in the udev and it also has
joystick symlinks created in /dev/input/by-path and /dev/input/by-id,
they aren't created on ubuntu.

I also tried:
- adding very early custom udev rule adding to this device the 
ID_INPUT_JOYSTICK=1
- custom hwdb udev record describing 07C0:1125 as a joystick
- complete replace of the ubuntu udev rules and hwdb with the fedora ones

Nothing helped, so I think the difference is in the kernel.

** Affects: ubuntu
     Importance: Undecided
         Status: New

** Description changed:

  It's vrc-3nt joystick usb dongle
  (https://www.vrcworld.com/support/faq2.aspx?question=7360). It works
  fine in ubuntu 24.10, /dev/input/js0 device is created, and the joystick
  can be correctly calibrated with e.g. jscal, but the joystick is not
  seen in the wine. I tried both stock ubuntu wine 9 and upstream wine 10
  from the winehq repository, the result is still the same, no joystick in
  the 'wine control' or wine games. I also tried:
  
- - symlinking /dev/input/js0 to /dev/js0
+ - symlinking /dev/js0 to /dev/input/js0
  - winetricks xinput
  - winetrick dinput
  
  Nothing helped. In Fedora 41, the dongle works fine in wine (fedora 41
  has wine-10).
  
  # lsusb -v
  Bus 001 Device 005: ID 07c0:1125 Code Mercenaries Hard- und Software GmbH 
Virtual RC USB
  Device Descriptor:
-   bLength                18
-   bDescriptorType         1
-   bcdUSB               1.10
-   bDeviceClass            0 [unknown]
-   bDeviceSubClass         0 [unknown]
-   bDeviceProtocol         0 
-   bMaxPacketSize0         8
-   idVendor           0x07c0 Code Mercenaries Hard- und Software GmbH
-   idProduct          0x1125 Virtual RC USB
-   bcdDevice           10.22
-   iManufacturer           1 Virtual Racing Industries bv
-   iProduct                2 Virtual RC USB
-   iSerial                 0 
-   bNumConfigurations      1
-   Configuration Descriptor:
-     bLength                 9
-     bDescriptorType         2
-     wTotalLength       0x003b
-     bNumInterfaces          2
-     bConfigurationValue     1
-     iConfiguration          4 HID Joystick
-     bmAttributes         0xa0
-       (Bus Powered)
-       Remote Wakeup
-     MaxPower              100mA
-     Interface Descriptor:
-       bLength                 9
-       bDescriptorType         4
-       bInterfaceNumber        0
-       bAlternateSetting       0
-       bNumEndpoints           1
-       bInterfaceClass         3 Human Interface Device
-       bInterfaceSubClass      0 [unknown]
-       bInterfaceProtocol      0 
-       iInterface              5 Virtual RC USB
-         HID Device Descriptor:
-           bLength                 9
-           bDescriptorType        33
-           bcdHID               1.10
-           bCountryCode            0 Not supported
-           bNumDescriptors         1
-           bDescriptorType        34 Report
-           wDescriptorLength      56
-           Report Descriptors: 
-             ** UNAVAILABLE **
-       Endpoint Descriptor:
-         bLength                 7
-         bDescriptorType         5
-         bEndpointAddress     0x81  EP 1 IN
-         bmAttributes            3
-           Transfer Type            Interrupt
-           Synch Type               None
-           Usage Type               Data
-         wMaxPacketSize     0x0007  1x 7 bytes
-         bInterval              10
-     Interface Descriptor:
-       bLength                 9
-       bDescriptorType         4
-       bInterfaceNumber        1
-       bAlternateSetting       0
-       bNumEndpoints           1
-       bInterfaceClass         3 Human Interface Device
-       bInterfaceSubClass      0 [unknown]
-       bInterfaceProtocol      0 
-       iInterface              6 EP2 Int Pipe
-         HID Device Descriptor:
-           bLength                 9
-           bDescriptorType        33
-           bcdHID               1.10
-           bCountryCode            0 Not supported
-           bNumDescriptors         1
-           bDescriptorType        34 Report
-           wDescriptorLength      23
-           Report Descriptors: 
-             ** UNAVAILABLE **
-       Endpoint Descriptor:
-         bLength                 7
-         bDescriptorType         5
-         bEndpointAddress     0x82  EP 2 IN
-         bmAttributes            3
-           Transfer Type            Interrupt
-           Synch Type               None
-           Usage Type               Data
-         wMaxPacketSize     0x0008  1x 8 bytes
-         bInterval              10
+   bLength                18
+   bDescriptorType         1
+   bcdUSB               1.10
+   bDeviceClass            0 [unknown]
+   bDeviceSubClass         0 [unknown]
+   bDeviceProtocol         0
+   bMaxPacketSize0         8
+   idVendor           0x07c0 Code Mercenaries Hard- und Software GmbH
+   idProduct          0x1125 Virtual RC USB
+   bcdDevice           10.22
+   iManufacturer           1 Virtual Racing Industries bv
+   iProduct                2 Virtual RC USB
+   iSerial                 0
+   bNumConfigurations      1
+   Configuration Descriptor:
+     bLength                 9
+     bDescriptorType         2
+     wTotalLength       0x003b
+     bNumInterfaces          2
+     bConfigurationValue     1
+     iConfiguration          4 HID Joystick
+     bmAttributes         0xa0
+       (Bus Powered)
+       Remote Wakeup
+     MaxPower              100mA
+     Interface Descriptor:
+       bLength                 9
+       bDescriptorType         4
+       bInterfaceNumber        0
+       bAlternateSetting       0
+       bNumEndpoints           1
+       bInterfaceClass         3 Human Interface Device
+       bInterfaceSubClass      0 [unknown]
+       bInterfaceProtocol      0
+       iInterface              5 Virtual RC USB
+         HID Device Descriptor:
+           bLength                 9
+           bDescriptorType        33
+           bcdHID               1.10
+           bCountryCode            0 Not supported
+           bNumDescriptors         1
+           bDescriptorType        34 Report
+           wDescriptorLength      56
+           Report Descriptors:
+             ** UNAVAILABLE **
+       Endpoint Descriptor:
+         bLength                 7
+         bDescriptorType         5
+         bEndpointAddress     0x81  EP 1 IN
+         bmAttributes            3
+           Transfer Type            Interrupt
+           Synch Type               None
+           Usage Type               Data
+         wMaxPacketSize     0x0007  1x 7 bytes
+         bInterval              10
+     Interface Descriptor:
+       bLength                 9
+       bDescriptorType         4
+       bInterfaceNumber        1
+       bAlternateSetting       0
+       bNumEndpoints           1
+       bInterfaceClass         3 Human Interface Device
+       bInterfaceSubClass      0 [unknown]
+       bInterfaceProtocol      0
+       iInterface              6 EP2 Int Pipe
+         HID Device Descriptor:
+           bLength                 9
+           bDescriptorType        33
+           bcdHID               1.10
+           bCountryCode            0 Not supported
+           bNumDescriptors         1
+           bDescriptorType        34 Report
+           wDescriptorLength      23
+           Report Descriptors:
+             ** UNAVAILABLE **
+       Endpoint Descriptor:
+         bLength                 7
+         bDescriptorType         5
+         bEndpointAddress     0x82  EP 2 IN
+         bmAttributes            3
+           Transfer Type            Interrupt
+           Synch Type               None
+           Usage Type               Data
+         wMaxPacketSize     0x0008  1x 8 bytes
+         bInterval              10
  Device Status:     0x0002
-   (Bus Powered)
-   Remote Wakeup Enabled
-  
+   (Bus Powered)
+   Remote Wakeup Enabled
+ 
  # dmesg
  ...
  [  303.686764] usb 1-3: new low-speed USB device number 5 using xhci_hcd
  [  303.996514] usb 1-3: New USB device found, idVendor=07c0, idProduct=1125, 
bcdDevice=10.22
  [  303.996523] usb 1-3: New USB device strings: Mfr=1, Product=2, 
SerialNumber=0
  [  303.996526] usb 1-3: Product: Virtual RC USB
  [  303.996529] usb 1-3: Manufacturer: Virtual Racing Industries bv
  [  304.033177] input: Virtual Racing Industries bv Virtual RC USB as 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input15
  [  304.033306] hid-generic 0003:07C0:1125.0005: input,hidraw4: USB HID v1.10 
Joystick [Virtual Racing Industries bv Virtual RC USB] on 
usb-0000:01:00.0-3/input0
  [  304.047214] input: Virtual Racing Industries bv Virtual RC USB as 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.1/0003:07C0:1125.0006/input/input16
  [  304.047320] hid-generic 0003:07C0:1125.0006: input,hidraw5: USB HID v1.10 
Device [Virtual Racing Industries bv Virtual RC USB] on 
usb-0000:01:00.0-3/input1
  [  304.083675] vrc2 0003:07C0:1125.0005: fixing up VRC-2 report descriptor
  [  304.083797] input: Virtual Racing Industries bv Virtual RC USB as 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input17
  [  304.083930] vrc2 0003:07C0:1125.0005: input,hidraw4: USB HID v1.10 
Joystick [Virtual Racing Industries bv Virtual RC USB] on 
usb-0000:01:00.0-3/input0
  
- # udevadm info /dev/input/js0 
+ # udevadm info /dev/input/js0
  P: 
/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input17/js0
  M: js0
  R: 0
  U: input
  D: c 13:0
  N: input/js0
  L: 0
  E: 
DEVPATH=/devices/pci0000:00/0000:00:02.1/0000:01:00.0/usb1/1-3/1-3:1.0/0003:07C0:1125.0005/input/input17/js0
  E: DEVNAME=/dev/input/js0
  E: MAJOR=13
  E: MINOR=0
  E: SUBSYSTEM=input
  E: USEC_INITIALIZED=304084443
  E: ID_INPUT=1
  E: ID_BUS=usb
  E: ID_MODEL=Virtual_RC_USB
  E: ID_MODEL_ENC=Virtual\x20RC\x20USB
  E: ID_MODEL_ID=1125
  E: ID_SERIAL=Virtual_Racing_Industries_bv_Virtual_RC_USB
  E: ID_VENDOR=Virtual_Racing_Industries_bv
  E: ID_VENDOR_ENC=Virtual\x20Racing\x20Industries\x20bv
  E: ID_VENDOR_ID=07c0
  E: ID_REVISION=1022
  E: ID_TYPE=hid
  E: ID_USB_MODEL=Virtual_RC_USB
  E: ID_USB_MODEL_ENC=Virtual\x20RC\x20USB
  E: ID_USB_MODEL_ID=1125
  E: ID_USB_SERIAL=Virtual_Racing_Industries_bv_Virtual_RC_USB
  E: ID_USB_VENDOR=Virtual_Racing_Industries_bv
  E: ID_USB_VENDOR_ENC=Virtual\x20Racing\x20Industries\x20bv
  E: ID_USB_VENDOR_ID=07c0
  E: ID_USB_REVISION=1022
  E: ID_USB_TYPE=hid
  E: ID_USB_INTERFACES=:030000:
  E: ID_USB_INTERFACE_NUM=00
  E: ID_USB_DRIVER=usbhid
  E: ID_PATH_WITH_USB_REVISION=pci-0000:01:00.0-usbv2-0:3:1.0
  E: ID_PATH=pci-0000:01:00.0-usb-0:3:1.0
  E: ID_PATH_TAG=pci-0000_01_00_0-usb-0_3_1_0
  E: TAGS=:snap_firefox_geckodriver:snap_firefox_firefox:
  E: CURRENT_TAGS=:snap_firefox_geckodriver:snap_firefox_firefox:
  
  I guess the main problem can be this dmesg line (it doesn't show up in 
Fedora):
  [  304.083675] vrc2 0003:07C0:1125.0005: fixing up VRC-2 report descriptor
  
  The fedora also has ID_INPUT_JOYSTICK=1 in the udev and it also has
  joystick symlinks created in /dev/input/by-path and /dev/input/by-id,
  they aren't created on ubuntu.
  
  I also tried:
  - adding very early custom udev rule adding to this device the 
ID_INPUT_JOYSTICK=1
  - custom hwdb udev record describing 07C0:1125 as a joystick
  - complete replace of the ubuntu udev rules and hwdb with the fedora ones
  
  Nothing helped, so I think the difference is in the kernel.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2097480

Title:
  vrc-3nt joystick dongle is not working in ubuntu 24.10 wine, works
  fine natively in ubuntu

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+bug/2097480/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to