protonscr

[Feature Request] Modify default behavior of left touchpad in CLI (no GUI)

steamclosed questionSteam controller
ValveSoftware/steam-for-linux#7629 · opened 2021-01-29 by swilkens · updated 2021-01-30 · 4 comments · github
Sswilkens 2021-01-29 github

Dear Valve,

While I am not sure if this is the right place to ask, it seemed the most relevant.

Currently, I am using these rules (as installed per debian package "steam-devices") and the controller is properly exposed as /dev/input/js0.

When evaluating the js0 device with jstest [1] I can see how the left touch pad is exposed as a 2-axis input with the digital d-pad functionality being bound to the press action on the left touch pad.

My question; is there a udev rule / configuration (as I work without desktop UI) that can be done that will modify this behavior of the driver, with the goal of changing the left touch pad to send a digital button event when the pad is touched (not pressed), essentially emulating a d-pad without the need for an actual button press.

On windows, this feature exists via de steam controller profiles. It would be hugely beneficial for this configuration feature to be exposed here as well. Apologies if this is documented elsewhere, I was not able to find it.

[1] https://linux.die.net/man/1/jstest

Sswilkens 2021-01-29 github

@kisak-valve thank you for moving this, however - I should clarify.

Essentially I am looking for a method to apply configuration profiles without a graphical interface. As I understand it, the steam for linux client only provides a graphical interface?

Kkisak-valve maintainer 2021-01-29 github

Hello @swilkens, Steam controller configuration is handled by the Steam client. If you're using the Steam Controller without Steam, then it should be running in Lizard mode which as far as I know, that mode is not configurable.

That said, outside of Valve-supported solutions, there is a community developed kernel module or separately sc-controller which runs as a userspace driver which might be worth looking into.

Sswilkens 2021-01-29 github

@kisak-valve I was hoping there would be a valve daemon that allows profile configuration and loading without the full client, but I understand that this isn't something that is currently provided. Thanks for this clarification!

I will have a look at scd / sc-controller.

Sswilkens 2021-01-30 github

For others looking for this option, specifically those using the kernel driver for the Steam Controller with Retropie;

There is no current method to modify the Lizard mode configuration, so the options for a usefull d-pad on retropie are as follows;

  1. Default setup, but configure retroach to setup the analog joystick as a digital d-pad. This will immediately give you a functional d-pad, much better than the press required on the left touch-pad.

  2. Build scd on retropie manually, allows for headless setup profiles without the full steam client.

Thanks @kisak-valve

Nothing extracted yet.