https://bugs.winehq.org/show_bug.cgi?id=55660
Bug ID: 55660 Summary: saitek X52-pro mouse Y axis is broken Product: Wine Version: 8.14 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: hid Assignee: wine-bugs@winehq.org Reporter: michaelsnip@hotmail.com Distribution: ---
when moving the mouse vertical the mouse axis breaks and presses random buttons, other versions of wine (eg. proton) have the same behaviour.
I use a driver called libX52 for mouse movement and led control.
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #1 from Noah michaelsnip@hotmail.com --- Just contacted the person who wrote the driver for help with debugging, and it looks like part of the device descriptor isnt parsed correctly.
[link to his message] https://github.com/nirenjan/libx52/issues/51#issuecomment-1737880574
[link to the device descriptor] https://github.com/nirenjan/libx52/blob/9e2e8cb8ff3d9d12f2b1299fe5e311becd25...
https://bugs.winehq.org/show_bug.cgi?id=55660
Noah michaelsnip@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|saitek X52-pro mouse Y axis |saitek X52-pro device |is broken |descriptor not parsed | |correctly
https://bugs.winehq.org/show_bug.cgi?id=55660
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #2 from Zeb Figura z.figura12@gmail.com --- I can't comment on github unfortunately, but that doesn't seem right. We rely on X11 for keyboard and mouse devices; we don't implement our own HID keyboard and mouse drivers.
The "Unhandled type 00000005" message has nothing to do with the HID descriptor, it refers to something else entirely, and it should be harmless.
Does the problem occur when disabling winebus.sys and/or wineusb.sys through DLL overrides?
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #3 from Noah michaelsnip@hotmail.com --- I dont see a winebus or wineusb DLL in there but i do see a winusb i added them all and disabled regardless (winebus, winbus, wineusb, winusb) sadly it didnt work
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #4 from Zeb Figura z.figura12@gmail.com --- (In reply to Noah from comment #3)
I dont see a winebus or wineusb DLL in there but i do see a winusb i added them all and disabled regardless (winebus, winbus, wineusb, winusb) sadly it didnt work
You need to enter in winebus.sys and wineusb.sys manually, and they need to have the .sys suffix.
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #5 from Noah michaelsnip@hotmail.com --- Finally had some time to test it and with both wineusb.sys and winebus.sys disabled the HOTAS doesnt show up. With wineusb.sys set to (native,builtin) and winebus.sys disabled HOTAS doesnt show.With wineusb.sys disabled and winebus.sys set to (native, builtin) it still happens.
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #6 from Noah michaelsnip@hotmail.com --- (In reply to Noah from comment #5)
Finally had some time to test it and with both wineusb.sys and winebus.sys disabled the HOTAS doesnt show up. With wineusb.sys set to (native,builtin) and winebus.sys disabled HOTAS doesnt show.With wineusb.sys disabled and winebus.sys set to (native, builtin) it still happens.
whoops forgot to add... if needed i can send a link to a video showing whats wrong
https://bugs.winehq.org/show_bug.cgi?id=55660
Rémi Bernon rbernon@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |rbernon@codeweavers.com
--- Comment #7 from Rémi Bernon rbernon@codeweavers.com --- Would you mind attaching wine's output with WINEDEBUG=+hid,+dinput,+xinput,+input,+rawinput for instance `WINEDEBUG=+hid,+dinput,+xinput,+input,+rawinput wine control joy.cpl` and wiggling the device?
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #8 from Noah michaelsnip@hotmail.com --- Created attachment 75337 --> https://bugs.winehq.org/attachment.cgi?id=75337 output of joystick control pannel
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #9 from Noah michaelsnip@hotmail.com --- Here is the output, i think i first wiggled the mouse U&P (thats bugged) then L&R, slider axis is fine.
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #10 from Noah michaelsnip@hotmail.com --- Created attachment 75416 --> https://bugs.winehq.org/attachment.cgi?id=75416 RP2040 acting as 9 HID axis and breaking wine
when i was poking my DIY HOTAS project to get the Dpad working i reverted back to a working state that had all 9 axis going from -32767 to +32768 (10bits) and was wondering what wine did with it... and it just so happened to reproduce the same bug as with my hotas
when removing the 9th axis wine behaves normal again
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #11 from Rémi Bernon rbernon@codeweavers.com --- Created attachment 75417 --> https://bugs.winehq.org/attachment.cgi?id=75417 possible fix
This should fix the issue, could you confirm? The problem is that the device exposes more than 8 axes, and we do not support that for the moment with the SDL backend. Still, events were processed for the additional axes and were overwriting the fields that are used for buttons.
You can also alternatively try to disable SDL in the registry (see https://wiki.winehq.org/Useful_Registry_Keys)
https://bugs.winehq.org/show_bug.cgi?id=55660
Noah michaelsnip@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |major
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #12 from Noah michaelsnip@hotmail.com --- thanks for the fast response, i tried disabling SDL registry key but that made no change. It took some time but after getting passed all the errors for missing packages it built and the patch works
https://bugs.winehq.org/show_bug.cgi?id=55660
Noah michaelsnip@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|saitek X52-pro device |HID with more than 8 axis |descriptor not parsed |overwrites inputs after it |correctly |
https://bugs.winehq.org/show_bug.cgi?id=55660
--- Comment #13 from Noah michaelsnip@hotmail.com --- any idea when this will be in wine? (and thus proton?)
https://bugs.winehq.org/show_bug.cgi?id=55660
Rémi Bernon rbernon@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |7d74938b0c9253fc8bf05f5ef94 | |3f99f6bf7e1ae
--- Comment #14 from Rémi Bernon rbernon@codeweavers.com --- Patch has been merged as 7d74938b0c9253fc8bf05f5ef943f99f6bf7e1ae.
https://bugs.winehq.org/show_bug.cgi?id=55660
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #15 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 8.21.