Hid Tmff2

Linux kernel module for Thrustmaster T300RS, T248 and (experimental) TX wheels
Alternatives To Hid Tmff2
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
7 months ago347gpl-3.0C#
Tool that allows you to add more games to your NES/SNES Classic Mini
Awesome Game Security1,960
a day agomitPython
awesome game security [Welcome to PR]
3 years ago1mitAssembly
Floppy Bird (OS)
5 years agogpl-3.0C++
Open source anti cheat
Hid Tmff2127
4 hours ago27gpl-3.0C
Linux kernel module for Thrustmaster T300RS, T248 and (experimental) TX wheels
11 days ago1gpl-3.0C++
Optimize system performance for games
3 years ago1July 13, 20191otherRust
A game development framework that provides basic tooling and a content authoring workflow
2 years ago1gpl-3.0C
Bootable PC demo/game kernel
a month agootherMATLAB
A Matlab Toolbox for Cooperative Game Theory
Platypus Os23
a year agogpl-2.0C
OS for pentesting, programming, and playing video games. Contributions welcome!
Alternatives To Hid Tmff2
Select To Compare

Alternative Project Comparisons

Linux kernel module for Thrustmaster T300RS, T248 and (experimental) TX wheels

Current state

Playable. I've made some improvements to the dynamic updating of effects, and while still far for perfect, the experience is slowly getting better and better. Some drawbacks include possible effect inaccuracies in comparison with the Windows driver and in some games inconsistent pedal mapping. Meaning that all pedals should be detected in games, but may be mapped incorrectly.

Anycase, this version is usable in most force feedback games, supports rangesetting as well as gain and autocentering along with most force feedback effects.

Help wanted with adding more Thrustmaster wheels

Currently open requests for wheels:

If you would like to help add a wheel to this driver, please have a look through the wiki for what might need to be done. If you have a wheel that's not on the list, but suspect it might fit into the driver, please feel free to open up an issue about it.

Small note

While I haven't personally come across any crashes or lockups with this version, I can't promise that they won't occur under any circumstances.

With that in mind,



Kernel modules require kernel headers to be installed.

  • Debian-based: apt install linux-headers-$(uname -r)
  • Arch-based: pacman -S linux-headers
  • Fedora-based: yum install kernel-devel kernel-headers

Manual installation

  • Unplug wheel from computer
  • git clone --recurse-submodules https://github.com/Kimplul/hid-tmff2.git
  • make
  • sudo make install
  • Plug wheel back in
  • reboot (not strictly necessary, but definitely recommended)


Note: On some systems, you will get an error/warning about SSL. This is normal for unsigned modules. For info on signing modules yourself (completely optional), see here.

Note: Thrustmaster TX wheels aren't supported by hid-tminit as of yet, meaning that TX wheels have to be initialized with tmrd. Please see https://github.com/Kimplul/hid-tmff2/issues/48.


  • Unplug wheel from computer
  • sudo ./dkms-install.sh
  • Plug wheel back in
  • reboot (not strictly necessary, but definitely recommended)


⚠️ Warning: There have been reports that this driver does not work if the wheel's firmware version is older than v. 31. To update the firmware, you will have to fire up a Windows installation and update the firmware using the official Thrustmaster tools.

⚠️ Warning: There was a name change when adding support for the T248 from hid-tmt300rs to hid-tmff-new, and you may have to uninstall the older version of the driver.

Additional tidbits

  • Reportedly some games running under Wine/Proton won't recognize wheels without the official Thrustmaster drivers installed within the prefix. See #46. For installation instructions, see wiki

    Note that you will still need the Linux driver, the Windows driver just installs some files needed by games to correctly recognize the Linux driver. The Windows driver itself does not work under Wine/Proton.

  • Until the updated hid-tminit is upstreamed, you might want to blacklist the kernel module hid-thrustmaster. Do this with

    echo 'blacklist hid_thrustmaster' > /etc/modprobe.d/hid_thrustmaster.con
  • If you've bought a new wheel, you will most likely have to update the firmware through Windows before it will work with this driver.

  • T300 RS has an advanced F1 mode that can be activated with an F1 attachment when in PS3 mode. The base wheel will also work in PS4 mode, but it's less tested and if you encounter issues with this mode, please feel free to open up an issue about it.

  • T248 isn't as extensively tested as T300 RS, please see issues and open new ones if you encounter problems. There is currently no support for the built-in screen.

  • TX support is considered experimental, please see issues (especially https://github.com/Kimplul/hid-tmff2/issues/48) and open new ones if you encounter issues.

  • To change gain, autocentering etc. use Oversteer.

  • If a wheel has a deadzone in games, you can try setting up a udev rule:


    SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="WHEEL_ID", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0"

    where WHEEL_ID is | Wheel | WHEEL_ID | |----------------------------|------| | T300 RS, PS3 normal mode | b66e | | T300 RS, PS3 advanced mode | b66f | | T300 RS, PS4 normal mode | b66d | | T248 | b696 |

    This should make sure that the wheel behaves like you'd want from a wheel.

  • There have been reports that some games work better with a different timer period (see #11 and #10). To change the timer period, create /etc/modprobe.d/hid-tmff-new.conf and add options hid-tmff-new timer_msecs=NUMBER into it. The default timer period is 8, but numbers as low as 2 should work alright.

Popular Kernel Projects
Popular Video Game Projects
Popular Operating Systems Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Video Game