-
Notifications
You must be signed in to change notification settings - Fork 5
Force Feedback in Games
With the driver installed (Installation), games see a standard Linux
wheel. This page explains what works out of the box, and the two per-game
setups: TrueForce for SDK-aware sims, and logi-ffb for DirectInput sims.
Force feedback works out of the box: the driver exposes the complete evdev effect suite (constant, spring, damper, friction, inertia, ramp, periodic, rumble). Bind your controls in game and drive.
TrueForce is the high-frequency haptic texture layer on top of normal force feedback. In the big sims it is delivered by Logitech's own signed SDK DLLs running unmodified inside Proton. Those DLLs are not redistributable, so you stage them once from any G HUB installation (a Windows machine, or G HUB unpacked into a throwaway wine prefix).
Four files, in Logitech's own Logi/... layout:
Logi/Trueforce/1_3_11/trueforce_sdk_x64.dll
Logi/Trueforce/1_3_11/trueforce_sdk_x86.dll
Logi/wheel_sdk/9_1_0/logi_steering_wheel_x64.dll
Logi/wheel_sdk/9_1_0/logi_steering_wheel_x86.dll
Place that Logi/ tree under whichever of these the installer finds first
(highest precedence first):
- a directory you pass with
--sdk-dir <path>, -
$LOGITECH_TRUEFORCE_SDK_DIR, - the repo's
sdk/subdirectory (sdk/Logi/...) if you cloned it, - otherwise
~/.local/share/logitech-trueforce/sdk/(the default for package installs).
Then install them into your Steam prefixes (as your normal user, not sudo):
# from a git checkout:
./tools/install-tf-shim.sh --all-steam
# installed from a package (command is on your PATH):
logitech-trueforce-install-shim --all-steamGames installed later: re-run that command (safe to repeat), or use
--prefix /path/to/pfx for non-Steam prefixes (Heroic, Lutris). The Setup
page in logi-dd-gui / logi-dd manages this per game too; see
Configuring the Wheel.
For each sim, in Steam:
- Right-click the game, Properties, Launch Options:
Required: the SDK only finds the wheel through hidraw, which Proton exposes only with this set.
PROTON_ENABLE_HIDRAW=1 %command% - Properties, Controller: set Disable Steam Input for this game, so the game sees the wheel directly instead of a virtual gamepad.
RS50 owners: the SDK accepts the wheel's native identity (046d:c276), so no
mode switch is needed, and native mode unlocks the full 2700° range. If a
particular game's SDK build does not engage TrueForce in native mode, switch
the wheel to "G PRO compatibility" via its OLED menu as a fallback and please
open an issue naming the game.
Some sims (Le Mans Ultimate, for example) drive force feedback through
DirectInput rather than the SDK. Those games lose force feedback with
PROTON_ENABLE_HIDRAW=1, because the wheel advertises no PID (force
feedback) collection in its HID descriptor. Two fixes:
- Run them with
PROTON_ENABLE_HIDRAW=0(feedback routes through evdev), or - prepend
logi-ffbto the launch command:This presents a virtual force-feedback wheel that catches the DirectInput effects and forwards them to the real one. The virtual wheel appears as "logi-ffb Virtual Wheel" (its own name and IDs, not the real wheel's), so a game may need a one-time manual binding to it.logi-ffb %command%
logi-ffb is hardware-validated but wants more in-game testers; if you play
a DirectInput sim, reports are very welcome. Design details in logi-ffb.
For games with no native TrueForce but with UDP telemetry output (DiRT Rally
2.0, Automobilista 2, Project CARS 2, and other Codemasters-format titles),
logi-tf-sim synthesizes engine haptics from live RPM and throttle, and
drives the rev LEDs to match. See Simulated TrueForce.
Assetto Corsa Competizione and Assetto Corsa EVO are verified end to
end under Proton: steering, full force feedback, and TrueForce all at once
(with PROTON_ENABLE_HIDRAW=1 and Steam Input disabled). Other Logitech-SDK
sims (Le Mans Ultimate, AMS2, Assetto Corsa, rFactor 2, iRacing) share the
same SDK and are expected to work; a confirmation for any of them is welcome,
good or bad.
| Sim | FFB path | Setting | Status |
|---|---|---|---|
| Assetto Corsa Competizione | SDK (TrueForce) |
PROTON_ENABLE_HIDRAW=1, Steam Input off |
✅ verified |
| Assetto Corsa EVO | SDK (TrueForce) |
PROTON_ENABLE_HIDRAW=1, Steam Input off |
✅ verified |
| AMS2, Assetto Corsa, rFactor 2, iRacing | SDK (TrueForce) | same recipe | 🟢 expected, testers wanted |
| Le Mans Ultimate and other DirectInput sims | DirectInput |
PROTON_ENABLE_HIDRAW=0, or logi-ffb %command%
|
🟡 needs testers |
| Native Linux games | evdev | none | ✅ works out of the box |
A couple of game-side behaviors to know about (the rotation-range reset at session start, and keeping hands clear during AC EVO map loads) are covered in Troubleshooting.