Hello, I just installed 6.6 to work with my Gamesir T4k controller. On my Windows PC I was able to use direct input on it to read it as a PS4 controller. Is there a way I can do this on Linux? I can connect using all other modes (Switch, Xbox, PC modes) except for DirectInput. I can use the switch mode for now (really want gyro stuff) but would also like full functionality with analog triggers.
Here what I can found: https://www.reddit.com/r/linux_gaming/comments/jfwugi/is_the_gamesir_t4wt4_pro_controller_working_on/
I personally use XBOX Controller, and even that requires extra step to set up.
I’ve a friend who has an xbox controller but he doesn’t seem to have it connected to the system, when he uses lsusb
he can find it there but when we enter the system settings in his pc it doesn’t show there, could you tell me how to set it up please?
Controllers can be tricky on Linux and even if it works it one game it can not in another, I would look at the arch wiki and experiment, I know this is probably not the answer you want but it’s the best starting point I can give
no, thank you it was a great starting point i’ll start looking there. <3
If you still have issues maybe make a new post that is specific to the game and others with it may be able to post how they got it to work
Hi, if you still have issues, I recommend visiting Nobara OS page on how setting up XBOX Controller specifically. You need to install a driver.
Try hid-sony-panic-fix-dkms
. from the AUR, as recommended at https://bbs.archlinux.org/viewtopic.php?id=288441. The GameSir T4K does not implement reportID 18, needed for getting the MAC address. The above package uses another method to get it. The package also fixes a divide by zero error.
I have not tested this package since I do not own a T4K, but it should work.
Background info:
XInput mode should work OOTB, but removes gyro support in favor of analog triggers, while Switch mode does the opposite. DInput mode supposedly allows both, by spoofing a DS4.
hid_sony
assumes reportID 129 is implemented, and uses reportID 18 and some other method.
hid_playstation
(new driver from Linux 6.2 onwards) assumes reportID 18 is implemented, and does not care to use another method.
It’s kind of a mess.