Joystick recognition within Proton and WINE: /dev/input/js0 fully recognized by KDE, but difficulty getting complete rec

Questions about Wine on Linux
Locked
AEFXC
Newbie
Newbie
Posts: 1
Joined: Sun May 29, 2022 6:16 pm

Joystick recognition within Proton and WINE: /dev/input/js0 fully recognized by KDE, but difficulty getting complete rec

Post by AEFXC »

I have a pair of Virpil flightsticks (Constellation Alphas with WarBRD bases) that I setup the firmware for using a Windows laptop. I have now plugged them into a Gentoo linux system where I have both the "joysticks" input device interface (/dev/input/js0) and the evdev interface layer (/dev/input/event17) present.

In KDE's System Settings > Input Devices > Game Controller, all buttons and axes of movement are shown perfectly. All input present and correct. This is using the legacy /dev/input/js0 input, rather than evdev.

Opening VIRPIL's software in Proton or WINE, there is a button that opens the "Windows Joysticks" menu. It appears like this:
Image

When the device is in the "Connected (xinput device)" category, only the first 10 buttons appear and the 5th and 6th axes are off-center and overwriting each other on a single 5th axis under "Test Joystick". While the joystick is left in this category, all subsequent interaction (both Virpil's input tester running in WINE and Proton alike, and Elite Dangerous launched from Steam) also show the same limitation: only the first 10 buttons register, and the broken 5th and 6th axis.

When the device is selected for "Override" and promoted into the "Connected" category, the "Test Joystick" tab shows all 31 buttons and 6 axes working flawlessly. However no joystick input whatsoever is subsequently recognized in the Virpil input tester in either WINE or PROTON, or in Elite Dangerous when launched from Steam.

Running protontricks and taking just a shot in the dark with adding a Windows DLL or component that would enable support, MS HID was listed as an installable option, however installation failed the following output was encountered:
Note: command cabextract -q --directory=/home/matthew/.local/share/Steam/steamapps/compatdata/359320/pfx/dosdevices/c:/windows/syswow64 /home/matthew/.local/share/Steam/steamapps/compatdata/359320/pfx/dosdevices/c:/windows/temp/i386/hid.dl_ returned status 1. Aborting.
All behavior was replicated across Proton-GE-7.18, Proton-Experimental, wine-staging-7.7, and wine-vanilla-7.0.

This has become an obtuse technical challenge seemingly entirely contained within the Proton / WINE environment, rather than an issue with the Linux space I am better equipped to deal with. I genuinely do not know how to proceed. Please note that a solution would help better establish Vipril flightstick compatibility in Linux gaming generally, where Virpil is a popular brand that can be regarded as making the best flightsticks and other sim components available but does not yet have kernel driver support in Linux.
Locked