diff options
| author | Kimplul <kimi.h.kuparinen@gmail.com> | 2025-02-03 22:37:45 +0200 |
|---|---|---|
| committer | Kimplul <kimi.h.kuparinen@gmail.com> | 2025-02-03 22:37:45 +0200 |
| commit | a9312ead5720922e1c06b541ea48b6db3f289d36 (patch) | |
| tree | 27b082b6d0bca607dd54f95b2110d6508d13b6a4 | |
| parent | a3e70e77d95c12e3fe11e0a7ccb67e7195e0e1ab (diff) | |
| download | hid-tmff2-a9312ead5720922e1c06b541ea48b6db3f289d36.tar.gz hid-tmff2-a9312ead5720922e1c06b541ea48b6db3f289d36.zip | |
Separate uaccess to another udev file
+ My understanding is that mainly the SteamDeck requires uaccess, most
other systems can do without. Unfortunately, due to a bug in SDL,
uaccess causes most other systems to not detect input, so we don't
want uaccess to be on by default, at least for now
| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | README.md | 2 | ||||
| -rw-r--r-- | udev/71-thrustmaster-steamdeck.rules | 22 | ||||
| -rw-r--r-- | udev/99-thrustmaster.rules | 10 |
4 files changed, 28 insertions, 10 deletions
@@ -11,6 +11,10 @@ install: deps/hid-tminit udev-rules: install -m 0644 udev/99-thrustmaster.rules /etc/udev/rules.d/ +.PHONY: steamdeck-rules +steamdeck-rules: + install -m 0644 udev/71-thrustmaster-steamdeck.rules /etc/udev/rules.d/ + clean: deps/hid-tminit $(MAKE) -C $(KDIR) M=$(shell pwd) clean @@ -78,6 +78,7 @@ sudo yum install linuxconsoletools # Fedora-based make sudo make install sudo make udev-rules # optional but should fix some common issues + # sudo make steamdeck-rules # ONLY run if you're on a SteamDeck ``` + Plug wheel back in + Reboot *(Optional, yet Recommended)* @@ -91,6 +92,7 @@ sudo yum install linuxconsoletools # Fedora-based cd hid-tmff2 sudo ./dkms/dkms-install.sh sudo make udev-rules # optional but should fix some common issues + # sudo make steamdeck-rules # ONLY run if you're on a SteamDeck ``` + Plug wheel back in + Reboot *(Optional, yet Recommended)* diff --git a/udev/71-thrustmaster-steamdeck.rules b/udev/71-thrustmaster-steamdeck.rules new file mode 100644 index 0000000..3f3ea1e --- /dev/null +++ b/udev/71-thrustmaster-steamdeck.rules @@ -0,0 +1,22 @@ +# T300RS PS3 normal mode +# allow userspace access to wheel, seems to be required for some systems, +# mainly the SteamDeck I believe +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66e", MODE="0660", TAG+="uaccess" + +# T300RS PS3 advanced mode +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66f", MODE="0660", TAG+="uaccess" + +# T300RS PS4 mode +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66d", MODE="0660", TAG+="uaccess" + +# T248 + T128 +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b696", MODE="0660", TAG+="uaccess" + +# TX +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b666", MODE="0660", TAG+="uaccess" + +# TSXW +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b692", MODE="0660", TAG+="uaccess" + +# TSPC +KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b689", MODE="0660", TAG+="uaccess" diff --git a/udev/99-thrustmaster.rules b/udev/99-thrustmaster.rules index 3b469c0..e96cb02 100644 --- a/udev/99-thrustmaster.rules +++ b/udev/99-thrustmaster.rules @@ -1,39 +1,29 @@ # T300RS PS3 normal mode -# allow userspace access to wheel, seems to be required for some systems, -# apparently Proton as well -KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66e", MODE="0660", TAG+="uaccess" - # remove deadzone for both evdev and jsdev subsystems SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66e", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66e", RUN+="/usr/bin/jscal -s 6,1,1,32767,32767,16384,16384,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912 /dev/input/js%n" # other wheels are similar, mainly with the idProduct being different # T300RS PS3 advanced mode -KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66f", MODE="0660", TAG+="uaccess" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66f", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66f", RUN+="/usr/bin/jscal -s 6,1,1,32767,32767,16384,16384,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912 /dev/input/js%n" # T300RS PS4 mode -KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66d", MODE="0660", TAG+="uaccess" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66d", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b66d", RUN+="/usr/bin/jscal -s 6,1,1,32767,32767,16384,16384,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912 /dev/input/js%n" # T248 + T128 -KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b696", MODE="0660", TAG+="uaccess" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b696", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b696", RUN+="/usr/bin/jscal -s 11,1,1,32767,32767,16384,16384,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912 /dev/input/js%n" # TX -KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b666", MODE="0660", TAG+="uaccess" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b669", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b669", RUN+="/usr/bin/jscal -s 6,1,1,32767,32767,16384,16384,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912 /dev/input/js%n" # TSXW -KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b692", MODE="0660", TAG+="uaccess" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b692", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b692", RUN+="/usr/bin/jscal -s 6,1,1,32767,32767,16384,16384,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912 /dev/input/js%n" # TSPC -KERNEL=="hidraw*", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b689", MODE="0660", TAG+="uaccess" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b689", RUN+="/usr/bin/evdev-joystick --evdev %E{DEVNAME} --deadzone 0" SUBSYSTEM=="input", ATTRS{idVendor}=="044f", ATTRS{idProduct}=="b689", RUN+="/usr/bin/jscal -s 6,1,1,32767,32767,16384,16384,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,3,448,574,1394469,1394469,1,0,0,0,536870912,536870912,1,0,0,0,536870912,536870912 /dev/input/js%n" |
