Skip to content

Add Steam Deck capacitive touch sticks, trackpad clicks, and mapping#15612

Merged
slouken merged 3 commits into
libsdl-org:mainfrom
ceski-1:extra-sd-inputs
May 16, 2026
Merged

Add Steam Deck capacitive touch sticks, trackpad clicks, and mapping#15612
slouken merged 3 commits into
libsdl-org:mainfrom
ceski-1:extra-sd-inputs

Conversation

@ceski-1
Copy link
Copy Markdown
Contributor

@ceski-1 ceski-1 commented May 16, 2026

  • I confirm that I am the author of this code and release it to the SDL project under the Zlib license. This contribution does not contain code from other sources, including code generated by a Large Language Model ("AI").

Description

This exposes additional inputs for the Steam Deck to have better consistency with the Steam Controller and Horipad for Steam. Draft for now until I can do some testing.

Existing Issue(s)

As discussed here: #15601 (comment)

SDL_strlcat(mapping_string, "paddle1:b11,paddle2:b12,", sizeof(mapping_string));
} else if (SDL_IsJoystickSteamDeck(vendor, product)) {
// The Steam Deck's built-in controller has QAM, 4 back buttons, L/R trackpads, and L/R capacitive touch sticks
SDL_strlcat(mapping_string, "misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15,touchpad:b17,misc2:b16,misc3:b19,misc4:b18", sizeof(mapping_string));
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SDL             Steam Deck

misc1           QAM
right paddle1   R4 back button
left paddle1    L4 back button
right paddle2   R5 back button
left paddle2    L5 back button
touchpad        left trackpad click
misc2           right trackpad click
misc3           left stick capacitive touch
misc4           right stick capacitive touch
misc5           
misc6           

@ceski-1 ceski-1 marked this pull request as ready for review May 16, 2026 15:51
"05000000de2800000511000001000000,Steam Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,paddle1:b11,paddle2:b10,rightshoulder:b5,righttrigger:a3,start:b7,x:b2,y:b3,",
"05000000de2800000611000001000000,Steam Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,paddle1:b11,paddle2:b10,rightshoulder:b5,righttrigger:a3,start:b7,x:b2,y:b3,",
"03000000de2800000512000000016800,Steam Deck Controller,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,",
"03000000de2800000512000000016800,Steam Deck Controller,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,misc1:b11,paddle1:b12,paddle2:b13,paddle3:b14,paddle4:b15,touchpad:b17,misc2:b16,misc3:b19,misc4:b18,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,",
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same mapping had to be applied here. Everything works nicely now.

@slouken slouken merged commit 2ebf230 into libsdl-org:main May 16, 2026
47 checks passed
@slouken
Copy link
Copy Markdown
Collaborator

slouken commented May 16, 2026

Merged, thanks!

@slouken slouken added this to the 3.4.10 milestone May 16, 2026
slouken pushed a commit that referenced this pull request May 16, 2026
@ceski-1 ceski-1 deleted the extra-sd-inputs branch May 16, 2026 16:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants