this post was submitted on 14 Apr 2025
7 points (81.8% liked)
Elite Dangerous
1141 readers
1 users here now
Elite Dangerous related community. Tips and Tricks about the game.
1.) No NSFW content 2.) Don't fly without rebuy
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Hey. Only reading this now. The problem is that Wine or Proton love to default additional devices to XINPUT but what you really want is HID. This is set in the system reg file of the WINEPREFIX that Steam created. oc you must also disable controller remapping for the sticks in Steam. That's Game Settings => Controller => Steam Input Deactivated.
There are a couple of options to fix this. Locate the wine / proton prefix in question and set it to WINEPREFIX so wine can find it. Make sure the game is NOT running. Have an idea how this might look (you WILL have to adjust that path):
This launches the registry editor. Now locate HKEY_LOCAL_MACHINE => System => CurrentControlSet => Enum
Here are two categories: WINEBUS and WINEXINPUT. The joysticks are saved here as "VID_" + $VendorID + $ModelID.
Check all for the key "Service" and make sure they are set to "winehid" and not "xinput". Check all for the key "CompatibleIDs" and make sure they are set to "WINEBUS\WINE_COMP_HID" Check all for the key "Class" and make sure they are set to "HIDClass"
You can prevent this somewhat with various DWORDs. See https://gitlab.winehq.org/wine/wine/-/wikis/Useful-Registry-Keys for reference.
Particular useful are: "Enable SDL" = 0, "Map Controllers" = 0, "DisableHidraw" => 0
You can also start the GameController Setup and set some of these here:
If some device still shows up as XInput select it and click Override. Test on the DInput tab if everything works. Mind that some older Wine versions will only show 32 buttons but this is a graphical limitation and the buttons do register.
When all that is done/checked quit all wine processes and try again with Steam.
Hey, I was slow actually implementing this. It works perfectly now though, and I really appreciate it!
Glad it worked 👍