Please do not post a support request without first reading and following the advice in

Gamepad Config - Buttons not recognized - Pi Zero

  • I didnt know how to access it via file shares.

    Therefore I had to view it via nano and use a picture-to-text-tool to convert it into text form.

    I hope it will suffice.

  • Global Moderator

    Did you try to configure the gamepad in EmulationStation, after starting it with --debug ? I see the gamepad is detected:

    	Feb 13 16:23:16 lulZ:	Added unconfigured joystick USD Gamepad (G111D: 03000000790000001100000010010000, instance ID: O dtuice ihdtx: 0)

  • I dont think that I did

  • I tried again.

    This time it even recognized the first button.

    But then there was no more response.

    I couldnt even enter command line with F4.

  • Global Moderator

    My guess is that the USB hub disconnects during configuration. If you have Wi-Fi enabled, can you also enable SSH and try connecting to the system before you do the configuration, then run dmesg -w and look to see if any error messages appear on the screen during the configuration ?

  • So I enabled WIFI and SSH and successfully connected with the Pi using WinSCP.

    It needed to reboot three time because my keyboard was not recognized again.

    I ran dmesg -w but there were no obvious error messages.

  • Global Moderator

    Can you run dmesg > $HOME/RetroPie/roms/dmesg.txt after booting and then browse to \\retropie\roms\ and post the dmesg.txt file's contents on ?

  • I did what you asked.

  • Global Moderator

    Looking at the system log you posted, I don't see any errors. The hub is detected and so is the keyboard and the gamepad. There are no error or disconnects like I imagined.

  • Gotta be honest... I dont know what to do next...

    Could it be an issue with the Raspberry Pi Zero itself?

  • Global Moderator

    I don't think the Pi is faulty.
    You could manually create the input configuration - based on the values reported by jstest - and adding it to \\retropie\configs\all\emulationstation\es_input.cfg.

    Can you add the following lines to the file, before the last line with </inputList>:

    <inputConfig type="joystick" deviceName="Sony Interactive Entertainment Wireless Controller" deviceGUID="030000004c050000cc09000011810000"
        <input name="rightanalogup" type="axis" id="4" value="-1"/>
        <input name="rightanalogdown" type="axis" id="4" value="1"/>
        <input name="rightanalogright" type="axis" id="3" value="1"/>
        <input name="rightanalogleft" type="axis" id="3" value="-1"/>
        <input name="pageup" type="button" id="4" value="1"/>
        <input name="pagedown" type="button" id="5" value="1"/>
        <input name="up" type="hat" id="0" value="1"/>
        <input name="left" type="hat" id="0" value="8"/>
        <input name="down" type="hat" id="0" value="4"/>
        <input name="right" type="hat" id="0" value="2"/>
        <input name="select" type="button" id="8" value="1"/>
        <input name="start" type="button" id="9" value="1"/>
        <input name="y" type="button" id="3" value="1"/>
        <input name="x" type="button" id="2" value="1"/>
        <input name="b" type="button" id="0" value="1"/>
        <input name="a" type="button" id="1" value="1"/>
        <input name="leftanalogdown" type="axis" id="1" value="1"/>
        <input name="leftanalogup" type="axis" id="1" value="-1"/>
        <input name="leftanalogright" type="axis" id="0" value="1"/>
        <input name="leftanalogleft" type="axis" id="0" value="-1"/>

    This should configure a PS4 Dualshock controller - see if, after adding these lines and restarting EmulationStation, your PS4 controller is recognized and functioning.

  • I used WinSCP to SSH into the Pi.

    I could not find the directory that you suggested.

    Did I do something wrong?

  • Global Moderator

    The \\retropie\configs\all\emulationstation path is for using File Shares to access the Pi.
    If you're using SSH/SCP, then the same folder can be accessed at $HOME/.emulationstation or at /opt/retropie/configs/all/emulationstation.

  • I added the lines.

    The es_input.cfg file looks now like this.

    But the PS4-Controller is still not recognized after rebooting.

  • Global Moderator

    The file looks right, but I still can't pinpoint why this doesn't work.
    Can you run again emulationstation --debug and then post the log (now with the new configuration file) ?

  • Here is the new es_log.txt

    After running emulationstation --debug I tried to configure the PS4-Controller.

    It recognized the first button press but after that I got a error message.

    I recieved that message a couple of times now.

    I already checked the gpu_split which seemed to be ok.
    It was set to the same values as in the documentation.



  • Global Moderator

    I don't think the gpu_mem is at fault, the RetroPie image already has this configuration.
    The log file shows ES shutting down cleanly - are you sure it's the one from the crash ?

    Try updating your RetroPie packages - - if you haven't done so.

  • No it is not.

    It was from before the crash.

    I tried again and another crash happend.

    Here is the es_log.txt file from that new crash.

  • I just did the update but nothing changed.

  • I tried doing a new installation on my second micro-sd-card again.

    But I still got the same issue (gamepad recognized but emulationstation freezes on button press).

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.