-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Open
Description
Description
Analog sticks are not registered on the Nintendo Switch Pro Controller when using RetroArch with SDL2 or udev drivers.
Expected behavior
sdl2
input_driver = "sdl2"
input_device = "Nintendo Switch Pro Controller"
input_vendor_id = "1406"
input_product_id = "8201"
input_b_btn = "0"
input_y_btn = "2"
input_select_btn = "4"
input_start_btn = "6"
input_up_btn = "11"
input_down_btn = "12"
input_left_btn = "13"
input_right_btn = "14"
input_a_btn = "1"
input_x_btn = "3"
input_l_btn = "9"
input_r_btn = "10"
input_l2_axis = "+4"
input_r2_axis = "+5"
input_l3_btn = "7"
input_r3_btn = "8"
input_l_x_plus_axis = "+0"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_plus_axis = "+2"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
input_r_y_minus_axis = "-3"
udev
input_driver = "udev"
input_device = "Pro Controller"
input_vendor_id = "1406"
input_product_id = "8201"
input_b_btn = "0"
input_y_btn = "2"
input_select_btn = "8"
input_start_btn = "9"
input_up_btn = "h0up"
input_down_btn = "h0down"
input_left_btn = "h0left"
input_right_btn = "h0right"
input_a_btn = "1"
input_x_btn = "3"
input_l_btn = "4"
input_r_btn = "5"
input_l2_btn = "6"
input_r2_btn = "7"
input_l3_btn = "10"
input_r3_btn = "11"
input_l_x_plus_axis = "+0"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_plus_axis = "+2"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
input_r_y_minus_axis = "-3"
Actual behavior
sdl2
input_driver = "sdl2"
input_device = "Nintendo Switch Pro Controller"
input_vendor_id = "1406"
input_product_id = "8201"
input_b_btn = "0"
input_y_btn = "2"
input_select_btn = "4"
input_start_btn = "6"
input_up_btn = "11"
input_down_btn = "12"
input_left_btn = "13"
input_right_btn = "14"
input_a_btn = "1"
input_x_btn = "3"
input_l_btn = "9"
input_r_btn = "10"
input_l2_axis = "+4"
input_r2_axis = "+5"
input_l3_btn = "7"
input_r3_btn = "8"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
udev
input_driver = "udev"
input_device = "Pro Controller"
input_vendor_id = "1406"
input_product_id = "8201"
input_b_btn = "0"
input_y_btn = "2"
input_select_btn = "8"
input_start_btn = "9"
input_up_btn = "h0up"
input_down_btn = "h0down"
input_left_btn = "h0left"
input_right_btn = "h0right"
input_a_btn = "1"
input_x_btn = "3"
input_l_btn = "4"
input_r_btn = "5"
input_l2_btn = "6"
input_r2_btn = "7"
input_l3_btn = "10"
input_r3_btn = "11"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
Steps to reproduce the bug
- Navigate to Settings -> Drivers -> Controller, and select the controller driver "sdl2" or "udev".
- Restart RetroArch to apply the new setting.
- Go to Settings -> Input -> RetroPad Binds -> Port 1 Controls
- Click on "Set All Controls"
- Notice that these axes do not register any input: "Left Analog X+ (Right)", "Right Analog Y- (Up)", "Right Analog X+ (Right)".
- Click on "Save Controller Profile".
- Close RetroArch
- Open the generated autoconfig file and expand both the udev and the sdl2 file since their generated thumb stick input variables are identical (but not the rest of their content)
expand:
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
to:
# input_l_x_plus_axis has manually been set here: Nintendo Switch Pro Controller+Linux 5.15 (non-HID) does not register thumb sticks - https://github.com/libretro/RetroArch/issues/16905
input_l_x_plus_axis = "+0"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
# input_r_x_plus_axis has manually been set here: Nintendo Switch Pro Controller+Linux 5.15 (non-HID) does not register thumb sticks - https://github.com/libretro/RetroArch/issues/16905
input_r_x_plus_axis = "+2"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+3"
# input_r_y_minus_axis has manually been set here: Nintendo Switch Pro Controller+Linux 5.15 (non-HID) does not register thumb sticks - https://github.com/libretro/RetroArch/issues/16905
input_r_y_minus_axis = "-3"
- Save the changes in the file.
- Open RetroArch
- Navigate to
Main Menu -> Load Core - Click on
Start Remote RetroPad - All axes (up, down, left, right) on the thumb sticks will be indicated in Remote RetroPad when evaluate them.
Version/Commit
- RetroArch: 1.19.1 Flatpak
OS
Trisquel 11.0/Ubuntu MATE 22.04
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels