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

    8bitdo Zero Gamepad mapping problem

    Scheduled Pinned Locked Moved Help and Support
    8bitdo
    23 Posts 4 Posters 12.7k 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.
    • F
      frudda
      last edited by

      version of retropi is: retropie-4.0-rpi2_rpi3
      My NES 30 Pro controller works perfect but had to use a config file from the internet to get it working

      1 Reply Last reply Reply Quote 0
      • BuZzB
        BuZz administrators
        last edited by BuZz

        I don't have one of these devices, so I am unable to advise further - I had hoped the hack mode would work in one of the modes. You could also make sure you have the latest firmware for the controller / if not update and try both mapping modes again.

        You can also try mapping the controller in RGUI directly (launch retroarch from RetroPie menu - use a keyboard to navigate). If you can get it to work that way I will be able to reference the configuration and fix up our generation scripts.

        To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

        1 Reply Last reply Reply Quote 1
        • BuZzB
          BuZz administrators
          last edited by

          To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

          FloobF 1 Reply Last reply Reply Quote 1
          • FloobF
            Floob @BuZz
            last edited by

            @frudda Does your config file look like this?
            http://pastebin.com/raw/vjWVxztR

            Please read the Docs before asking a new question.
            RetroPie Help Guides: https://goo.gl/3gcNsT

            F 1 Reply Last reply Reply Quote 0
            • F
              frudda @Floob
              last edited by frudda

              @Floob

              Hey my config does not look like that.
              If i edit the controls from nes and access retroarch from there I could get it to work.
              But I have two controls so it only works in input 2.
              Saved the settings, restarted and settings gone :/

              1 Reply Last reply Reply Quote 0
              • FloobF
                Floob
                last edited by

                Please complete this:
                https://retropie.org.uk/forum/topic/3/read-this-first

                Please read the Docs before asking a new question.
                RetroPie Help Guides: https://goo.gl/3gcNsT

                1 Reply Last reply Reply Quote 0
                • meleuM
                  meleu
                  last edited by meleu

                  @frudda
                  I have this delicious 8Bitdo Zero GamePad :D

                  I always start it with R+Start to play on RetroPie or on Android.

                  Here is my config file:
                  https://raw.githubusercontent.com/meleu/share/master/8BitdoZeroGamePad.cfg

                  As far as I know if the 8bitdo hack is on, it should deal with it correctly, but I got this controller before the 8bitdo hack and solved this way (I'm assuming you are comfortable with linux commands and know how to edit retroarch.cfg-like files):

                  1. configure your 8Bitdo Zero controller to be the player2 (input_player2_joypad_index).
                  2. configure a working joystick as player1 (input_player1_joypad_index).
                  3. launch any game with RetroArch.
                  4. invoke RGUI (Select+X on player1 joystick).
                  5. go to Settings -> Input-> Input User 2 Binds
                  6. configure the buttons as you like (hey look!! the buttons are working!!!)
                  7. go back to the RGUI Main Menu.
                  8. select Save New Config. PAY ATENTION AT THE BOTTOM LEFT CORNER OF THE SCREEN AND MEMORIZE THE FILENAME SHOWED THERE!
                  9. go to the shell prompt
                  10. open the file saved on step 8 (you memorized the filename, right?)
                  11. write down the numbers after every input_player2_BUTTON-NAME_btn (substitute BUTTON-NAME with: a, b, y, x, l, r, start, select, l2, r2. You will notice that the numbers are the default number +11).
                  12. open the file /opt/retropie/configs/all/retroarch-joypads/8BitdoZeroGamePad.cfg (substitute CONTROLLER-NAME with the obvious).
                  13. put the numbers you wrote after their respective input_BUTTON-NAME_btn (note that there aren't that playerN string here).
                  14. save this file.
                  15. start a game to test it.

                  BONUS TIP: it's a good idea to disable select+start to exit the emulator! These two buttons are very close to each other in 8Bitdo Zero and you can accidentally press them together.

                  • Useful topics
                  • joystick-selection tool
                  • rpie-art tool
                  • achievements I made
                  1 Reply Last reply Reply Quote 1
                  • F
                    frudda
                    last edited by

                    Thank you for a very detailed guide.
                    The input information I put into the 8BitdoZeroGamePad.cfg
                    I could also read my saved Arch file from putty, and the mapping is the same as your config file
                    Now the 8Bitdo Zero Gamepad always connect as #1 strange thing is it dont seem to read from the 8BitdoZeroGamePad.cfg even thought it should, but it is connect as #1. my other controller got index #0 but shows conntected as #1
                    If i change controller to the right player number in Arch it dosnt help

                    1 Reply Last reply Reply Quote 0
                    • F
                      frudda
                      last edited by frudda

                      my config files

                      8BitdoNES30Pro.cfg
                      http://pastebin.com/M431a1Jx

                      8BitdoZeroGamePad.cfg
                      http://pastebin.com/F7hu60yQ
                      tested index 1-2

                      retroarch.cfg
                      http://pastebin.com/PF3tjCRP

                      meleuM 1 Reply Last reply Reply Quote 0
                      • meleuM
                        meleu @frudda
                        last edited by

                        @frudda said in 8bitdo Zero Gamepad mapping problem:

                        8BitdoNES30Pro.cfg
                        http://pastebin.com/M431a1Jx

                        The 3rd line is wrong (missing = sign) and is unnecessary here:

                        input_player1_joypad_index "0"
                        

                        You should remove it from this file. The input_playerN_joypad_index should be set in the retroarch.cfg file, not in the joystick buttons mapping one.

                        8BitdoZeroGamePad.cfg
                        http://pastebin.com/F7hu60yQ

                        The 1st line is unnecessary here:

                        input_player2_joypad_index = "2"
                        

                        Remove it too. Same reasons above.

                        retroarch.cfg
                        http://pastebin.com/PF3tjCRP

                        You are using config_save_on_exit = "true". This is a certainty that there will be confusion at some point. :-)
                        Do you really need it?

                        • Useful topics
                        • joystick-selection tool
                        • rpie-art tool
                        • achievements I made
                        1 Reply Last reply Reply Quote 1
                        • FloobF
                          Floob
                          last edited by

                          One issue there is your retroarch.cfg has been saved over, looks like you have set it to save on exit
                          config_save_on_exit = "true"

                          That will cause issues.

                          Please read the Docs before asking a new question.
                          RetroPie Help Guides: https://goo.gl/3gcNsT

                          1 Reply Last reply Reply Quote 1
                          • F
                            frudda
                            last edited by

                            Thanks guys, i will report back in the morning.
                            I can take a fresh retroarch.cfg and replace it
                            then fix the index config and remove it from the gamepads config
                            Reason why I used config_save_on_exit is because i wanted full screen on all games
                            but I guess its better to add it specific on top in nes folder retroarch.cfg config file.

                            1 Reply Last reply Reply Quote 0
                            • FloobF
                              Floob
                              last edited by

                              @frudda You can set video output using the configuration editor.
                              https://github.com/retropie/retropie-setup/wiki/Configuration-Editor

                              Please read the Docs before asking a new question.
                              RetroPie Help Guides: https://goo.gl/3gcNsT

                              1 Reply Last reply Reply Quote 1
                              • F
                                frudda
                                last edited by frudda

                                retroarch.cfg is now back to normal and full screen changed in configuration editor

                                I added
                                input_player1_joypad_index = "0"
                                input_player2_joypad_index = "1"
                                in retroarch.cfg
                                they are removed in controller cfg

                                I also removed the detected from boot on bluetooth.
                                I start the NES 30 Pro first
                                after Zero Gamepad.

                                In Nes its working controller 2 now if i check retroarch input2 in Nes game. The input is declared. but wonder if its my old settings here
                                Because if I switch to snes and play controller 2. All buttons is not working and have wrong buttons on input2 declared

                                Now both controllers are detected as port #1

                                1 Reply Last reply Reply Quote 0
                                • F
                                  frudda
                                  last edited by

                                  Changed

                                  input_driver = "udev"
                                  To
                                  input_driver = "sdl"

                                  On configs including controller cfg, now it works!
                                  The retroarch on "udev" reconfigure the controller i guess to wrong mapping?

                                  Found this post
                                  https://retropie.org.uk/forum/topic/192/8bitdo-fc30-pro-works-in-es-but-not-retroarch/14

                                  Thanks to everybody

                                  1 Reply Last reply Reply Quote 1
                                  • 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.