Skip to content

Added generic artifical FF_SPRING effect using FF_CONSTANT in Python.#22

Open
StanSwanborn wants to merge 2 commits into
JacKeTUs:mainfrom
StanSwanborn:main
Open

Added generic artifical FF_SPRING effect using FF_CONSTANT in Python.#22
StanSwanborn wants to merge 2 commits into
JacKeTUs:mainfrom
StanSwanborn:main

Conversation

@StanSwanborn
Copy link
Copy Markdown

@StanSwanborn StanSwanborn commented May 13, 2026

Hi!

I worked on understanding my steering wheel on Linux for the past couple of weeks; your repository was invaluable for me! Using the sparse information available, using lsusb, evtest, fftest and so on - I started to understand the Linux input system and the way the driver was interacting with it.

I wanted to play Farming Simulator 2025, notorious for the crappy Force Feedback implementation (if you could even call it that) in the GIANTS engine since its introduction years ago. I therefore usually played it, using my Thrustmaster T300 RS, using the "Spring" effect.

I discovered my Asetek Forte Wheelbase does not support the FF_SPRING effect. Which severely limited my options in using my DD wheel for Farming Simulator 25. Using it in the default safety force mode, or in the no-force mode was unplayable.

I therefore set out to make my own generic script that would mimic FF_SPRING behavior through the FF_CONSTANT capability. I came to the following script.

Maybe it could help others, and considering your repository is currently the go-to spot for anyone looking to get their (direct drive) steering wheel working on Linux; I thought it would be nice to merge it here for others to use and expand upon.

Cheers,
Stan

@JacKeTUs
Copy link
Copy Markdown
Owner

JacKeTUs commented Jun 7, 2026

Hi!
First, im so sorry this MR went unnoticed for so long

Second... I believe that driver (in your case, universal-pidff) should handle this, not userspace script...
Because SPRING effect is one of the standard-defined conditional effects, we shouldn't ignore what device descriptor tells us... We can emulate spring forces from inside the driver itself, and set it as quirk for that specific device.
Can you, please, open the Issue in https://github.com/JacKeTUs/universal-pidff, and share the HID descriptor of the device? May be it does define SPRING, but driver doesn't understand it somehow...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants