Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Steering Wheel Input Not Recognized #6674

Open
yacinbm opened this issue Apr 9, 2023 · 13 comments
Open

Steering Wheel Input Not Recognized #6674

yacinbm opened this issue Apr 9, 2023 · 13 comments
Labels
Regression Confirmed working on an older version of Proton

Comments

@yacinbm
Copy link

yacinbm commented Apr 9, 2023

Hi,

I've spent the last two weeks tracking down this issue. I have a T300RS steering wheel, using the hid-tmff2 driver, and I cannot seem to make it work within Proton 7. I have based my tests mainly on Assetto Corsa (id 244210), but this is common to any game using Proton with a version more recent than 5.13.
My issue is that the game can see my device (see below), but any steering/button input is not recognized in game.
AC_controls
Some users have reported a similar issue and solved it by adding a udev rule to their system in order to add r/w accesses to all users for the wheel, which I have successfully done.

$ ls -al /dev/hidraw2
  crw-rw-rw-+ 1 root root 240, 2 Apr  8 22:45 /dev/hidraw2
$ cat /sys/class/hidraw/hidraw2/device/uevent 
  DRIVER=tmff2
  HID_ID=0003:0000044F:0000B66E
  HID_NAME=Thrustmaster Thrustmaster T300RS Racing wheel
  HID_PHYS=usb-0000:04:00.3-1.3/input0
  HID_UNIQ=
  MODALIAS=hid:b0003g0001v0000044Fp0000B66E

I have confirmed that the device works with native Linux programs, with udevtest and oversteer. The farthest I have gotten in my investigation is that when running protontricks -c "wine control" 244210, I can replicate the behavior that I see in game, meaning that my wheel is listed, but it does not respond to any sort of inputs. That being said, by adding the --no-bwrap flag to protontricks, the wheel does respond. Now the question is, does this point to a permissions error for bubblewrap, or is something else amiss?

I am running Steam OS 3.4.6 on my Steam Deck, with the latest stable Steam for Deck version and proton 7.0-6 (also tried Proton GE, but the same symptom occurs). Let me know if you need any more details!

EDIT
The issue seems to stem from Steam Linux Runtime Soldier. If I run the game without the runtime, by generating the PROTON_DUMP_DEBUG_COMMANDS and launching via /tmp/proton_<username>/run, the wheel works perfectly! I also tried running the game with Soldier with the --devel flag, but it did not change the behaviour.

@kisak-valve
Copy link
Member

Hello @yacinbm, for clarity does Proton with a version more recent than 5.13 mean that the wheel works with Proton 5.13, and not Proton 6.3? Proton 5.13 and newer are run inside the Steam Linux Runtime - Soldier container environment, and if Proton 5.13 has differing behavior, that hints there is a regression on Proton's side instead of a permissions issue with the container environment.

Please add PROTON_LOG=1 %command% to a couple affected game's launch options and attach the generated $HOME/steam-$APPID.log to this issue report as a file. (Proton logs compress well if needed.) Also, please copy your system information from Steam (Steam -> Help -> System Information) and put it in a gist, then include a link to the gist in this issue report.

@yacinbm
Copy link
Author

yacinbm commented Apr 9, 2023

Hi @kisak-valve,
It's funny you should say that, we actually narrowed down the issue to Steam Linux Runtime Soldier this morning in another issue over on the protontricks Github.
The TLDR of that issue it that, when running the game without the Steam Linux Runtime Soldier, the wheel is properly recognized in game.

I only own three affected games, so here are the files you asked for (Note that Assetto Corsa-244210 uses GE-Proton7-54 because it is the only way I found to get it working on the Deck). I had to archive the files because F1-2019 somehow generated 349 MB of logs?! steam-logs.zip

Also, please find the Steam -> Help -> System Information.

@kisak-valve
Copy link
Member

Again, please clearly state if your wheel works or doesn't with Proton 5.13.

This Proton version is run inside Steam Linux Runtime - Soldier and if it behaves differently than newer Proton versions, that's a useful data point.

@yacinbm
Copy link
Author

yacinbm commented Apr 9, 2023

I have based my tests mainly on Assetto Corsa (id 244210), but this is common to any game using Proton with a version more recent than 5.13.

yes, the wheel works with 5.13, but not with any more recent version.

@Lawstorant
Copy link

Proton needs to ship updated SDL2 for newer wheels compatibility.

@Theogore
Copy link

Theogore commented Nov 7, 2023

Proton needs to ship updated SDL2 for newer wheels compatibility.

Not sure what that is but I agree that wheel support needs to be improved.

@RustyPedrosa
Copy link

For anyone just trying to get their wheel working, PROTON_DUMP_DEBUG_COMMANDS has been removed from Proton 9, as mentioned recently in #7575 (comment)

That said, I can't get the game to launch from the tmp script with proton 8 or 7 either. No wheel for me.

@krims0n32
Copy link

krims0n32 commented Jun 17, 2024

Is there any progress on this issue? I’ve been troubleshooting this for hours and can’t find a workaround either. Many carsim enthusiasts would love for this to be fixed <3

I don’t want to install Windows again to be able to play, feels bad man. Let me know if I can do anything to test/troubleshoot.

@Theogore
Copy link

@krims0n32 I would check with the folks over at #simracer:matrix.org, they have been working tirelessly to provide kernel level drivers for Simracing hardware and FFB solutions.

@krims0n32
Copy link

@krims0n32 I would check with the folks over at #simracer:matrix.org, they have been working tirelessly to provide kernel level drivers for Simracing hardware and FFB solutions.

@Theogore thanks but I am unable to find this room on matrix.org

@Theogore
Copy link

Theogore commented Jun 18, 2024

Try this:
https://matrix.to/#/#simracing:matrix.org

The Join page includes both "simracer" and "Simracing" but that's the correct URL. Hope it helps!

@krims0n32
Copy link

I set my wheel to PS4/PS5 mode and now it works all of a sudden, including FFB. I tried this earlier and it didn’t work then and I can’t think of anything else I changed on my system. Strange but I’m happy. Tried BeamNG and ACC, both work.

@ricardofiorani
Copy link

ricardofiorani commented Jun 30, 2024

Any update on this?

I have a t300rs and can't make it work.

I'm on a steam deck, and I have the exact same problem described here

The device is recognized normally on the OS level (on System settings -> Input Devices -> Game controller) and I can see input in there.
image

However, inside proton on "wine control" I can see the device, but no input is registered.
image

I tried switching to both PS3 and PS4 modes and it still doesn't work (turn wheel off -> switch -> turn wheel on)

EDIT: I'm trying on Assetto Corsa and DIRT 3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Regression Confirmed working on an older version of Proton
Projects
None yet
Development

No branches or pull requests

7 participants