ValveSoftware / ValveSoftware/Proton

Thrustmaster T150 (t150_driver) not detected by games, but works in Proton wine control panel

Open
#4,819 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
32.8k
Forks
1.6k
PR merge metrics
PR metrics pending

Description

I'm trying to use my Thrustmaster T150 wheel with Steam Play/Proton, but my games do not detect any inputs when I try to assign inputs.

Games:

  • Project Cars 2 Demo
  • Automobilista 2

Proton 6.3-3
T150 driver: https://github.com/scarburato/t150_driver (master a47b1bcb0e8aeee9af8acd36ee83aee923ecd82b)

Project Cars 2 Demo proton log of launching the game and trying to assign keys by pressing on buttons on the wheel.
Launch options: WINEDEBUG=+dinput,+joystick PROTON_LOG=1 %command%
steam-737770.log

I have tried connecting an Xbox controller and the inputs are correctly detected by the games. When I have tested, I have had only one controller connected each time (and I removed the Wacom tablet that produced an extra /dev/js*).

If I launch "wine control", with the Proton wine, and open Game Controllers, I can see that both the controllers appear and wine reacts to the inputs.

Running "proton-joystick-debug.sh.txt control" (aka wine control with correct environment) I can see that Proton wine detects the wheel correctly and both analog and button inputs work. Here I am pressing some of the buttons. (One device is shown, which is the same as what happens when I plug in an Xbox controller ("Normal" wine shows two devices for each controller: joystick + event))
Screenshot from 2021-05-13 08-45-30

Screenshot from 2021-05-13 08-54-45

Here are logs from opening wine control -> Game Controllers -> Test Joystick, with WINEDEBUG=+dinput,+joystick
Thrustmaster T150: wine-t150-test-joystick.log
Xbox gamepad: wine-xbox-test-joystick.log

lsusb -v
lsusb-v-t150.txt
lsusb-v-t150-sudo.txt

Any ideas on how to fix this? Is there a whitelist somewhere?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin with the Proton +dinput,+joystick launch log and compare it with the working wine control logs, then inspect the linked t150_driver revision. Reproduce the issue with the listed games and Proton 6.3-3; done means the T150's buttons and axes are detected during in-game input assignment as the Xbox controller is.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux
Domain
operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.