XboxOne controller (2015) hotkey broken in 4.6.1 (65bffe55)
-
Hi,
I love Retropie! thanks for the work put in, amazing.
I've spent all afternoon on my Pi4 trying to fix the hotkey on my wired XboxOne controller without success.
I upgrade to 4.6.1 to 65bffe55 and it breaks the hotkey. I've rollback and it's ok. So I did another fresh build today and once again the hotkey fails to work in ES and within games to exit or bring the Retroarch GUI up, in Mame the start and select neither work to to add coins. It allows me to set the controller up in ES though and it gets registered in jstest /dev/input/js0 and the es_inputs.cfg file. However in ES it doesn't work anymore.
<?xml version="1.0"?> <inputList> <inputConfig type="joystick" deviceName="Microsoft X-Box One pad (Firmware 2015)" deviceGUID="030000005e040000dd02000003020000"> <input name="a" type="button" id="0" value="1" /> <input name="b" type="button" id="1" value="1" /> <input name="down" type="hat" id="0" value="4" /> <input name="hotkeyenable" type="button" id="8" value="1" /> <input name="left" type="hat" id="0" value="8" /> <input name="leftanalogdown" type="axis" id="1" value="1" /> <input name="leftanalogleft" type="axis" id="0" value="-1" /> <input name="leftanalogright" type="axis" id="0" value="1" /> <input name="leftanalogup" type="axis" id="1" value="-1" /> <input name="leftshoulder" type="button" id="4" value="1" /> <input name="leftthumb" type="button" id="9" value="1" /> <input name="lefttrigger" type="axis" id="2" value="1" /> <input name="right" type="hat" id="0" value="2" /> <input name="rightanalogdown" type="axis" id="4" value="1" /> <input name="rightanalogleft" type="axis" id="3" value="-1" /> <input name="rightanalogright" type="axis" id="3" value="1" /> <input name="rightanalogup" type="axis" id="4" value="-1" /> <input name="rightshoulder" type="button" id="5" value="1" /> <input name="rightthumb" type="button" id="10" value="1" /> <input name="righttrigger" type="axis" id="5" value="1" /> <input name="select" type="button" id="6" value="1" /> <input name="start" type="button" id="7" value="1" /> <input name="up" type="hat" id="0" value="1" /> <input name="x" type="button" id="2" value="1" /> <input name="y" type="button" id="3" value="1" /> </inputConfig> </inputList>
I tried installing xpadneo too https://github.com/atar-axis/xpadneo/blob/master/docs/README.md#installation
The working es_input.cfg on my previous version has an couple of lines:
<inputAction type="onfinish"> <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command> </inputAction>
Any other ideas, I need to fix the HDMI audio error too which I see has a fix now.
Thanks
-
I upgrade to 4.6.1 to 65bffe55 and it breaks the hotkey. I've rollback and it's ok.
There's nothing in the RetroPie update that would do that, but joypad handling/drivers are part of the kernel/OS updates. Try re-installing the
xpad
driver after the update (from the 'drivers' packages section).The working es_input.cfg on my previous version has an couple of lines:
this means the controllers was not configured in ES or the configuration was not saved - there's no specific controller configuration here.
-
Hi @mitu , thanks for helping.
So I've updated the xpad from source and get the same issues. Select and Start now work in ES, but still get the same issues in Retroarch for example I started the a game on the Megadrive and down in the bottom left corner it will normally say "XboxOne controller configure" but now it says "not configured as you enter a game"
I tried my new gamepad too (snes one) and same issues, my new config looks like this.
Do I restore my working old 4.6.1 build and upgrade again I wonder or another fresh build?
<?xml version="1.0"?> <inputList> <inputConfig type="joystick" deviceName="USB gamepad " deviceGUID="030000001f08000001e4000010010000"> <input name="a" type="button" id="1" value="1" /> <input name="b" type="button" id="2" value="1" /> <input name="down" type="axis" id="1" value="1" /> <input name="hotkeyenable" type="button" id="8" value="1" /> <input name="left" type="axis" id="0" value="-1" /> <input name="leftshoulder" type="button" id="4" value="1" /> <input name="right" type="axis" id="0" value="1" /> <input name="rightshoulder" type="button" id="5" value="1" /> <input name="select" type="button" id="8" value="1" /> <input name="start" type="button" id="9" value="1" /> <input name="up" type="axis" id="1" value="-1" /> <input name="x" type="button" id="0" value="1" /> <input name="y" type="button" id="3" value="1" /> </inputConfig> <inputConfig type="joystick" deviceName="Microsoft X-Box One pad (Firmware 2015)" deviceGUID="030000005e040000dd02000003020000"> <input name="a" type="button" id="0" value="1" /> <input name="b" type="button" id="1" value="1" /> <input name="down" type="hat" id="0" value="4" /> <input name="hotkeyenable" type="button" id="10" value="1" /> <input name="left" type="hat" id="0" value="8" /> <input name="leftanalogdown" type="axis" id="1" value="1" /> <input name="leftanalogleft" type="axis" id="0" value="-1" /> <input name="leftanalogright" type="axis" id="0" value="1" /> <input name="leftanalogup" type="axis" id="1" value="-1" /> <input name="leftshoulder" type="button" id="4" value="1" /> <input name="leftthumb" type="button" id="11" value="1" /> <input name="lefttrigger" type="button" id="6" value="1" /> <input name="right" type="hat" id="0" value="2" /> <input name="rightanalogdown" type="axis" id="3" value="1" /> <input name="rightanalogleft" type="axis" id="2" value="-1" /> <input name="rightanalogright" type="axis" id="2" value="1" /> <input name="rightanalogup" type="axis" id="3" value="-1" /> <input name="rightshoulder" type="button" id="5" value="1" /> <input name="rightthumb" type="button" id="12" value="1" /> <input name="righttrigger" type="button" id="7" value="1" /> <input name="select" type="button" id="8" value="1" /> <input name="start" type="button" id="9" value="1" /> <input name="up" type="hat" id="0" value="1" /> <input name="x" type="button" id="2" value="1" /> <input name="y" type="button" id="3" value="1" /> </inputConfig> </inputList>
-
When you configure your gamepad in ES, it should automatically generate a configuration for RetroArch, which is stored under
\\retropie\configs\all\retroarch-joypads
.You can check in that folder (via file shares) if the configurations are created. If they're not picked up by RetroArch, then it's a configuration issue - did you reset your RetroArch config or re-configured the location of the joypad configuration profiles ?
-
@mitu I've just checked that folder and it is empty. On my previous image (before the in-place upgrade) it shows my XboxOne controller in there.
I've not reset my RetroArch config or location as I don't know how.
When else could I try?
-
Uninstall xpad from drivers and install xpad-neo from github
-
Hi @hostolis thanks for helping, tried that with no joy.
Going to try this https://github.com/RetroPie/RetroPie-Setup/issues/1349#issuecomment-268843643
What does xpad-neo give me out of interest?
-
Yes! that fixed it!
-
xpad-neo fixed it or sth at the issue tracker on retropie-setup page on github?
-
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.