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 FC30pro not working in emulators

    Scheduled Pinned Locked Moved Help and Support
    27 Posts 9 Posters 26.3k 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.
    • P
      Phoenix @JiePieWie
      last edited by Phoenix

      @JiePieWie You had the same problem I did. I have the 8Bitdo firmware 1.69 on my NES30 Pro. You need to change your 8bitdoFC30Pro.cfg to what you see below

      #FC30/NES30 Pro Firmware v1.69
      
      #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx#
      #You must uncomment the correct device name below#
      #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx#
      
      #input_device = "8Bitdo FC30 Pro"
      #input_device = "8Bitdo FC30 Pro Joystick"
      #input_device = "8Bitdo NES30 Pro"
      #input_device = "8Bitdo NES30 Pro Joystick"
      
      input_driver = "udev"
      input_up_btn = "h0up"
      input_down_btn = "h0down"
      input_left_btn = "h0left"
      input_right_btn = "h0right"
      input_a_btn = "0"
      input_b_btn = "1"
      input_x_btn = "3"
      input_y_btn = "4"
      input_l_btn = "6"
      input_r_btn = "7"
      input_l2_btn = "8"
      input_r2_btn = "9"
      input_l3_btn = "13"
      input_r3_btn = "14"
      input_select_btn = "10"
      input_start_btn = "11"
      input_l_x_plus_axis = "+0"
      input_l_x_minus_axis = "-0"
      input_l_y_plus_axis = "+1"
      input_l_y_minus_axis = "-1"
      input_r_x_plus_axis = "+2"
      input_r_x_minus_axis = "-2"
      input_r_y_plus_axis = "+3"
      input_r_y_minus_axis = "-3"
      input_enable_hotkey_btn = "10"
      input_state_slot_increase_btn = "h0right"
      input_exit_emulator_btn = "11"
      input_state_slot_decrease_btn = "h0left"
      input_save_state_btn = "9"
      input_load_state_btn = "8"
      input_reset_btn = "14"
      input_menu_toggle_btn = "13"
      

      Hope that helps :)

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

        Yes, the 1.69 firmware outputs different button codes. You can also see the 1.69 here:
        https://github.com/libretro/retroarch-joypad-autoconfig/blob/master/udev/8Bitdo_Pro_FC30_BT.cfg

        You can either flash 1.68, or as Phoenix says update your config file.
        It will be in:
        /opt/retropie/configs/all/retroarch-joypads/

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

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

          Thanks for your help but unfortunately that doesn't help either. It seems that i have V1.68, V1.69 and V1.70-beta2 of the FC30pro firmware and V1.70 is what's installed on my controller. I've changed the config as suggested above but to no avail. The buttons still only work in Emulationstation but they are dead in the emu's themselves. Should i downgrade to 1.68/69 then?

          It still strikes me as odd that the button mapping changes so dramatically with an upgrade to 1.70...

          Which 'mode' should the controller be set? Mode 1?

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

            Try 1.68 first and see if it works without issue.
            I havent tried 1.69 yet, but I would have thought the config above should work with it.

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

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

              Owkeee.... went back to V1.68, copied back my old config and re-connected my FC30. ES works flawlessy but nothing in the emus. Went into the Es-menu to 'configure input' and re-added my FC30. All buttons were recognized and working. Restarted ES, started an SNES-emu and tried again. Nothing. I really don't get it..

              Going to try V1.69 now.

              #update: installed 1.69, copied config as stated above but nothing. ES works ok but no controls in any of the emu's..

              P P 2 Replies Last reply Reply Quote 0
              • FloobF
                Floob
                last edited by Floob

                Can you go back to 1.68 and try this (I see above you say you have an FC30 Pro).

                Delete (or backup first, then remove) your configs in /opt/retropie/configs/all/retroarch-joypads
                Then can you use "Configure Input" in ES and then go back to the directory above and paste the config file it shows into pastebin.com?

                Here is mine that works in RetroArch emulators:
                http://pastebin.com/raw/v9Ct3Q99

                Which emulator are you trying?

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

                1 Reply Last reply Reply Quote 0
                • P
                  Phoenix @JiePieWie
                  last edited by

                  @JiePieWie said in 8bitdo FC30pro not working in emulators:

                  Owkeee.... went back to V1.68, copied back my old config and re-connected my FC30. ES works flawlessy but nothing in the emus. Went into the Es-menu to 'configure input' and re-added my FC30. All buttons were recognized and working. Restarted ES, started an SNES-emu and tried again. Nothing. I really don't get it..

                  Going to try V1.69 now.

                  #update: installed 1.69, copied config as stated above but nothing. ES works ok but no controls in any of the emu's..

                  Did you uncomment (eg remove the # before) the correct device name? Yours was 8Bitdo FC30 Pro

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

                    I believe I am running into the same/similar issue.

                    Having just received a FC30pro I went through the guide on a fresh 3.8.1 install and pairing and reconnecting via bluetooth was working great. I could shutdown/restart and the controller would always reconnect, and configuring inputs in ES worked fine too. However trying to use the controller in SNES games (using default emulator) only the dpad and start were being recognized. No ABXY, LR, or Select (so no hotkeys either).

                    Before I knew of any issues I updated the FW to the latest (which is 1.69 as of this writing, controller came with 1.66,) so seeing as the changes in 1.69 don't appear too critical I'll try rolling back to 1.68 and see what happens.

                    Odd though, I've tried a variety of controllers and every time I could configure in ES it was smooth sailing in every emulator. I'm guessing something is just getting lost in translation specifically for 8bitdo.

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

                      @mute
                      Could you let us know how it goes when you run firmware 1.68?
                      Otherwise we can talk you through manually tweaking the config file for 1.69.

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

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mute @Floob
                        last edited by

                        @Floob
                        After downgrading my controller's FW to 1.68, going through the pair process again, then doing ES config inputs->reboot I was able to use all the configured buttons in the SNES emulator. I haven't tried others but they are probably fine.

                        I might try to upgrade to 1.69 again and do the legwork to get the config files right, as I need to set up some custom stuff anyway, but for now things are working.

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

                          If you do try with 1.69, can you try turning the controller on whilst holding R shoulder button and see if it makes a difference?

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

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

                            I was away for a few days so my comments are a bit later than expected :-) I will reload the 1.68FW again and go through the pairing/config etc routine again. How do i start with a 'clean' ES-config so i can go through the config procedure like it's newly installed? Just to be sure..

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

                              @JiePieWie
                              If you edit your /home/pi/.emulationstation/es_input.cfgfile to read:

                              <?xml version="1.0"?>
                              <inputList>
                                <inputAction type="onfinish">
                                  <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command>
                                </inputAction>
                              </inputList>
                              

                              it should then prompt as normal to configure a controller.
                              Or you could manually prompt this by pressing Start when in ES and choosing "Configure Input"

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

                              1 Reply Last reply Reply Quote 0
                              • ProxyCellP
                                ProxyCell
                                last edited by

                                I have the FC30 Pro here (the famicom looking one) and it is working wonderfully. It did not get the controls setup automatically though and I had to set them myself using jstest so please consider that.

                                RPi3b+ - No overclock
                                RetroPie - latest from Github, as always
                                2x SF30 Pro 8Bitdo controllers

                                J 1 Reply Last reply Reply Quote 0
                                • J
                                  JiePieWie @ProxyCell
                                  last edited by

                                  @ProxyCell said in 8bitdo FC30pro not working in emulators:

                                  I have the FC30 Pro here (the famicom looking one) and it is working wonderfully. It did not get the controls setup automatically though and I had to set them myself using jstest so please consider that.

                                  jstest? My controller is not usable via jstest because it's not 'attached' under /dev/input/js.. I can see there only js0 and js1 which are my Xin-Mo arcade joysticks. And they work fine.. Should i be able to see my FC30pro there also?

                                  1 Reply Last reply Reply Quote 0
                                  • ProxyCellP
                                    ProxyCell
                                    last edited by

                                    Yes @JiePieWie
                                    Have you registered the controller in both the bluetooth menu and in ES?

                                    RPi3b+ - No overclock
                                    RetroPie - latest from Github, as always
                                    2x SF30 Pro 8Bitdo controllers

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

                                      with the latest version of the retropie-setup script and firmware 1.68 it should work fine. The latest version of the bluetooth script in retropie-setup has the facility to install the correct udev rule, and also to connect to the controller in the background at any time.

                                      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
                                      • P
                                        pimpmaul69 @JiePieWie
                                        last edited by Floob

                                        @JiePieWie i would go back to 1.69 then add the file manually in /opt/retropie/configs/all/retroarch-joypads. there is a change in retropie that uses the fc30 pro and nes30 pro universally so i would make both these configs if i were you.

                                        first file named: 8BitdoFC30Pro.cfg

                                        this is how i have it configureded inside mine. i did disable stuff i dont use. feel free to change it to your liking. i did add functions to change discs for ps1. if you keep the disk changing info in this file es cant overwrite the file. if you configure the controller in es it wont do anything after you select ok after setting up the controller. wait a minute and then reboot. the controller will be configured in es and these files will remain intact. if you want es to be able to change it feel free to not keep that stuff. only problem is emulationstation is good at overwriting these files with a blank file.

                                        input_device = "8Bitdo FC30 Pro"
                                        input_driver = "udev"
                                        input_start_btn = "11"
                                        input_select_btn = "10"
                                        input_up_btn = "h0up"
                                        input_down_btn = "h0down"
                                        input_left_btn = "h0left"
                                        input_right_btn = "h0right"
                                        input_a_btn = "0"
                                        input_b_btn = "1"
                                        input_x_btn = "3"
                                        input_y_btn = "4"
                                        input_l_btn = "6"
                                        input_r_btn = "7"
                                        input_l2_btn = "8"
                                        input_r2_btn = "9"
                                        input_l3_btn = "13"
                                        input_r3_btn = "14"
                                        input_l_y_minus_axis = "-1"
                                        input_l_x_plus_axis = "+0"
                                        input_l_y_plus_axis = "+1"
                                        input_l_x_minus_axis = "-0"
                                        input_r_x_plus_axis = "+2"
                                        input_r_y_plus_axis = "+3"
                                        input_r_x_minus_axis = "-2"
                                        input_r_y_minus_axis = "-3"
                                        
                                        input_save_state_btn = "nul"
                                        input_load_state_btn = "nul"
                                        input_state_slot_decrease_btn = "nul"
                                        input_state_slot_increase_btn = "nul"
                                        
                                        input_disk_eject_toggle_btn = "3"
                                        input_disk_next_btn = "7"
                                        input_disk_prev_btn = "6"
                                        input_menu_toggle_btn = "1"
                                        input_exit_emulator_btn = "11"
                                        input_enable_hotkey_btn = "10"
                                        input_reset_btn = "nul"
                                        

                                        the second file is named: szmy-powerLtd.Joypad.cfg

                                        input_device = "szmy-power Ltd.  Joypad  "
                                        input_driver = "udev"
                                        input_start_btn = "11"
                                        input_select_btn = "10"
                                        input_up_btn = "h0up"
                                        input_down_btn = "h0down"
                                        input_left_btn = "h0left"
                                        input_right_btn = "h0right"
                                        input_a_btn = "0"
                                        input_b_btn = "1"
                                        input_x_btn = "3"
                                        input_y_btn = "4"
                                        input_l_btn = "6"
                                        input_r_btn = "7"
                                        input_l2_btn = "8"
                                        input_r2_btn = "9"
                                        input_l3_btn = "13"
                                        input_r3_btn = "14"
                                        input_l_y_minus_axis = "-1"
                                        input_l_x_plus_axis = "+0"
                                        input_l_y_plus_axis = "+1"
                                        input_l_x_minus_axis = "-0"
                                        input_r_x_plus_axis = "+2"
                                        input_r_y_plus_axis = "+3"
                                        input_r_x_minus_axis = "-2"
                                        input_r_y_minus_axis = "-3"
                                        
                                        input_save_state_btn = "nul"
                                        input_load_state_btn = "nul"
                                        input_state_slot_decrease_btn = "nul"
                                        input_state_slot_increase_btn = "nul"
                                        
                                        input_disk_eject_toggle_btn = "3"
                                        input_disk_next_btn = "7"
                                        input_disk_prev_btn = "6"
                                        input_menu_toggle_btn = "1"
                                        input_exit_emulator_btn = "11"
                                        input_enable_hotkey_btn = "10"
                                        input_reset_btn = "nul"
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • D
                                          Duhjoker
                                          last edited by Floob

                                          Im having the same problems with my NES30 pro. I started with 1.68 and flashed the controller to 1.69. Works fine in ES and on LR-fceumm but that's it.
                                          I looked at the config file at opt/Retropie/configs/all/retro arch-joy pads posted above. All the button mappings match the above but it's missing the firmware print at the top. Am I supposed to write the config file exactly as given above? It's all jumbled too in no particular order.

                                          Why are my posts all in code squares ?

                                          BuZzB 1 Reply Last reply Reply Quote 0
                                          • D
                                            Duhjoker
                                            last edited by

                                            I have literally done every thing that this thread has suggested and some things a few other threads have suggested. The controller works fine in ES and works for the Nintendo emulator but nothing else.

                                            P 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.