Xbox controller works in Big Picture but not in-game using Proton version > 9.0-4
Hi, I can't get the Xbox series controller to work with proton version 10.0-1 beta, Experimental or Hotfix, it only works with version 9.0-4. This only happens within games, Big Picture and my OS correctly detect the controller, both with Xpad and a USB cable, and with Xone with the Microsoft dongle.
I tested this with 3 games with the same result. Hades (DirectX), Silent Hill 2 Remake and Expedition 33.
Operating System: Manjaro Linux KDE Plasma Version: 6.3.6 KDE Frameworks Version: 6.16.0 Qt Version: 6.9.1 Kernel Version: 6.12.38-1-MANJARO (64-bit) Graphics Platform: X11 Processors: 16 × AMD Ryzen 7 5700X3D 8-Core Processor Memory: 31,3 GiB of RAM Graphics Processor: NVIDIA GeForce RTX 5070 Ti Manufacturer: Micro-Star International Co., Ltd. Product Name: MS-7C94 System Version: 1.0
Hello @gdaroch, please add PROTON_LOG=1 %command% to a couple affected game's launch options, reproduce the regression, and attach the generated $HOME/steam-$APPID.log to this issue report as a file. (Proton logs compress well if needed.)
Hi @kisak-valve! thanks for the answer. Here I attach logs of Hades and Expedition 33 with the xbox controller working with Proton 9, and not working with the newer versions:
steam-1145360 - hades - proton 10 - controller not working.log steam-1145360 - hades - proton 9 - controller working.log steam-1145360 - hades - proton experimental - controller not working.log steam-1145360 - hades - proton hotfix - controller not working.log steam-1903340 - expedition 33 - proton hotfix - controller not working.log steam-1903340 - expedition 33 - proton 9 - controller working.log steam-1903340 - expedition 33 - proton experimental - controller not working.log steam-1903340 - expedition 33 - proton 10 - controller not working.log
Leaving my own set of logs using proton 10 with my controller not working in Final Fantasy VII Rebirth.
steam-2909400-NoSteamInput.log
steam-2909400-WithSteamInput.log
Controller inputs work on proton 9.
Having some issues getting controller to work on Combat Master.
The game somehow fails to pick up my connected controller regardless of what connection mode is used.
Used Proton 9, Experimental and 10 Beta as well as having both Steam Input enabled and disabled, but sadly still gives issues.
Edit: Unsure what I did, but upon switching to Proton 10-2 beta and disabling Steam Input, Combat Master suddenly picks up controller inputs.
Uhhh, okay.....
Ok, if a Valve employee could see this.
Combat Master needed to be run on Proton 10-2 twice.
Once through Steam>Settings>Compatibility>Proton 10 Beta 2 Twice via Right Click Game>Properties>Compatibility>Enable "Force the use of Proton version">Select "Proton 10.0-2 Beta"
Its a strange workaround just to fix controller issues.
Same issue and its been a couple of month at least. Tested in multiple machines running endeavouros and multiple controllers.
Proton 10 and up - Nothing is detected. Not using xinput, not dinput, not wired, not dongle, not bluetooth. Proton 9 and under - Controllers work as intended.
Can confirm, native controller input doesn't work on Proton 10 and up on all games I've tried (be it isaac rebirth, beamng, silksong etc). Steam Input works, but comes with it's own issues. Using an 8bitdo Ultimate 2C (wireless via the 2.4GHz dongle), for reference.
Can confirm, native controller input doesn't work on Proton 10 and up on all games I've tried (be it isaac rebirth, beamng, silksong etc). Steam Input works, but comes with it's own issues. Using an 8bitdo Ultimate 2C (wireless via the 2.4GHz dongle), for reference.
Hi @thecookie94 You can set PROTON_PREFER_SDL=1 %command% on your games launch options with steam input disabled to get it working. Its the workaround I am currently using and it is working for proton 10+ including GE versions. The only drawback is you need to add this on every game you want to use a controller with.
Can confirm, native controller input doesn't work on Proton 10 and up on all games I've tried (be it isaac rebirth, beamng, silksong etc). Steam Input works, but comes with it's own issues. Using an 8bitdo Ultimate 2C (wireless via the 2.4GHz dongle), for reference.
Hi @thecookie94 You can set PROTON_PREFER_SDL=1 %command% on your games launch options with steam input disabled to get it working. Its the workaround I am currently using and it is working for proton 10+ including GE versions. The only drawback is you need to add this on every game you want to use a controller with.
Hi @ChZerk!
Thank you for your tip, that gets it working on beta 10.0-2! BUT doesn't resolve the issue on proton experimental. Attached are 3 logs, proton 9.0-4 without PROTON_PREFER_SDL=1 for reference (working), proton 10.0-2 beta with PROTON_PREFER_SDL=1 (working) and proton experimental with PROTON_PREFER_SDL=1 (not working).
Hope we're gonna see some progress on this issue soon
steam-250900-rebirth-without-prefersdl-working-proton-9.0-4.log steam-250900-rebirth-with-prefersdl-not-working-proton-experimental.log steam-250900-rebirth-with-prefersdl-working-proton-10.0-2b.log
So......
I am unable to confirm whether I am dealing with a controller firmware bug, or a Steam Input bug......
But, when my controller is connected via USB, Steam picks it up as the controller's brand name, hence making Steam Input and the game's native controller support unusable, but if I hold the (using a GameSir Nova Lite controller) X button and then the Chicken Button, the controller switches to a Generic Xbox controller layout and then I am able to play a game using controller layouts with Steam Input disabled.
Again, I am unable to confirm which bug, Firmware or Steam Input, I am dealing with.
I somehow suspect that Steam Input, while steam-devices is correctly installed, is having difficulties translating the controller inputs without on-controller mode switching....
@MyNamesTee have you tried the whole PROTON_PREFER_SDL=1 thing with steam input disabled?
@MyNamesTee have you tried the whole
PROTON_PREFER_SDL=1thing with steam input disabled?
Just tried it now, no dice sadly. Same thing with Steam Input enabled. The game (Combat Master in this case) sees my controller as connected (connected via Wireless Dongle) but inputs are not doing anything.
Attempting the native package right now....
Please standby
Native package works, had to reset the Steam Input layout to this one.....
Testing the unofficial Flatpak version right now, please standby....
Ok, turns out, trying to make your own Steam Input layout leads to controller inputs breaking, not working and wont allow your controller to properly communicate with the game.
Issue solved.
Thanks for the feedback and suggestions.
Forcing SDL resolved the issue on my end. Using the following launch options, the Xbox Wireless Controller works correctly in Proton 10 and Proton Experimental (over Bluetooth):
PROTON_PREFER_SDL=1 SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT=0x045e/0x0b13 %command%
Note: VID/PID values will vary depending on the controller model and connection method. These are specific to my setup. (VID/PID can be obtained using evtest)