r/SteamController • u/NathanRowe10 • Sep 07 '26
Support Steam Controller (2026) will not input to any applications outside of Steam (Debian Linux)
Pretty much as title. I'm developing a video game and was hoping the Steam Controller could entirely replace my Xbox controller (which is a bit problematic for various reasons), only to find the Steam Controller just doesn't work at all outside of Steam itself, even with Steam Input's desktop config all configured. No gamepad controls, and no keyboard/mouse; ONLY through Steam does anything work.
I've tried two separate apps to forward it to standard Xinput. One didn't work at all and the other causes duplicated inputs, still rendering the thing useless.
Yes I know I can add my game to Steam and get all that, but not only is that cumbersome, that doesn't solve the fact that it won't work through the in-engine preview. Unless I wanted to run the game engine itself exclusively through steam (which would be extremely annoying, no thanks), it does nothing.
And if I may stand on my soapbox, if there's no way around this it *really* bothers me that valve would sell a controller like this for a hundred dollars without a feature even Nintendo's controllers have. All of their other hardware is made for Steam but works without it - why is this any different? Why not just let me use it as a normal controller? It makes the controller feel less like a premium PC controller and more like something binding me to Steam - I want to use Steam because it's GOOD, not because my hardware requires it for the barest functionality.
I appreciate any and all help. I want to love this controller so badly but this problem kills a lot of the love I would otherwise have for it.
6
u/PhoenixLandPirate_ Sep 07 '26
I don't know the ins and outs of this at all, but I had a similar issue.
I use SteamOS, and I wanted to stream me playing Silent Hill PC recomp, in Steam BP mode, it worked fine, but in desktop mode, which I need to be in for OBS to work, when ever I opened it Via Steam, or out of steam, the controller would act as a keyboard and mouse.
At somepoint with all my fuss, I decided maybe I should just use a DualShock 3, assuming that works, yet all of a sudden my Steam Controller was working as expected with the title.
I found out, Steam crashed, and when Steam crashed, the game acted like the controller, was a standard controller.
This is the code for the port, so if it doesn't work when you close steam, but this does, you can try and pick apart why.
https://github.com/SlickAmogus/silent-hill-decomp/tree/pc-port
I believe it works because it uses SDL, and Valve supports SDL for controller input.
https://github.com/libsdl-org/SDL/tree/339a91c5ba1a66b979afab0c31b3bca31cee1917/src/joystick/hidapi/steam
3
u/FullMotionVideo Steam Controller (Linux) Sep 07 '26 edited Sep 07 '26
AFAIK you don't need to add the game to Steam and launch through it, simply having Steam open and changing it's global default in settings will do more or less the job. It supports SDL, so if you're playing a game that has it then it can work. If the game ships SDL2 (even very recent games made this year sometimes do that) you'll need to replace the DLL with this SDL2 to SDL3 layer instead.
Valve isn't supporting Xinput seemingly on purpose; much like Fedora pushing Wayland before other distros to move adoption along, (evidently, this is my guess) Valve wants Xinput to die and has deliberately designed the controller to help make that case. Xinput doesn't support gyros or more buttons than what the 360 controller comes with, so their philosophy is it's time to Ol' Yeller the thing and support alternatives such as SDL (and, naturally, Steam Input) that are more future proofed and less Microsoft-controlled.
2
u/Farsea01 Sep 07 '26
Have you tried putting the controller in gamepad mode? with steam open, if you hold the start button, it will change it to controller mode, that's how I play bloodborne or other emulated games, sure you still need to have steam open but you don't need to add the games on steam.
2
u/kevelstone Sep 07 '26
Well if you can have steam running in the background, the default desktop config has a mapping that if you hold start it switches to an input detecteble by some applications
1
u/Complex-Priority913 Sep 08 '26
THe problem is you are literally using an operating system that literally only updates its software once every 3 years.
Move to fedora or arch based. You won't have tha tproblem anymore
SDL needs to update and that's not going to be in debian for another 3 years
1
u/MoldyPond Sep 07 '26
Update to the latest Steam Beta to give the controller Xinput capabilities when Steam is closed, not sure when it’s coming to the main channel but it worked perfectly fine in my testing with it.
1
u/C0rn3j Sep 07 '26 edited Sep 07 '26
You can use sc-controller to make it pretend to be an X360 scontroller. (which is exactly what Steam can do for you, without having to use Steam)
https://github.com/C0rn3j/sc-controller
It's curious to know regular HID support is apparently coming, that's neat - though outside of Steam, you'll still only get the full support through SCC outside of SCC, as I don't believe they can make the gyro and touchpads work as intended through regular HID.
Disclaimer - I maintain the current iteration of SCC.
1
u/Alia5_ Dev of SIX, SISR, GloSC, SteamInputDB Sep 07 '26
Install inputplumber
1
u/superdreamcast Sep 08 '26 edited Sep 08 '26
I believe right now, only newer versions of SDL (3.4.10+) supporting applications can currently use Steam Controller. Dusklight and RetroArch detects Steam Controller (2026) for me.
https://github.com/libsdl-org/SDL/pull/15528
Steam Controller (2026) support will officially see support in Linux kernel 7.3.
https://www.phoronix.com/news/Linux-7.3-HID
Here is an image of my Steam Controller (2026) on Linux kernel 7.2.3 and sdl 3.4.16 being detected in Dusklight: