Skip to content

Conversation

AL2009man
Copy link
Contributor

@AL2009man AL2009man commented Apr 29, 2025

note: this PR requires #1449.

I originally planned to reserve it for the Input Remapper update, but ultimately, I decided to prepare for Nintendo Switch controller support in advance. This might assist on attempting to solve #1534

So, this PR adds missing major Controller Types to the list, such as:

  • Nintendo Switch family of controllers like Switch Pro and Joy-Cons (this includes Nintendo Switch Online controllers)
    • Joy-Cons users: it's Pair only for now, if it weren't for the Werehog stages...
  • Steam Controller
    • as per SDL Hint documents: it primarily works on Bluetooth only, you might wanna unbind the Desktop config for it to work.
  • Steam Deck (built-in)

In addition: SDL_GameControllerDB support is added, just get gamecontrollerdb.txt and drag-and-drop it to the game's executable file.

added HIDAPI Joystick driver for major Controller Types:

* Nintendo Switch controllers (`SDL_HINT_JOYSTICK_HIDAPI_SWITCH`, `SDL_HINT_JOYSTICK_HIDAPI_NINTENDO_CLASSIC`, `SDL_HINT_JOYSTICK_HIDAPI_JOY_CONS`, `SDL_HINT_JOYSTICK_HIDAPI_COMBINE_JOY_CONS`)
* Steam Controller (`SDL_HINT_JOYSTICK_HIDAPI_STEAM`)
* Steam Deck built-in (`SDL_HINT_JOYSTICK_HIDAPI_STEAMDECK`)
@DeaTh-G
Copy link
Contributor

DeaTh-G commented Apr 29, 2025

You've mentioned that this might resolve

Since we still have issue with external ci jobs as per

Could you make a build so that the people finding issues with third party Switch controllers could test it?

added `SDL_GameControllerAddMappingsFromFile` to allow support for SDL_GameControllerDB as a option, for those who prefer Community-driven Gamepad database (tends to be far more up-to-date than main SDL)
@AL2009man
Copy link
Contributor Author

You've mentioned that this might resolve

Since we still have issue with external ci jobs as per

Could you make a build so that the people finding issues with third party Switch controllers could test it?

update: I added gamecontrollerdb.txt support, so I'll need to do some tests.

https://drive.google.com/file/d/1t2wUC1YZcMXwUzDf2OLmHbCNO7nmrIt6/view?usp=sharing

@AL2009man AL2009man changed the title Addition HIDAPI Joystick driver support (Nintendo Switch, Steam Deck/Controller Device) Additional HIDAPI Joystick driver support (Nintendo Switch, Steam Deck/Controller Device) Jun 21, 2025
@AL2009man AL2009man changed the title Additional HIDAPI Joystick driver support (Nintendo Switch, Steam Deck/Controller Device) SDL_GameControllerDB & additional HIDAPI Joystick driver support Aug 1, 2025
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