Skip to content

Switch 2 Pro Controller (057e:2069) detected but button inputs not working on Raspberry Pi Linux #7374

@willian20091

Description

@willian20091

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

  1. Connect Nintendo Switch 2 Pro Controller via USB to Raspberry Pi
  2. Boot Raspberry Pi OS / ReplayOS (Debian 13 kernel 6.12.x)
  3. Check device creation:
    • /dev/input/js1
    • /dev/input/event3
  4. Run:
    • jstest /dev/input/js1
    • evtest /dev/input/event3
  5. 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

]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions