libretro / libretro/RetroArch

[Android] Input Remapping

Open
#14,606 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Hi, I just got a Powkiddy X18S Black, it's an upgrade over the X18S because it adds L3 and R3 controls.
The way Retroarch maps a player input is based on a specific device before you begin to map all buttons.
The problem is, different of every android emulator which maps the pressed input independent of the device retroarch does not.
On X18S Black there is 2 device imputs: jink_joy playgame ( it contains all buttons and axis) and gpio ( it contains only L3 and R3).
In that way it is impossible to map L3 and R3 on one player because it is detected as 2 different input devices.

[What you expected to happen]

Accept any pressed input from any connected device

[What is actually happening]

Because jink_joy playgame is selected as a device index L3 and R3 can't be mapped.

Steps to reproduce the bug

Just go to settings / input / player 1 controls
choose a device index and begin to map all buttons

Website apk 1.12.0

OS: Android 11

I propose to add an item to device index to "Any" so it can accept inputs from any atached device.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin at Settings → Input → Player 1 Controls and inspect how the device index is selected before button mapping. Verify the proposed “Any” choice accepts inputs from both jink_joy playgame and gpio, including L3 and R3, on the reported Android setup.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, c
Domain
mobile-dev
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.