protonscr

horipad switch pro controller needs better support

steamclosed Distro Family: UbuntuGeneral controller / Steam Input
ValveSoftware/steam-for-linux#7530 · opened 2020-12-11 by arrowgent · updated 2021-08-13 · 8 comments · github
Aarrowgent 2020-12-11 github

steam version: since forever, stable & beta
linux os: ubuntu 18.04

somewhat related, but not the issue.
https://github.com/ValveSoftware/steam-for-linux/issues/6944

e

ll /dev/input/by-id
usb-HORI_CO._LTD._HORIPAD_S-event-joystick
lsusb
0f0d:00c1 Hori Co., Ltd 

i

the problem:

hori pad buttons are not mapped in steam's configuration by default
all buttons are empty and you have to manually bind each keyboard button to a controller button

o

workaround (outdated):

using xboxdrv the hori can be pre-configured as an xbox controller and steam/games think its just an ordinary xbox controller
no futher configuration is required (see script provided)
xboxdrv is not longer supported, but it still works with some issues.

xboxdrv example

#!/bin/bash

#more
#https://aweirdimagination.net/2015/04/06/emulating-xbox-controllers-on-linux/

#ll /dev/input/by-id
#lsusb
#sudo evtest /dev/input/event

killall xboxdrv
sudo killall xboxdrv
sudo killall xboxdrv
sudo xboxdrv --evdev /dev/input/by-id/usb-HORI_CO._LTD._HORIPAD_S-event-joystick --evdev-absmap ABS_Y=x1,ABS_X=y1,ABS_RZ=x2,ABS_Z=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y --evdev-keymap BTN_EAST=a,BTN_C=b,BTN_SOUTH=x,BTN_NORTH=y,BTN_WEST=lb,BTN_Z=rb,BTN_TL=lt,BTN_TR=rt,BTN_SELECT=tl,BTN_START=tr,BTN_TL2=back,BTN_TR2=start --silent --detach-kernel-driver --mimic-xpad
#option invert Y
#--axismap -Y1=Y1,-Y2=Y2 
#--device-name "Hori XboxDrv 360"

exit 0
Aarrowgent 2021-08-12 github

latest game tested with controller support:
https://store.steampowered.com/app/1157740/Iron_Meat/
iron meat demo (proton)

game recognizes and configured horipad correctly with no further setup required
game recognized changing buttons correctly in the game's controller config settings

more testing required for other games

Aarrowgent 2021-08-12 github

https://store.steampowered.com/app/1335530/Alisa/
alisa demo (native linux version)

controller recognized but not configured in game
in game setup menu allows binding to buttons
no issues

Aarrowgent 2021-08-12 github

https://store.steampowered.com/app/732810/Slipstream/
slipstream (proton) (linux native fails to launch, many discussions)

game recognized controller inputs
game settings allowed configuring different buttons

no issues

Aarrowgent 2021-08-12 github

https://store.steampowered.com/app/252610/Death_Road_to_Canada/
death road to canada (proton)
linux x64 binaries not compiled for older versions of glibc
https://steamcommunity.com/app/252610/discussions/0/217691032431020263/

game recognized controller & inputs
game settings allowed setting custom controller buttons
no issues in proton

Aarrowgent 2021-08-12 github

https://store.steampowered.com/app/300380/Road_Redemption/
road remption (linux native)

controller recognized and inputs correctly
game settings unclear how to set buttons

https://store.steampowered.com/app/300380/Road_Redemption/
road redemption (proton)

game recognized controller & inputs
game settings unclear how to set buttons

no issues!

Aarrowgent 2021-08-13 github

https://store.steampowered.com/app/603530/A_Robot_Named_Fight/
a robot named fight (linux native)

game recognized "Gamepad" and inputs correctly
game settings allowed setting buttons

no issues

Aarrowgent 2021-08-13 github

https://store.steampowered.com/app/795100/Friday_the_13th_Killer_Puzzle/
using (Proton)

game recognized controller & inputs
no game settings for config

no issues!

Aarrowgent 2021-08-13 github

Your system information

  • Steam client version (build number or date): Aug 11 2021, steam api v020, package versions 1628721164
  • Distribution (e.g. Ubuntu): ubuntu 18.04
  • Opted into Steam client beta?: [Yes/No] yes
  • Have you checked for system updates?: [Yes/No] yes

lspci |grep -i usb

00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1d.0 USB controller: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #1 (rev 04)

ll /dev/input/by-id
usb-HORI_CO._LTD._HORIPAD_S-event-joystick

closing this since steam "Gamepad" etc seems to work without issues