[Solved] Xbox One Elite Controller Right Trigger is not working
-
Pi Model or other hardware: Pi4
Power Supply used: Pi Standard
RetroPie Version Used: 4.6
Built From: RetroPie website imageI ran "sudo rpi-update" a couple of weeks ago in order to try standalone KMS, and Emulation Station -> Configure Input is now mapping my Xbox One Elite Controller's Left Trigger as "Axis 2-" and not even detecting my Right Trigger.
There was some discussion of this on https://retropie.org.uk/forum/topic/18364/issue-configuring-powera-fusion-wired-xbox-one-controller/43?_=1600155047999 - but I shouldn't have talked on top of an old topic, so I have opened this new topic now.
My normal Xbox One Controller is working without any problem.
@mitu said on the earlier referenced thread:
Your issue is probably caused by the usage of rpi-update, which overwrote the xpad driver with the stock Linux kernel version. As explained throughout the topic, RetroPie includes a patched version, which modifies the default driver behavior and maps the triggers as buttons instead of axis.
Don't use rpi-update as a regular update mechanism - it's not intended to be used as such. RetroPie uses dkms to install additional Linux kernel drivers, so that any normal Linux kernel update (via apt) will automatically re-install the drivers. When using rpi-update, this is not possible and causes issues if you rely on a certain driver to be installed and working.
I wouldn't normally use rpi-update but I wanted to try out the KMS change to see how that affected N64 emulation.
Any idea how I resolve this issue now? I looked at amending the line mentioned in the referenced thread but that line doesn't seem to be present in my script, and there is a reference to the trigger issue also so I think the script has been updated since the above was written.
dkms install -m xpad -v 0.4 -k "$kernel" dkms install --force -m xpad -v 0.4 -k "$kernel"
I tried re-installing xpad from Source but that hasn't changed anything. I also updated RetroPie through RetroPie Setup to see if that helped, but nothing changed.
The below line is also present in "xpad.conf"
options xpad triggers_to_buttons=1
My controller is connected by a USB lead, I'm not using Bluetooth.
(As a totally separate issue, my splash screens no longer work after I ran the rpi-update, but I am not so bothered about fixing that.)
-
If I run a jstest on the Elite Controller, the left trigger is "2" and the right is "5".
2 starts at -32767 and goes to 32767 when depressed fully.
5 also starts at-32767 and goes to a more variable value, but around 19000. -
Okay, this is resolved now. Previously I had updated xpad from Source, this time I removed it entirely and then installed it from Source. This worked.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.