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

"Xbox One Wireless Controller.cfg" Android incorrect mappings? #862

Open
manojka opened this issue Sep 5, 2022 · 0 comments
Open

"Xbox One Wireless Controller.cfg" Android incorrect mappings? #862

manojka opened this issue Sep 5, 2022 · 0 comments

Comments

@manojka
Copy link
Contributor

manojka commented Sep 5, 2022

This is a weird issue that I would expect wouldn't persist as long as that file has been present, but the limited evidence I have available makes me think this. I can easily believe i'm wrong.

I don't have the Xbox One Wireless Controller itself, but I do have an 8BitDo SN30 Pro+ that I normally use in XInput mode when I associate it with my Nvidia Shield TV. (Side note: XInput works better with Redream and supports analog triggers in RetroArch while the built-in DInput RetroArch config does not.)

My 8BitDo controller gets detected as an "Xbox One Wireless Controller", probably because it has the same device ID when acting like an Xbox controller, but its button mappings were somewhat broken. I first noticed this when L3 and R3 (thumbstick pressing) didn't work right, but I found a few other mismatches when I regenerated a config from scratch. L3, R3, and Start at least were wrong. When comparing with my generated config, a few others were too.

My reasons to believe that RetroArch's Xbox One controller config is wrong:

  • My controller in XInput mode works perfectly in Redream with no changes
  • The Android guide to button mappings produces the same results as my generated config for the cases I've checked (other than Android using the Xbox button orientation with RetroArch preferring Nintendo style). RetroArch's Xbox One config conflicts with the Android guide. Ref: https://developer.android.com/reference/android/view/KeyEvent

My reason to doubt this:

  • RetroArch's Xbox One Controller config has been there for years, and I'd have expected someone else to complain by now if this were a real problem

Unexplained (to me):

  • There are lots of Xbox controller configs in there, and they all seem to be subtly different, which seems very strange and unlikely to me.

Possible steps I could see:

  • Someone with a real Xbox One controller matching that device ID could verify it. Or how likely do you think it is that the existing Xbox One controller config could be wrong? If it turns out to be wrong, I can upload a fix. Or I can make one anyway if my evidence was convincing.

  • I can make a pull request with a new config specific to my 8BitDo controller in XInput mode (file here:
    8BitDo_SN30_Pro+_BT_XInput.cfg.txt. The device IDs collide, but the device name is different, and RetroArch detects my controller fine, but I don't know if that'd mess with the existing config.

Any better ideas? Thanks!

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

No branches or pull requests

1 participant