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

    Adafruit GPIO Arcade Controller not Working in MAME

    Scheduled Pinned Locked Moved Help and Support
    joystickmamenot responding
    39 Posts 6 Posters 6.6k 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.
    • rbakerR
      rbaker @MRInfected101
      last edited by

      @mrinfected101 The best thing to do is acquire a full "reference" set for 0.78. That way, you do not need to use clrmame.

      caver01C 1 Reply Last reply Reply Quote 0
      • caver01C
        caver01 @rbaker
        last edited by

        @rbaker I agree, and this is what I have done. But it can be a catch22--how do you know for certain that what is described as a reference set is what it claims to be? Testing the ROMs is one way I guess.

        My 4-player cocktail style cabinet built as a custom "roadcase"

        rbakerR 1 Reply Last reply Reply Quote 0
        • rbakerR
          rbaker @caver01
          last edited by

          @caver01 you can never be 100% but generally I find the ref sets are reliable. I guess my message is that hunting single roms from random places is the path to madness and frustration where the full set can sit somewhere and can be dipped into to find roms when needed. My early experince was launching a rom in mame and tab wouldn't do anything. I sat for ages then tried another rom and then another then another mame and so on. I then discovered this project and read the docs and became born again :)

          caver01C 1 Reply Last reply Reply Quote 1
          • caver01C
            caver01 @rbaker
            last edited by

            @rbaker SO true.

            My 4-player cocktail style cabinet built as a custom "roadcase"

            1 Reply Last reply Reply Quote 0
            • M
              MRInfected101
              last edited by

              Well I did the validation and physically look at my ROMS there has been no change so does that mean my ROMsets were perfect or did I do something wrong?

              caver01C 1 Reply Last reply Reply Quote 0
              • A
                alexraffa
                last edited by

                Hallo everyone!

                I just complete the build of an arcade style control panel, using retrogame and mech. joystick and buttons. (1 joystik + 6 buttons) as follows:
                1 button 1UP coin (retrogame set to send value "5")
                1 button 1UP start(retrogame set to send value "1")
                up, down, left, right joystick
                A
                B
                X
                Y
                buttons
                Configured in emulation station as
                1 button select
                1 button start
                up, down, left, right joystick
                A
                B
                X
                Y
                As may main focus will be mame lr-mame2003 I want to assign 8in mame only) select to coin 1 and start as 1P start

                Everything seems to work, except that 1coin and 1p start do not seem to have any effect in mame.
                In emustation I can use them to navigate the menus etc.. just fine...
                I tried to do a core map in retroarch config, but I may be missing something as it has no effect.
                How to troubleshoot?
                I have a ps3 style usb controller, and with it I con control mame coin and 1p start, but have not found a way to replicate the behaviour

                Hints more than welcome!

                caver01C 1 Reply Last reply Reply Quote 0
                • caver01C
                  caver01 @alexraffa
                  last edited by

                  @alexraffa Your post has nothing to do with Adafruit arcade controller. Please do not hijack this thread with your question.

                  Post a new thread, but READ THIS FIRST.

                  My 4-player cocktail style cabinet built as a custom "roadcase"

                  1 Reply Last reply Reply Quote 0
                  • caver01C
                    caver01 @MRInfected101
                    last edited by

                    @mrinfected101 I am at a loss about why you joystick does not work. It sounds like you are confident you have the right roms for the emulator you are trying. I guess the joystick could be wired incorrectly, or perhaps it is a configuration problem with the Adafruit setup. I wonder if maybe there was a misleading suggestion in online guide on Lynda.com. Sorry. I am out of ideas.

                    My 4-player cocktail style cabinet built as a custom "roadcase"

                    1 Reply Last reply Reply Quote 0
                    • M
                      MRInfected101
                      last edited by

                      Well last night I was testing other things with retropie, and ended up plugging in my X-box one control in through USB, configured the controls in emulation station, launched one of my ROMs (roboroto) and it was working just fine, and the joystick works fine in emulation station before launching a ROM and it doesn't when it launches so that is where I'm at.

                      caver01C 1 Reply Last reply Reply Quote 0
                      • caver01C
                        caver01 @MRInfected101
                        last edited by

                        @mrinfected101 I had a thought. . . in another thread a couple days ago there was a user who had a keyboard controller wired up to the Player1 joystick. Everything worked in ES, but in lr-mame2003, left and right failed. Turns out, they had the joystick wired backwards. Left was wired to right and so on.

                        You normally would not think it matters because you are mapping the controls, right? But in MAME, the emulator was accepting two inputs at the same time--the virtual retropad mapping from RetroArch/ES configuration, and the RAW keystrokes. This dual input situation in mame2003 is documented in other threads and is rarely a problem. Anyway, we suspect that when they were pushing LEFT on the joystick, the retropad was sending LEFT inputs, but at the same time, the raw key that was sent was RIGHT--the opposite because it was wired backward. MAME was also seeing this input and the result was cancelling the movement seen by the game.

                        Is your joystick perhaps wired arbitrarily/incorrectly? In other words, regardless of how you have it setup in ES and Retroarch, does pushing UP actually send UP key, or is it sending something else? If you were to bring up a command prompt, could you move the cursor with your joystick?

                        My 4-player cocktail style cabinet built as a custom "roadcase"

                        1 Reply Last reply Reply Quote 0
                        • M
                          MRInfected101
                          last edited by MRInfected101

                          @caver01 Well when I open the command prompt its not displaying any command lines when I press keys, when I configured the controls in command prompt I did as follows, downloaded the retrogame git clone, then ls, enter, cd Adafruit-Retrogame/ , enter, cd configs, enter, nano retrogame.cfg, enter, then configured the GPIO pins to controls, ex: pin 16 is left on the stick.

                          caver01C 1 Reply Last reply Reply Quote 0
                          • caver01C
                            caver01 @MRInfected101
                            last edited by

                            @mrinfected101 Well, you might not notice everything the keys are doing at a command prompt unless you know exactly what to expect. For instance, player one directions are just the arrow keys by default in MAME, so unless you know that, you might not notice what moving the joystick is doing at a command prompt. Other button defaults may include LeftControl, or LeftAlt, space, etc, so these also may not be obvious. I was just wondering if you can even prove that they are actually sending inputs.

                            One idea you could try is to run the advk utility from the bin directory of advancemame (any version) This should let you test whether your arcade controls are generating keystrokes at least.

                            My 4-player cocktail style cabinet built as a custom "roadcase"

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              MRInfected101 @caver01
                              last edited by

                              @caver01 When I was mapping my keys, I was able to check they were sending the virtual key outputs, is that what you mean?

                              caver01C 1 Reply Last reply Reply Quote 0
                              • caver01C
                                caver01 @MRInfected101
                                last edited by caver01

                                @mrinfected101 Yes, that is part of it--you definitely need to be certain that when you trigger an input, that it sends a virtual keypress that you intend. The second part from above is the fact that MAME2003 expect certain keyboard defaults, regardless of how you map things in retroarch. For most people, the retroarch mappings override, but for keyboard controller users like us, it is important to be aware of that this version of mame actually sees two inputs at once. This is basically a bug that has been allowed to languish because it does not have any serious impact to the emulation and there are workarounds easier than than fixing it. SO, this second part may be an issue. If you have RIGHT ARROW mapped to the left movement of your joystick which would be backwards, retroarch will send the corrected, remapped MOVE LEFT input (using a virtual retrogame controller) but MAME will simultaneous see a raw keypress RIGHT ARROW which it interprets as right movement. In other words, the contradiction would cancel itself and it would seem like your joystick does not work.

                                It might be a big coincidence if you are setup this way, but it did just come up on another thread within the past couple of weeks, and I know how easy it is to get things wired in reverse when looking at a joystick from the bottom.

                                My 4-player cocktail style cabinet built as a custom "roadcase"

                                1 Reply Last reply Reply Quote 0
                                • M
                                  MRInfected101
                                  last edited by

                                  So I should try remapping the joystick in emulation station, also what about the buttons, because those aren't working either

                                  caver01C 1 Reply Last reply Reply Quote 0
                                  • caver01C
                                    caver01 @MRInfected101
                                    last edited by

                                    @mrinfected101 If you haven't remapped back to your adafruit keyboard controller connected buttons since trying your xbox controller, yes, I would.

                                    My 4-player cocktail style cabinet built as a custom "roadcase"

                                    1 Reply Last reply Reply Quote 1
                                    • M
                                      MRInfected101
                                      last edited by

                                      @caver01 I've remapped the controls, and tried inverting the controls, still have nothing...

                                      caver01C 1 Reply Last reply Reply Quote 0
                                      • caver01C
                                        caver01 @MRInfected101
                                        last edited by

                                        @mrinfected101 Well, I am at a loss. Since your original post says that the emulators work with the keyboard, just not with the joystick, I gotta believe there is something amiss with the adafruit/retrogame configuration. In some ways, RetroPie is working, but your adafruit stuff isn't.

                                        I know controller setup is the most common challenge people face with RetroPie, but this one might be better asked of Adafruit. Perhaps they have some specific suggestions for when this comes up. I would definitely open a dialog on their forum if you haven't already.

                                        My 4-player cocktail style cabinet built as a custom "roadcase"

                                        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.