[Feature Request] Support for Joy-con d-pad and right stick on Android
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
There's a known issue in Android that Nintendo joycons have buggy support. The d-pad on the left joycon shows up as "button 0" for all four buttons, and the right stick shows up as "RX" and "RY" which aren't recognized by most apps. Both of these are possible to work around in software, however.
The half-open app KeyMapper is able to understand the left d-pad. I don't understand exactly how it works but it reads "scancodes" and it's able to distinguish between all four buttons. Gamepad Tester is able to detect RX and RY analog inputs when the right stick is moved. So it's possible for an app to recognize joy-cons.
It would be great if RetroArch implemented both of these workarounds so that joy-cons can be used. Many people already have joy-cons and an android phone, and brackets to mount one on the other are cheaply available either commercially or via 3D printing. So this would be a great way to support "DIY" handheld gaming.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the Joy-Con behavior on Android and compare the left d-pad scancodes and right-stick RX/RY inputs with the behavior described for KeyMapper and Gamepad Tester. Done means RetroArch distinguishes all four left d-pad buttons and recognizes right-stick movement when using Joy-Cons on Android.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, c
- Domain
- mobile
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100