protonscr

"Controller settings" wrongly prefers l/r trigger button value over trigger axis value when both are available

steamopen General controller / Steam Input
ValveSoftware/steam-for-linux#6414 · opened 2019-07-25 by hzulla · updated 2019-07-26 · 1 comments · github
Hhzulla 2019-07-25 github

Your system information

  • Steam client version: steam-runtime_0.20190711.3
  • Distribution: Xubuntu 19.04 (64 Bit)
  • Opted into Steam client beta?: Yes
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

Wanted to configure my "BigBen Interactive Kid-friendly Wired Controller PS3OFMINIPAD SONY" (USB ID 146b:0902) gamepad.

This game controller features analog triggers, but similarly as with other game devices, its Linux driver offers the triggers as button presses and as analog axises at the same time.

jstest will show the left trigger value as "Axis Z" and as "Button 6", the right trigger value as "Axis Rz" and as "Button 7":

jstest /dev/input/by-id/usb-Bigben_Interactive_Bigben_Game_Pad-joystick 
Driver version is 2.1.0.
Joystick (Bigben Interactive Bigben Game Pad) has 8 axes (X, Y, Z, Rx, Ry, Rz, Hat0X, Hat0Y)
and 13 buttons (BtnA, BtnB, BtnX, BtnY, BtnTL, BtnTR, BtnTL2, BtnTR2, BtnSelect, BtnStart, BtnMode, BtnThumbL, BtnThumbR).

Steps for reproducing this issue:

  1. In Linux Steam Client: View -> Settings -> Controller -> General Controller Settings
  2. Choose the "detected controller"
  3. Define Layout
  4. Set "Left Trigger", Steam Client will detect "Button 6" when "Axis 2" would have been the better choice
  5. Set "Right Trigger", Steam Client will detect "Button 7" when "Axis 5" would have been the better choice

What I expected

While detecting the button value is not wrong, the axis value would have been better for games where an analog trigger value allows finer controls, e.g. when used as the gas pedal of a racing game.

Hhzulla 2019-07-26 github

(Other game controllers with the same quirk are the PS3 Sixaxis gamepads.)

Nothing extracted yet.