Switch 2 Pro Controller (057e:2069) detected but button inputs not working on Raspberry Pi Linux
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- c, linux, raspberry-pi
- Domain
- embedded-iot, operating-systems
Research direction
Start with the HID descriptor and the kernel logs showing the controller bound to hid-generic rather than hid-nintendo. Review how the hid-nintendo driver handles input reports, then reproduce with evtest and jstest on the listed Raspberry Pi system. Done means button presses generate EV_KEY events while the existing analog axes continue to work.
Written by the indexing model from the issue text.
Description
switch2_diagnostic_20260515_132643.log
Describe the bug
The Nintendo Switch 2 Pro Controller (USB VID: 057e, PID: 2069) is detected on Raspberry Pi Linux, but button inputs do not work.
The device is recognized and creates input nodes (/dev/input/js* and /dev/input/event*), however only analog axes respond. Button presses are not registered in evtest or the Linux input subsystem.
The controller is bound to hid-generic instead of hid-nintendo, and no button events are generated.
Steps to reproduce the behaviour
Steps to reproduce the behaviour
- Connect Nintendo Switch 2 Pro Controller via USB to Raspberry Pi
- Boot Raspberry Pi OS / ReplayOS (Debian 13 kernel 6.12.x)
- Check device creation:
/dev/input/js1/dev/input/event3
- Run:
jstest /dev/input/js1evtest /dev/input/event3
- Press any button on the controller
Expected: Button inputs should be detected
Actual: No button events are registered
Device (s)
Raspberry Pi 3 Mod. B
System
System
- Device: Raspberry Pi 3 B
- OS: Debian GNU/Linux 13 (trixie)
- Kernel: 6.12.75+rpt-rpi-v8
- Architecture: aarch64
- Controller: Nintendo Switch 2 Pro Controller (057e:2069)
- Driver in use: hid-generic
- hid-nintendo driver: not bound to device
Logs
Logs
USB detection
Bus 001 Device 005: ID 057e:2069 Nintendo Switch 2 Pro Controller
Kernel logs
hid-generic 0003:057E:2069.0001:
input,hidraw0: USB HID v1.11 Gamepad [Nintendo Switch 2 Pro Controller]
hid-generic 0003:057E:2069.0002:
input,hidraw0: USB HID v1.11 Gamepad [Nintendo Switch 2 Pro Controller]
jstest output
Axes (X, Y, Rx, Rz): working
Buttons:
- 21 buttons detected
- No state changes when pressing buttons
evtest output
Device: Nintendo Switch 2 Pro Controller
Supported events:
- EV_KEY
- EV_ABS
Result:
No EV_KEY events generated on button press
HID descriptor (usbhid-dump)
05 01 09 05 A1 01 85 05 05 FF 09 01 15 00 26 FF
00 95 3F 75 08 81 02 85 09 09 01 95 02 81 02 05
09 19 01 29 15 25 01 95 15 75 01 81 02 95 01 75
03 81 03 05 01 09 01 A1 00 09 30 09 31 09 33 09
35 26 FF 0F 95 04 75 0C 81 02 C0 05 FF 09 02 26
FF 00 95 34 75 08 81 02 85 02 09 01 95 3F 91 02
C0
Key insight:
95 15 75 01 81 02 → 21 buttons, bit-packed input report
Additional context
]
- Dominant language
- C
- Stars
- 13.2k
- Forks
- 5.5k
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 21
Contributor guide
No contributing guide indexed for this repository
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.
More from raspberrypi/linux
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
raspberrypi/linux#7415 · 2 comments · 1 reaction ·
-
rp1-cfe doesn't forward V4L2_EVENT_SOURCE_CHANGE event from csi-2 sensor driver to userspace app Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
raspberrypi/linux#7399 · 1 comment ·
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
raspberrypi/linux#7357 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
raspberrypi/linux#7054 · 2 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
raspberrypi/linux#7634 · 8 comments · 1 reaction ·
All issues in raspberrypi/linux
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
zephyrproject-rtos/zephyr#119726 ·
-
[Bounty proposal] fix(web): memory insights count an evening memory on the next day ($25 proposed) Open
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
BasedHardware/omi#15320 ·
-
[adam] AdamNet network read doesn't cap to MAX_ADAM_PACKET_LEN, overflows client receive buffers Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
FujiNetWIFI/fujinet-firmware#1649 · 2 comments ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
HarbourMasters/Shipwright#7229 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
riscv-software-src/riscv-isa-sim#2435 · 1 comment ·