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

    Issues with FC30 Pro input after getting bluetooth working

    Scheduled Pinned Locked Moved Help and Support
    16 Posts 3 Posters 3.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.
    • J
      jpowell
      last edited by

      I've just built up a Retropie console and am attempting to use a pair of 8Bitdo FC30 Pro bluetooth controllers. I'm currently using Retropie 3.8 on a Pi3 Model B.

      I'd previously went about configuring the controllers manually in /opt/retropie/configs/all/retroarch.cfg and had them working across the different emulators when plugged in via usb. I just finished getting the controllers connected via bluetooth (and automatically connecting on startup utilizing the 10-local.rules bit), and now it seems I've lost the button configurations in most emulators. The D-pad seems to work still, but no other input is working, and the hotkey functionality is gone as well.

      I've searched for this particular issue to no avail, so I'm hoping there is an easy answer. This is my first foray into any sort of programming whatsoever, so if you do have a solution, simplest terms would be much appreciated.

      Thank you in advance.

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

        Did you register them in the correct mode ? Right shoulder + Start when powering on. Also make sure you are on firmware 1.68

        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 0
        • J
          jpowell
          last edited by

          Thanks for getting back to me so quickly. The firmware is up to date (1.68) and I've registered the controllers both ways that I know of ("power" and "power + r"). It doesn't seem to make a difference.

          I also already tried to set the values in /opt/retropie/configs/all/retroarch.cfg to "sdl", "udev" and "linuxraw" as suggested in this thread: https://retropie.org.uk/forum/topic/192/8bitdo-fc30-pro-works-in-es-but-not-retroarch/17. Unfortunately none of the combinations worked for me.

          I should note that the controllers seem to work fine on the dashboard of EmulationStation, and I do see the yellow text indicating that the controllers are registering as Player 1 / 2 (port 0 and 1), but everything else besides the D-pad loses any functionality when inside an emulator.

          Thanks,

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

            firmware 1.68 is not the latest AFAIK, so up to date would be a higher version number - the latest firmware have different button mappings in retroarch and don't work with our auto configuration script currently.

            you should leave the driver set to udev.

            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 0
            • J
              jpowell
              last edited by

              The download that I found from 8Bitdo indicated that 1.68 was the latest (upgraded my controllers from 1.66). I've reverted the drivers to their default values. Is there anything else you can think of that might be keeping the retroarch.cfg from registering while emulator are active?

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

                @jpowell said in Issues with FC30 Pro input after getting bluetooth working:

                everything else besides the D-pad loses any functionality when inside an emulator.

                I was getting this very same problem with an ipega bluetooth controller. I solved this way (I'm assuming you are comfortable with linux commands and know how to edit retroarch.cfg-like files):

                1. configure your problematic bluetooth 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!!! :D )
                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).
                12. open the file /opt/retropie/configs/all/retroarch-joypads/CONTROLLER-NAME.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.
                16. come back here to this post and let me know if it worked for you too! :D

                Cheers!

                • Useful topics
                • joystick-selection tool
                • rpie-art tool
                • achievements I made
                1 Reply Last reply Reply Quote 0
                • BuZzB
                  BuZz administrators
                  last edited by

                  please post the output of

                  cat ~/.emulationstation/es_input.cfg
                  cat ~/.emulationstation/es_temporaryinput.cfg
                  ls -la /opt/retropie/configs/all/retroarch-joypads
                  for file in /opt/retropie/configs/all/retroarch-joypads/*.cfg; do echo $file; cat $file; done
                  

                  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 0
                  • meleuM
                    meleu
                    last edited by meleu

                    for some reason I don't know, the output of jstest tool with my ipega controller doesn't match the numbers that RetroArch needs to the map the buttons.

                    I noticed that the numbers that RetroArch needs are the "$jstest_output_number + 9", for my ipega controller.

                    I was looking ~/RetroPie-Setup/scriptmodules/supplementary/emulationstation/configscripts/retroarch.sh, and noticed that the developer takes care of this for 8bitdo users at this line (the script adds +11).

                    As we can see in the code, it doesn't includes "FC30 Pro" [EDIT: I think "8Bitdo FC30"* should match 8Bitdo FC30 Pro, it's strange...]

                    • Useful topics
                    • joystick-selection tool
                    • rpie-art tool
                    • achievements I made
                    BuZzB 1 Reply Last reply Reply Quote 0
                    • BuZzB
                      BuZz administrators @meleu
                      last edited by

                      @meleu That doesn't help with this thread - there are differences between ids with the udev driver vs sdl also with other controllers - we are aware of it, and already have workarounds for some controllers.

                      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

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

                        @BuZz Oh, sorry. I may have been a bit wordy mentioning that script... I just wanted to share how I solved this same problem with a bluetooth controller ("everything else besides the D-pad loses any functionality when inside an emulator").

                        • Useful topics
                        • joystick-selection tool
                        • rpie-art tool
                        • achievements I made
                        1 Reply Last reply Reply Quote 0
                        • BuZzB
                          BuZz administrators
                          last edited by

                          on firmware 1.68 our configure script should set up the values correctly for RetroArch.

                          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 0
                          • J
                            jpowell
                            last edited by

                            @BuZz Unfortunately the way I've got things set up with the Pi, it would be a manual exercise of running the command you've indicated, then writing down the output and typing it back into a forum post. As I said, I'm very new to this, and I've managed thus far by simply moving my keyboard from the desktop to the Pi in between working on it (not set up on my network yet even). I can work on doing this, but it's not going to be a fun exercise.

                            To clarify: i already manually input all the button values (obtained via the initial emulation station configuration menu) into the retroarch.cfg file, and everything seems to be the same as had worked previously. The only thing to have changed was that I created / edited the 10-local.rules file to force the pi / controller bluetooth connection.

                            Is there some potential issue with the button values changing? Is there any way in the 8BitdoFC30Pro.cfg to force it to look at the retroarch.cfg for values?

                            Thanks for all the responses thus far, I'd be totally flailing in the dark without them.

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

                              @jpowell you don't need to do anything manually. You can do those commands over SSH btw once networked. You should let the system set up your controller automatically after configuring in es. Perhaps try from a fresh image, your manual configurations may be at fault

                              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 0
                              • BuZzB
                                BuZz administrators
                                last edited by

                                Also check out

                                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 0
                                • J
                                  jpowell
                                  last edited by

                                  @BuZz The manual configurations worked just fine prior to getting bluetooth working, so I don't believe that they are at fault. Unless there is some reason that they would have changed once the auto-connect to bluetooth was set up?

                                  I had watched the posed video as I was setting up the controllers, but because I don't have my Pi connected to my network, I opted for the manual bluetooth connection option, which also seems to have worked, but caused some issues with retroarch obviously.

                                  It seems like at this point it's time to try a fresh install, to see if maybe some small step was missed.

                                  Thanks for all the replies.

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    jpowell
                                    last edited by

                                    ISSUE RESOLVED.

                                    @BuZz Thank you for posting the video, as it convinced me to do a fresh install. The new tools that are detailed in the video specifically for 8Bitdo bluetooth controllers have worked flawlessly, and it took far less time to re-install than it would have to troubleshoot.

                                    Thanks to all who posted.

                                    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.