protonscr

"No controllers found" using a Genius (0x1345:0x1000) controller

steamclosed General controller / Steam Input
ValveSoftware/steam-for-linux#6573 · opened 2019-10-10 by kralge · updated 2019-10-11 · 1 comments · github
1 matching comments, n / p to jump
Kkralge 2019-10-10 github

Your system information

  • Steam client version (build number or date): 1570046470
  • Distribution (e.g. Ubuntu): Debian bullseye
  • Opted into Steam client beta?: No
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

I used to play Portal with this controller some years ago without problems. Now Steam would not detect it at all and of course I cannot use it in the game as well.

# jstest-gtk shows all controls working OK
# lsusb
Bus 002 Device 008: ID 1345:1000 Sino Lite Technology Corp.
# dmesg
[44070.067757] usb 2-1.2: new low-speed USB device number 9 using ehci-pci
[44070.179930] usb 2-1.2: New USB device found, idVendor=1345, idProduct=1000, bcdDevice= 1.00
[44070.179938] usb 2-1.2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[44070.179942] usb 2-1.2: Product: Generic USB Joystick
[44070.184721] input: Generic USB Joystick as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/0003:1345:1000.0005/input/input24
[44070.244255] hid-generic 0003:1345:1000.0005: input,hidraw1: USB HID v1.10 Joystick [Generic USB Joystick ] on usb-0000:00:1d.0-1.2/input0

I have "steam-devices" package installed and have the following files installed:
/lib/udev/rules.d/60-steam-input.rules
/lib/udev/rules.d/60-steam-vr.rules

I have tried adding rules based on what I found in different posts but without really knowing what I have been doing and of course without any luck.

Any help in making this controller work again with steam would be greatly appreciated.

Steps for reproducing this issue:

  1. Plug in a Genius MaxFire Grandis 12 controller
  2. Start steam
  3. Look into Steam -> Settings -> Controller -> General controller settings
  4. Find "No controllers found."

Some additional info:
I got deeper in udev and I believe everything is all right there. /dev/input/js0, the related event file and the /dev/hidraw0 file allows read and write access to the user running steam.

I found that running steam with -dev enables console where I see the following when I plug in the controller:
Local Device Found
type: 1345 1000
path: sdl://1
serial_number: - 0
Manufacturer:
Product: Generic USB Joystick
Release: 110
Interface: -1

So what could be wrong??? I installed steam on windows and the controller is found there.

Any ways to debug this part of steam?

Kkralge 2019-10-11 github

Finally, it works. After spending another half a day getting deeper in similar problems, I found the solution in @tomgar's comment from almost a year ago: https://github.com/ValveSoftware/steam-for-linux/issues/5479#issuecomment-433751426

Just for reference the steps I needed to take:

  • Install gamepadtool package from here: http://generalarcade.com/gamepadtool/
  • Run it, let it find the controller, then press the "Create new mapping" button
  • Press the requested buttons on the controller and allow it to create the mapping
  • Copy out the generated string and assign it to the SDL_GAMECONTROLLERCONFIG shell environment variable

Launch options

Upstream links