Xbox 360 Controller on Stretch (lights and mapping)
-
I saw some posts on controller issues on Stretch, but I didn't see one the same as my post.
Pi Model 3 B+
Power Supply used: Smraza 5V 3A
RetroPie Version Used: RetroPie 4.4.2 (Stretch)
Built From: retropie-4.4-rpi2_rpi3.img
Controller used: XBOX 360 WiredI had a build for over two years using a Pi 3 B and four Xbox 360 controllers on a Jessie build, everything was working fine. I decided to update to a Pi 3 B+ and then did a brand new build from Stretch. I am having issues with the Xbox 360 lights not matching the controller and issues with mapping.
I had some initial issues with the controller and at one point I had re-installed the Xpad driver which seemed to help some, but not fix everything. Yesterday I sat down to fully test my issues. The mapping issue was most present for the Right Trigger in EmulationStation. When trying to map any of the four controllers, the "Left Trigger" would map as "Axis 2+" and then skip right past "Right Trigger" (leaving it as "Not Defined") or it would map it as "Axis 2-". I used jstest and I had 0-10 buttons and 0-7 axes; Left Trigger was Axis 2+ and Right Trigger was Axis 5+.
Also, on one of my reboots, I could no longer launch the EmulationStation menu on any controller using the Start button, but had to use the Left Thumb instead. Once I remapped one controller, then all four controllers could launch the menu using the start button.
I removed the Xpad driver, reset all controller configurations, rebooted, re-installed the Xpad driver, reset all controller configurations, and rebooted. Now using jstest I have 0-12 buttons and 0-5 axes. Left and Right Trigger are now buttons (6 and 7) and map fine.
Buttons Before After A 0 0 B 1 1 X 2 2 Y 3 3 L Shoulder 4 4 R Shoulder 5 5 L Trigger 2+ 6 R Trigger 5+ 7 Select 6 8 Start 7 9 Xbox button 8 10 Left thumbstick 9 11 Right thumbstick 10 12 As long as the controller doesn't swap back and forth again between the two sets (11 buttons & 8 axes vs 13 buttons & 6 axes), I think I should be fine there (I'm guessing that is what happened when the Left Thumb acted like Start). But what is the "correct" mapping for an Xbox 360 controller in Stretch?
The bigger issue for me is that the player lights on the controller (my favorite feature of the Xbox 360 controller) are not correct. Below are the ports, controller number (as listed in the EmulationStation controller config and matches the controllers in a multiplayer MAME and SNES game), and the player light around the Xbox button.
Port EmulationStation Light Upper Left 1 2 Lower Left 2 4 Lower Right 3 1 Upper Right 4 3 Port EmulationStation Light ------------- :------: :--------: Upper Left 1 2 Lower Left 2 3 Lower Right 3 1 Port EmulationStation Light ------------- :------: :--------: Upper Left 1 1 Lower Left 2 2 If I have two controllers on boot up, then plug in the third, it correctly shows the player 3 light (so all three are correct). On reboot, they go back to all three lights being wrong.
Has anyone else been experiencing these issues and does anyone have an idea how to fix them?
-
Is anyone running a Stretch version of Retropie with an Xbox 360 controller?
Can you tell me what your buttons map to, and if the player lights are working?
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.