RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Adding a 9th button to GPIO

    Scheduled Pinned Locked Moved Help and Support
    retropiebutton mappinggpio
    49 Posts 7 Posters 12.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      theRog05
      last edited by

      Hey guys. It's been a while, but I came back to this post to get my new system set up. I got my two sets of joysticks set up, but my js1 (second set) has an issue. Whenever I press the hotkey button, it shuts down the pi. And if I press it again, it starts back up again. I did a jstest /dev/input/js1 in terminal and all buttons are recognized, but as soon as I hit that hotkey (key 8: even in terminal) the pi turns off. Any clue to what's going on? I am using my same set up, just a new install of retropi. Thanks in advance!

      mituM 1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator @theRog05
        last edited by

        @therog05 Where did you wire the button - which GPIO pin ? Looks like you connected to the Pin 5 / 6, which are involved in powering on/off the PI - see https://elinux.org/RPI_safe_mode#Wake_from_Halt.5B1.5D.

        1 Reply Last reply Reply Quote 0
        • T
          theRog05
          last edited by

          @mitu I'll have to check tomorrow. It used to work fine with my other build and I didn't change any wires around. Maybe something is shorting out? Gotta catch some zzz's right now but I'll check tomorrow.

          1 Reply Last reply Reply Quote 0
          • T
            theRog05
            last edited by

            So here's where I'm at:

            I started with pulling apart the cabinet to check the wires going to that button. I followed the wires back to the GPIO pins and found that, that button is connected to GPIO3 (Pin 5). Looking at a diagram, there doesn't seem to be anything special with this pin other than it is the HK (hotkey) button for a two person layout (according to RecallBox).

            After some digging through folders and files, I found a "shutdown.py" script in the home/pi/scripts folder. I read the code and it shows that the shutdown happens on that pin 5! I got excited that I might have found the problem, so I researched a little and found someone that ran sudo nano /etc/rc.local and commented out sudo python /home/pi/scripts/shutdown.py &. I then rebooted and unfortunately, that didn't work.

            So I figured maybe I would just rename the shutdown.py file in case something else was calling it. This also, unfortunately did not work.

            Lastly, I noticed that when I pressed that button again while in the terminal, the command logout showed. Is it possible that there is another script out there called "logout", or is it just showing that it's logging out because it ran some shutdown script in the background?

            Anyways, I'm at another roadblock with this an was hoping some of you out there might have a solution. Anyways, I hope you're all having a great night and again, thank you so much for your continuous help in this forum.

            -Cheers!

            mituM 1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator @theRog05
              last edited by

              @therog05 I think you have a script running that reboots on PIN5 pull up/down. That being said, you should start with a clean image of RetroPie - we don't supportd 3rd party images - and see if you get the same problem.

              1 Reply Last reply Reply Quote 0
              • T
                theRog05
                last edited by

                Thanks for the input, @mitu. I've put a lot of time into what I have right now, so I may spend some more time messing with it. If I don't figure it out, I'll just disable the one hotkey button since I don't really need a player 2 hotkey. I would much rather figure out the problem though. So we shall see. Thanks again.

                1 Reply Last reply Reply Quote 0
                • P
                  pmferraro @simonster
                  last edited by

                  @simonster said in Adding a 9th button to GPIO:

                  I have just tried this method and it worked for me completely:

                  Install MK_Arcade_Joystick from the drivers in the retropie setup. Then exit Emulation Station by pressing F4

                  rm -r mk_arcade_joystick_rpi
                  git clone https://github.com/recalbox/mk_arcade_joystick_rpi.git -b hotkeybtn
                  sudo mkdir /usr/src/mk_arcade_joystick_rpi-0.1.5.1/
                  cd mk_arcade_joystick_rpi/
                  nano dkms.conf

                  change the line that begins PACKAGE_VERSION to read

                  PACKAGE_VERSION="0.1.5.1"

                  Press Ctrl+X and then Y and Enter to exit and save changes

                  sudo cp -a * /usr/src/mk_arcade_joystick_rpi-0.1.5.1/
                  sudo dkms build -m mk_arcade_joystick_rpi -v 0.1.5.1
                  sudo dkms install -m mk_arcade_joystick_rpi -v 0.1.5.1 --force

                  Once installed, restart the Pi using the following command

                  sudo shutdown -r -t 0 now

                  WORKS. THANK YOU

                  1 Reply Last reply Reply Quote 0
                  • T
                    theRog05
                    last edited by theRog05

                    I'm back at it again. I installed a while new setup but I'm having issues with the kernel headers again. I followed the steps to build and install 0.1.5.1 but I'm getting this error when trying to build...

                    Error! Bad return status for module build on kernel: 4.19.66-v7+.

                    Any ideas? Thanks!

                    mituM 1 Reply Last reply Reply Quote 0
                    • mituM
                      mitu Global Moderator @theRog05
                      last edited by

                      @theRog05 The driver is not compatible with Linux Kernel versions > 4.14 and the Github repository is not updated anymore . The driver version included in RetroPie has this fixed, but it's using the main branch and not the hotkeybtn branch - which I think you might need.
                      However, RetroPie should still be at kernel version 4.14 - have you used rpi-update to update your installation ?

                      T 1 Reply Last reply Reply Quote 0
                      • T
                        theRog05 @mitu
                        last edited by

                        @mitu I have not tried rpi-update yet. I can do that now.

                        mituM 1 Reply Last reply Reply Quote 0
                        • mituM
                          mitu Global Moderator @theRog05
                          last edited by mitu

                          @theRog05 I wasn't suggesting to use that, since it will upgrade your Linux Kernel. What version of RetroPie are you using ?

                          T 3 Replies Last reply Reply Quote 0
                          • T
                            theRog05 @mitu
                            last edited by

                            @mitu oh. Gotcha. I won't do that then.

                            1 Reply Last reply Reply Quote 0
                            • T
                              theRog05 @mitu
                              last edited by theRog05

                              @mitu I'm at a loss here. Maybe I should reflash the SD card? I was at one point getting an error saying "kernel headers for 4.14.79-v7+ cannot be found" when trying to run this command sudo dkms build -m mk_arcade_joystick_rpi -v 0.1.5.1

                              1 Reply Last reply Reply Quote 0
                              • T
                                theRog05 @mitu
                                last edited by theRog05

                                @mitu currently running RetroPie version 4.4.4

                                mituM 1 Reply Last reply Reply Quote 0
                                • mituM
                                  mitu Global Moderator @theRog05
                                  last edited by

                                  @theRog05 If you're re-starting again, then get the 4.5.1 image from https://retropie.org.uk/download, which should have the necessary pre-requisites installed.

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post

                                  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.