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 FC30 Pro works in ES but not Retroarch

    Scheduled Pinned Locked Moved Help and Support
    40 Posts 11 Posters 27.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.
    • FloobF
      Floob @tamper
      last edited by

      @tamper said in 8Bitdo FC30 Pro works in ES but not Retroarch:

      Yeah, everything links back either to that one YouTube video or the reddit post. Tried both and neither work for me, unfortunately.

      Can you post your controller file that is in /opt/retropie/configs/all/retroarch-joypads/ onto pastebin.com so I can read it?

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

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

        Sure - it's here : http://pastebin.com/7nQNgBh6

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

          @tamper Can you try this one?
          http://pastebin.com/raw/i3atsUbc

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

          T 1 Reply Last reply Reply Quote 0
          • T
            tamper @Floob
            last edited by

            @Floob Still no luck :( The FC30 Pro runs fine up until the emulator actually loads, then nothing.

            A USB-connected SNES-style pad works (almost) fine, so the problem must be specific to the FC30.

            (I say almost fine - the ability to return to ES with start+select seems to have gone away completely even from the wired pad).

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

              Which emulator are you trying? Use the Megadrive as a test option, make sure you are using a libretro based one.
              Which firmware version are you using on the FC30 Pro - and how are you turning it on - just holding the power button on the base?

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

              T 1 Reply Last reply Reply Quote 0
              • D
                DavidIQ
                last edited by DavidIQ

                Just want to jump in and say that I'm having the same exact problem using the same hardware. The NES30 controller (or FC30 controller, I have one of each) is paired and working fine with ES but not with the games. Some of the Game Boy Color games I have respond at least to the D-Pad, but the A and B buttons seem to have mapped themselves to Select and Start.

                T 1 Reply Last reply Reply Quote 0
                • T
                  tamper @Floob
                  last edited by

                  @Floob Thanks Floob. I'm using 1.59 firmware on the FC30 Pro. Tried with MegaDrive, NES, and SNES - all the same results. And turning on the FC30 Pro with just the power button only.

                  Pairing is no problem in ES, which makes me think I'm turning it on correctly.

                  FloobF 1 Reply Last reply Reply Quote 0
                  • T
                    tamper @DavidIQ
                    last edited by

                    @DavidIQ Hey DavidIQ, might help you to know that the FC30 and the NES30 are not the same as the FC30 Pro, especially when it comes to configuration. If you're looking up settings for the FC30 Pro, that might be where you're having trouble.

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

                      @tamper If you have updated your controller file correctly, can you try the 1.58 firmware?
                      Thats the only difference left between my setup and yours I think.

                      Bear in mind that ES and Retroarch use different files to map the controller.
                      Maybe you can use jstest to confirm your buttons are reporting as they should.

                      I'm also assuming you havent tweaked any retroarch.cfg files.

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

                      1 Reply Last reply Reply Quote 0
                      • P
                        palbrecht @Rion
                        last edited by

                        @Rion said in 8Bitdo FC30 Pro works in ES but not Retroarch:

                        Have you also tried changing this in the cfg file?

                        input_driver = "udev"
                        To
                        input_driver = "sdl"

                        Same Problem with the NEs30 but after i edited the file "/opt/retropie/configs/all/retroarch.cfg"
                        and replace the "udev" with "sdl". After that, it works perfekt!

                        I have the firmware 1.69 and a fresh clean install of Retropi 3.7.

                        The Udev missconfigured the keys, i thing.... When you look at your "/opt/retropie/configs/all/retroarch-joypads/8BitdoNES30Pro.cfg" file, you will see that the Start Button is on 22. But when you test your Controler with "jstest /dev/input/js0" you can see that is the button 11.

                        After i set the udev to sdl the bindings are okay now.

                        http://pastebin.com/Qdi5pivh

                        1 Reply Last reply Reply Quote 1
                        • D
                          DavidIQ @tamper
                          last edited by DavidIQ

                          @tamper said in 8Bitdo FC30 Pro works in ES but not Retroarch:

                          @DavidIQ Hey DavidIQ, might help you to know that the FC30 and the NES30 are not the same as the FC30 Pro, especially when it comes to configuration. If you're looking up settings for the FC30 Pro, that might be where you're having trouble.

                          Nah as I said it's the same exact hardware. I simply left out the pro part by accident, but it's the same controller. Also the firmware on mine is 1.69. This problem seems to be happening to a few others with the latest RetroPie and the 8Bitdo controllers. There's a few comments on the YouTube videos. I'll try switching the input_driver setting and see if that takes care of it.

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

                            What happens if you set these values in /opt/retropie/configs/all/retroarch.cfg

                            # Input driver. Depending on video driver, it might force a different input driver.
                            # input_driver = sdl
                            
                            # Input device driver. (Valid: linuxraw, sdl, dinput)
                            input_joypad_driver = "udev"
                            

                            to

                            # Input driver. Depending on video driver, it might force a different input driver.
                            # input_driver = udev
                            
                            # Input device driver. (Valid: linuxraw, sdl, dinput)
                            input_joypad_driver = "udev"
                            

                            Does the file I posted work then?
                            http://pastebin.com/raw/i3atsUbc

                            I'm not suggesting this is an ideal fix, but I'm just trying to see where the problem is occurring.
                            I really need to find mine to test it out in 3.7 now.

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

                            RionR 1 Reply Last reply Reply Quote 0
                            • RionR
                              Rion
                              last edited by

                              Same problem here.
                              Chang from udev to sdl in
                              "/opt/retropie/configs/all/retroarch-joypads/8BitdoNES30Pro.cfg"

                              Change's nothing and it reverts back to udev when you restart and creates a "8BitdoNES30Pro.cfg.backup" file. So you have to make the changes in Retroarch.cfg.

                              Have not tried to add your changes that you posted yet.

                              FBNeo rom filtering
                              Mame2003 Arcade Bezels
                              Fba Arcade Bezels
                              Fba NeoGeo Bezels

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

                                @Floob does udev work for you when generating config with latest retropie-setup ? I did change the strings we check for have for "renumbering" for udev, but perhaps I broken something (I simplified it by using wildcards).

                                Please can you all post me your ~/.emulationstation/es_input.cfg files

                                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 0
                                • FloobF
                                  Floob @BuZz
                                  last edited by

                                  @BuZz I'll get a clean 3.7 and find my FC30 Pro tonight.
                                  I'll post up the resulting files.

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

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

                                    Ok, just ran through it. Seems fine to me?
                                    My resulting button codes seem to match these:
                                    https://github.com/libretro/retroarch-joypad-autoconfig/blob/master/udev/8Bitdo-FC30-Pro-GamePad-Bluetooth-Mode(POWER)-Mode(POWER%2BR1).cfg

                                    • Clean 3.7
                                    • Used FC30 Pro (Firmware 1.68)
                                    • Auto restarted to resize
                                    • F4 to CLI from ES
                                    • Followed manual bluetooth steps #1 and #2 here:
                                      https://github.com/retropie/retropie-setup/wiki/Setting-up-a-Bluetooth-controller
                                    • Didnt update RetroPie script, just used 3.7
                                    • Paired and connected to the FC30Pro without issue (although name didnt appear during the setup just the MAC)
                                    • went back to ES from the CLI (as opposed to rebooting as I can never get ES to reconnect to BT without forcing it)
                                    • Configured joypad in ES
                                      For some reason it doesnt detect the R2/L2 buttons although I'm sure it used to.

                                    As an aside it is logging that there is no .srm when I start a game
                                    retro_read_file: Failed to open /home/pi/RetroPie/roms/megadrive/Sonic The Hedgehog (W) (REV01) [!].srm: No such file or directory

                                    Ran about 4 MegaDrive games with picodrive and all seemed to detect my buttons and hotkeys without issue.

                                    /opt/retropie/configs/all/retroarch-joypads/8BitdoFC30Pro.cfg
                                    http://pastebin.com/raw/u69cDDJ4

                                    es_input.cfg
                                    http://pastebin.com/raw/jDPPkCsA

                                    es_temporaryinput.cfg
                                    http://pastebin.com/raw/QSk48vyA

                                    es_log.txt
                                    http://pastebin.com/raw/hB3qhiQ6

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

                                    1 Reply Last reply Reply Quote 0
                                    • D
                                      DavidIQ
                                      last edited by

                                      Have you tried SNES or Game Boy Color games?

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

                                        @Floob said in 8Bitdo FC30 Pro works in ES but not Retroarch:

                                        What happens if you set these values in /opt/retropie/configs/all/retroarch.cfg

                                        # Input driver. Depending on video driver, it might force a different input driver.
                                        # input_driver = sdl
                                        
                                        # Input device driver. (Valid: linuxraw, sdl, dinput)
                                        input_joypad_driver = "udev"
                                        

                                        to

                                        # Input driver. Depending on video driver, it might force a different input driver.
                                        # input_driver = udev
                                        
                                        # Input device driver. (Valid: linuxraw, sdl, dinput)
                                        input_joypad_driver = "udev"
                                        

                                        Does the file I posted work then?
                                        http://pastebin.com/raw/i3atsUbc

                                        I'm not suggesting this is an ideal fix, but I'm just trying to see where the problem is occurring.
                                        I really need to find mine to test it out in 3.7 now.

                                        This fixes the SDL messages and button configuration in RetroArch. I still see the errors about SDL keys not recognized in Emulation Station but once a start an RetroArch core and then quit to command line there are no errors . Or i think there are none because a cant see the console.

                                        I tried editing the files in

                                        "/opt/retropie/configs/all/retroarch-joypads/"
                                        8BitdoNES30GamePadJoystick.cfg
                                        8BitdoSFC30GamePadJoystick.cfg
                                        

                                        adding the lines

                                        # Input driver. Depending on video driver, it might force a different input driver.
                                        # input_driver = udev
                                        
                                        # Input device driver. (Valid: linuxraw, sdl, dinput)
                                        input_joypad_driver = "udev"
                                        

                                        but RetroPie reverts back to the original files and creates two backup files

                                        8BitdoNES30GamePadJoystick.cfg.bak
                                        8BitdoSFC30GamePadJoystick.cfg.bak
                                        

                                        Tried to

                                        "sudo chown root:root 8BitdoNES30GamePadJoystick.cfg" 
                                        "sudo chown root:root8BitdoSFC30GamePadJoystick.cfg" 
                                        

                                        Makes no difference it reverts back anyway. So the SDL errors are still there in EmulationStation but not in RetroArch.

                                        Edit:

                                        I also wanted to add these lines instead of editing Retroarch.cfg to get my NES30 as player 1 and SFC30 Player 1-

                                        input_player1_joypad_index = “0"
                                        input_device = "8Bitdo NES30 GamePad Joystick"
                                        input_driver = "udev"
                                        input_r_btn = "18"
                                        input_save_state_btn = "18"
                                        input_start_btn = "22"
                                        input_exit_emulator_btn = "22"
                                        input_l_btn = "17"
                                        input_load_state_btn = "17"
                                        input_up_axis = "-1"
                                        input_a_btn = "11"
                                        input_b_btn = "12"
                                        input_reset_btn = "12"
                                        input_down_axis = "+1"
                                        input_right_axis = "+0"
                                        input_state_slot_increase_axis = "+0"
                                        input_x_btn = "14"
                                        input_menu_toggle_btn = "14"
                                        input_select_btn = "21"
                                        input_enable_hotkey_btn = "21"
                                        input_y_btn = "15"
                                        input_left_axis = "-0"
                                        input_state_slot_decrease_axis = "-0"
                                        input_player2_joypad_index = “1"
                                        input_device = "8Bitdo SFC30 GamePad Joystick"
                                        input_driver = "udev"
                                        input_r_btn = "18"
                                        input_save_state_btn = "18"
                                        input_start_btn = "22"
                                        input_exit_emulator_btn = "22"
                                        input_l_btn = "17"
                                        input_load_state_btn = "17"
                                        input_up_axis = "-1"
                                        input_a_btn = "11"
                                        input_b_btn = "12"
                                        input_reset_btn = "12"
                                        input_down_axis = "+1"
                                        input_right_axis = "+0"
                                        input_state_slot_increase_axis = "+0"
                                        input_x_btn = "14"
                                        input_menu_toggle_btn = "14"
                                        input_select_btn = "21"
                                        input_enable_hotkey_btn = "21"
                                        input_y_btn = "15"
                                        input_left_axis = "-0"
                                        input_state_slot_decrease_axis = "-0"
                                        

                                        FBNeo rom filtering
                                        Mame2003 Arcade Bezels
                                        Fba Arcade Bezels
                                        Fba NeoGeo Bezels

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

                                          @Rion Please use http://commonmark.org/help/ to format your replies.

                                          When the controller configs are generated, the value of input_joypad_driver will be based on the input driver set in configs/all/retroarch.cfg

                                          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
                                          • FloobF
                                            Floob @DavidIQ
                                            last edited by

                                            @DavidIQ
                                            Yes, just tried both of those and they worked fine.
                                            This was with the default emulator chosen of lr-gambatte and lr-snes9x-next

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

                                            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.