Steam Controller

Steam Controller

Offset Aug 29, 2022 @ 1:36pm
Remap guide to another button
Hi, I'm looking fo a way to remap controller buttons (specifically "guide") like with the option "Define Layout" in the general control settings when Steam doesn't recognize the controller, except I'd like to do it on a third party Switch Pro Controller (so there is no option to do that because it is correctly recognized).

By default Steam sets "guide" to the "home" physical button. I would rather set "start" on it and remap the "guide" button to the "+" instead, simply because the "home" button is better placed and larger.

I found the Switch Controller mapping in "SDL_GamepadBind" of Steam\config\config.vdf, unfortunately this file is overwritten when Steam starts so modifications are lost. I tried adding an "SDL_GamepadBind" section in localconfig.vdf in case it would be loaded on top of config.vdf but it didn't work.

Any idea if it is possible to force Steam to use my own SDL_GamepadBind instead of the one by default ? Or another way to change the button mapping of "guide". It is a bit annoying Steam only let you edit the button placement when the controller is unknown and remove that possibility if the controller is identified.
< >
Showing 1-5 of 5 comments
shadowboy813 Aug 29, 2022 @ 7:06pm 
Have you tried editing the vdf file and setting it to read only so steam can't overwrite it?
Offset Aug 30, 2022 @ 11:03am 
Unfortunately it doesn't work, the default mapping is still used. I suppose that config.vdf is not loaded first then written, but only written after Steam gets the info from the servers or another file (at least for identified controllers). So the controller mapping won't read my version of SDL_GamepadBind because it has already been mapped somehow.

Thanks for the suggestion anyway.
tintingaroo Aug 30, 2022 @ 8:15pm 
There are mappings found in Steam\SDL2.dll. If I edit the Xinput one and then run Steam with the -noverifyfiles command it applies. I didn't test but presuming from behaviour I've seen while trying other stuff, its only with Xbox Extended Support disabled.

If I edit the PS4 or Switch ones, the edited mapping wasn't acted upon. :(
It was displayed in config.vdf though.
So somewhere else in the file or just somewhere else....??? Or multiple areas required???
(Tested using the 8BitDo Pro2 and switching its mode - don't know how things are with the actual devices.)


It looks like you're mainly after 'Home' = Start. You can, to a degree, determine the Guide/Home button mapping via the Chord config's Always-On binding.
https://steamcommunity.com/sharedfiles/filedetails/?id=2853381213

If you use them, you'll still have the chord commands. Would want to remap the actions that occur on the Home/Guide button press (open BPM, open the overlay) to another button on the chord config, if you use those functions.

'+' = Guide
Guess you could set things up in the configs to emulate it...
Like pressing '+' leads to an action set (which is a copy of the chord config) on the desktop, BPM & game configs. It wouldn't be perfect, I'm thinking you'd be losing a button on desktop & BPM configs, and would have to make different templates for games that have different configs... But I guess all this depends on how much you use those other configs.

I think it could work out good, but could be overlooking stuff.

If you're on Windows, there's also DS4Windows :D Would be compromises though :(
Last edited by tintingaroo; Aug 30, 2022 @ 8:18pm
Offset Aug 31, 2022 @ 12:17pm 
Well that's not really the way I thought, but it works, and better than expected :steamthumbsup:

As you mentioned, I used the Chord config's Always-On action to trigger "Start" and open the overlay on the "Capture" button (instead of "+"). Actually, Shift+Tab because oddly I couldn't find the overlay function and I don't use BPM.

Now the current limitations are that bringing the overlay requires pressing 2 buttons (I'm used to do that with RetroArch) and any chorded function will pause the game, but I'm fine with that as I only use the overlay. If that was a problem I suppose I could set a layer to manage it with "start" on release if nothing else is pressed.

Which means now I've Start/Select on Home/Capture, Guide when both are pressed and "+" and "-" as extra buttons to set in Steam Input (the controller is a Gulikit KingKong Pro 2 if you wonder why I did that). Cool :)
Last edited by Offset; Aug 31, 2022 @ 1:29pm
Offset Jun 19, 2023 @ 2:39pm 
A quick update on this issue, as the new Steam Input allows now to remap all the buttons of known controllers (thanks to the dev who changed that !). I had to do a small trick to remap the Guide button though, as pushing the physical button to set it to another mapping will close the menu and call Big Picture.

For people who would like to remap a Switch Controller like the Gulikit KingKong Pro 2 (in Switch mode, not in Xinput mode):
- In Steam Settings, Controller panel, in the "Begin Test" menu, there is an option "Setup Device Inputs"
- Remap only A and B button then skip the rest and quit. This will disable the Guide button.
- Setup Device Inputs a second time, now all the buttons can be remapped without interruption.

The same controller in Xinput mode won't remap the Capture button, and Home can be remapped but won't work in my setup.
< >
Showing 1-5 of 5 comments
Per page: 1530 50

Date Posted: Aug 29, 2022 @ 1:36pm
Posts: 5