Add Steam Controller mapping#15601
Conversation
|
So, thinking about prior art, how does this match up to the Hori Steam controller mapping? |
|
At the very least, let's maintain this mapping. I'm not sure what to do with the dual touchpad clicks though. |
|
Is that right to have Also it seems like we should probably create a |
|
Yeah, QAM was already assigned to misc1 before the recent PRs. Just to have something to think about, this may have been an ideal pattern to follow in general: typedef enum SDL_GamepadButton
{
//snip
SDL_GAMEPAD_BUTTON_MISC1, // Share, microphone, capture, QAM
SDL_GAMEPAD_BUTTON_RIGHT_PADDLE1, // Upper/primary under right hand
SDL_GAMEPAD_BUTTON_LEFT_PADDLE1, // Upper/primary under left hand
SDL_GAMEPAD_BUTTON_RIGHT_PADDLE2, // Lower/secondary under right hand or front right function button
SDL_GAMEPAD_BUTTON_LEFT_PADDLE2, // Lower/secondary under left hand or front left function button
SDL_GAMEPAD_BUTTON_TOUCHPAD, // Left/primary touch/trackpad click
SDL_GAMEPAD_BUTTON_MISC2, // Right/secondary touch/trackpad click
SDL_GAMEPAD_BUTTON_MISC3, // Left stick capacitive touch or GameCube left trigger click
SDL_GAMEPAD_BUTTON_MISC4, // Right stick capacitive touch or GameCube right trigger click
SDL_GAMEPAD_BUTTON_MISC5, // Left mini bumper (8BitDo, Flydigi, GameSir)
SDL_GAMEPAD_BUTTON_MISC6, // Right mini bumper (8BitDo, Flydigi, GameSir)
SDL_GAMEPAD_BUTTON_MISC7, // SInput reserved or C (Flydigi, GameInput, Sega 6-button)
SDL_GAMEPAD_BUTTON_MISC8, // SInput reserved or Z (Flydigi, GameInput, Sega 6-button)
SDL_GAMEPAD_BUTTON_MISC9, // SInput reserved or left gripsense
SDL_GAMEPAD_BUTTON_MISC10, // SInput reserved or right gripsense
SDL_GAMEPAD_BUTTON_FINAL, // Final button available
SDL_GAMEPAD_BUTTON_COUNT // 31 max due to int bit shifting in some places
} SDL_GamepadButton; |
This was merged recently: 4940345 For the Steam Controller, misc1 was already QAM, and the 4 back buttons were defined. Should the Horipad be corrected instead? My suggestions for both: Left/right swapped to match the order used in other mappings: QAM moved to misc1: Like this: 7f1d039 |
|
So I think the Hori controller having QAM on misc2 is just a bug. The Steam Deck support should be upgraded with the same support that you added for the Steam Controller. Then, the Steam Deck and Steam Controller should have the same mapping, with the Steam Controller using two additional buttons for grip sense. I think what you proposed above, and have in this PR, makes a lot of sense. Thanks! |
Also fixed Hori QAM button mapping (cherry picked from commit c00d7b4)
|
Merged, thanks! |
Description
Here's a starting point for Steam Controller mapping to get some discussion started. This is the same as the one that was removed from #15528.
Existing Issue(s)
#15471