Issue configuring PowerA Fusion wired XBox One controller
-
I haven't installed any drivers at all on this image, it is with whatever is stock on the RP4.4 image.
-
I'm having a similar issue here. I have updated the Retropie-Setup script, then updated
xpad
from source, but it's still not working.Edit: oh whoops, you already linked my issue.
Edit 2: I also setup a RetroPie on my friend's RPi with wired Xbox 360 controllers, and the triggers setup just fine. I didn't update the
xpad
driver, so either the updatedxpad
driver doesn't work (which isn't likely since @simonster is having the issue with a fresh copy of 4.4 or (more likely) Xbox One controllers, uniquely, are mapped with positive/negative trigger values in bothxpad
andxboxdrv
. -
Since neither of you updated to the latest
xpad
, I'd say it's unlikely this is causing the trouble. One thing though, if you update the kernel, this will overwrite thexpad
driver distributed by RetroPie.
So @simonster , can you try updating thexpad
driver from source - from the RetroPie-Setup menu ? -
@mitu said in Issue configuring PowerA Fusion wired XBox One controller:
So @simonster , can you try updating the
xpad
driver from source - from the RetroPie-Setup menu ?Hi @mitu
Just updated this from source, but no joy I'm afraid (after a reboot).
Just in case I hadn't made it clear from my description, below is the output from jstest when I press each shoulder trigger.
-
@simonster Normally, the
xpad
driver should take of this with thetriggers_to_buttons
driver option [1]. The behavior you're seeing is the opposite, if I'm not mistaken. Thexpad
package automatically adds this option to the driver. You can check the option is configured by default by checking/etc/modprobe.d/xpad.conf
, it should have a line withoptions xpad triggers_to_buttons=1
Can you run
dmesg | tail
right after plugging in the controller and post the output ? -
This is what I get immediately after I plug in the controller.
[ 37.991519] usb 1-1.5: new full-speed USB device number 4 using dwc_otg [ 38.125060] usb 1-1.5: New USB device found, idVendor=045e, idProduct=02ea [ 38.125075] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 38.125084] usb 1-1.5: Product: Controller [ 38.125093] usb 1-1.5: Manufacturer: Microsoft [ 38.125102] usb 1-1.5: SerialNumber: 3032363030323737353233373435 [ 38.178909] input: Microsoft X-Box One S pad as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.0/input/input2 [ 38.179907] usbcore: registered new interface driver xpad [ 40.820164] random: crng init done [ 43.671563] Voltage normalised (0x00000000)
-
@aditkrator Do you get the same behaviour as @simonster when testing the buttons with
jstest
? -
It doesn't look like my controller is using xpad at all:
[ 1401.392278] usb 1-1.1.2: New USB device found, idVendor=24c6, idProduct=561a [ 1401.392292] usb 1-1.1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 1401.392300] usb 1-1.1.2: Product: Controller [ 1401.392309] usb 1-1.1.2: Manufacturer: PowerA [ 1401.392317] usb 1-1.1.2: SerialNumber: 0000BE512D3F0D75 [ 1401.393476] input: PowerA FUSION Controller as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1/1-1.1.2/1-1.1.2:1.0/input/input2
-
Yes, my axis 2 still ranges from -32767 when released to 32767 when pressed and same with axis 5.
-
I'm going to try rewriting the original image to the card and check before I update the RetroPie script or any of the modules.
-
@aditkrator FWIW, I get the a similar behavior when running
jstest
and disabling thetriggers_to_buttons
option. With this option on (which should be the default), the triggers register as buttons (on/off).
Can you check if/etc/modprobe.d/xpad.conf
exists and has the line I mentioned a couple of posts ago ? -
I can confirm mine was set with triggers to buttons. But as I said above, it doesn't look like my controller uses xpad at all.
-
@mitu Mine also has
options xpad triggers_to_buttons=1
. -
I can confirm that after reimaging the card, the triggers show up as buttons, but
dmesg | tail
still doesn't suggest xpad is involved.I'm going to try updating the RetroPie packages (without the kernel updates) and see if it still works.
-
I'm also going to try to reflash the SD card and run
dmesg | tail
andjstest
to see if this issue persists.Edit 1: Here are the results of
dmesg | tail
[ 32.995080] usb 1-1.5: New USB device found, idVendor=045e, idProduct=02ea [ 32.995094] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 32.995105] usb 1-1.5: Product: Controller [ 32.995113] usb 1-1.5: Manufacturer: Microsoft [ 32.995124] usb 1-1.5: SerialNumber: 3032363030323737353233373435 [ 33.043410] xpad: loading out-of-tree module taints kernel. [ 33.043422] xpad: loading out-of-tree module taints kernel. [ 33.046448] input: Microsoft X-Box One S pad as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.0/input/input0 [ 33.046920] usbcore: registered new interface driver xpad [ 33.271690] Under-voltage detected! (0x00050005)
Edit 2: I can confirm
jstest
now treats the triggers as buttons. I also think I may have misspoken in an earlier message:@aditkrator said in Issue configuring PowerA Fusion wired XBox One controller:
Edit 2: I also setup a RetroPie on my friend's RPi with wired Xbox 360 controllers, and the triggers setup just fine. I didn't update the
xpad
driver, so either the updatedxpad
driver doesn't work (which isn't likely since @simonster is having the issue with a fresh copy of 4.4 or (more likely) Xbox One controllers, uniquely, are mapped with positive/negative trigger values in bothxpad
andxboxdrv
.I actually did update
xpad
-- I honestly was too tired writing that. -
So, after writing RP4.4 image to SD card and starting it, the pad worked correctly (triggers as buttons), but after updating RetroPie Setup Script and running update installed modules (and selecting not to update OS packages) and rebooting, the controller now has the 2 additional axis listed.
I did eventually find that it is using xpad. Because I'd already had the device plugged in before trying it, it wasn't listing the driver in
dmesg | tail
. The option is still set in /etc/modprobed/xpad.conf so it must be an issue with the xpad driver in use? The install script stated it was installing version 0.4 -
@simonster said in Issue configuring PowerA Fusion wired XBox One controller:
The install script stated it was installing version 0.4
I think it's the same version set there for a long time, I'm not sure if it's relevant. So the updated driver has some new unwanted features.
-
Given that the xpad code has been updated numerous times last week (22nd/23rd June), and it appears that a diff is being applied by the RetroPie Setup, is there a chance that this isn't being applied correctly any longer? Previous to the 22nd June, it hadn't been changed since December.
EDIT: I have just checked the RetroPie-Setup git repository and can see this was updated 2 days ago.
-
@simonster Yes, the patch was no longer applying correctly to the upstream driver, so it was updated, hence my initial reply in the topic.
Could you test if it works by removing the patch from the RetroPie script module ? Too late for me at the moment, but I'll give it a test tomorrow also. -
I think I found the problem - the
xpad
driver from the RetroPie setup is not getting installed properly. I'll do more testing, starting from a 4.4 stock image and running an update to see how it works, and try to find an easier fix than my manual steps.
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.