Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SDL2 seems to be compiled without support for external controller mapping support #2138

Open
6 of 7 tasks
13xforever opened this issue Mar 9, 2023 · 4 comments
Open
6 of 7 tasks

Comments

@13xforever
Copy link

Validation

Describe what's going wrong

Xenia is built with SDL2, which supports custom controller mappings via environment variable override or custom gamecontrollerdb.txt (which xenia even has an option for).

But in reality, it only applies built-in profiles and ignores any custom mappings in either environment variable, or in the specified db file. I'm not sure if it's relevant, but in log the order of operation is wrong: it applies the controller profile, and then tries to load custom mappings. But then it says it loaded 0 profiles from gamecontrollerdb.txt, so idk.

Describe what should happen

Xenia should load custom controller profiles first, then try to configure the controllers.
Or there should be an explicit button remapping option.

If applicable, provide a callstack here, especially for crashes

No response

If applicable, upload a logfile and link it here

gamecontrollerdb.txt
xenia.log
image

@13xforever 13xforever added the bug label Mar 9, 2023
@Margen67 Margen67 added the input label Mar 9, 2023
@SuperSamus
Copy link

Slightly off-topic, but you can reverse a Switch Pro Controller's mapping with the environment variable SDL_GAMECONTROLLER_USE_BUTTON_LABELS set to 0.
It should work on Xenia too.

@13xforever
Copy link
Author

13xforever commented Jul 30, 2023

Tthis is not an acceptable workaround, as it affects all applications that use sdl, and it will break correctly applied configuration

@gardotd426
Copy link

Tthis is not an acceptable workaround, as it affects all applications that use sdl, and it will break correctly applied configuration

I mean you only apply it to Xenia, it only affects Xenia.

@AdrianCassar
Copy link
Contributor

Mapping controllers using gamecontrollerdb.txt works fine i just tested it, you need to ensure your controller GUID is correct otherwise SDL will not update the mapping. HID = "sdl" must be set in the config too.

Third-party tools may give the wrong GUID for your controller such as SDL2 Gamepad Tool in my case. I would recommend using https://github.com/AntiMicroX/antimicrox which gives the correct GUID for my controller.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants