8bitdo SF 30 Pro Controller not charging or pairing properly
-
@melbmatt50 This is what works for me on my Sf30pro:
- Go to the bluetooth menu and remove any previous pairings of the controller
- Click Y + Start (set it to Nintendo Switch mode, this works best with RetroPie) and wait for the 4 green front-leds to start sliding
- Click and hold the pairing button on the back next to the usb connector and notice that the 4 front-leds will turn off for a moment and then proceed to slide again. This means it has gone into "pairing mode".
- Seek the controller from the bluetooth menu and pair it. You might need to figure out what MAC address it has beforehand if you have a lot of bluetooth units nearby.
- Reconfigure the gamepad in EmulationStation using the Input menu.
It should now work.
-
@melbmatt50 said in 8bitdo SF 30 Pro Controller not charging or pairing properly:
The only light which I can get to appear on the controller is the red light near the usb connection which blinks.
This means you need to charge your controller - it has a low battery charge. Do that and then try to pair it again - without connecting it via USB to the Pi.
-
@muldjord I checked on the controller today and it still had the red blinking light so I don't know what is going on with it. I tried pressing Y + start and now it does nothing. It doesn't respond to any button presses and from what I have read, I am afraid it may be bricked. I am extremely frustrated with the controller and retropie and am at my wit's end.
-
@melbmatt50 And you did try to recharge it as @mitu suggests?
-
@muldjord The advice you gave me enabled me to pair the controller with retropie and I was able to map it. I found however that although the analog stick works in emulation station, it doesn't work in the emulators. Only the direction pad does. I was able to get it working in mame4all but only by going into its set up and mapping each direction of the analog stick there.
I have also tried deleting the connection and reconnecting it by just turning it on with the start button and then using the pairing button as I read in a post that setting it up in switch mode can cause issues with the analog stick in retropie but I have the same issue as before, in that although working in emulation station it doesn't work in others. I have tried bot the nes default emulator and the genesis default emulator and both have the same result. I would be very grateful if anyone can help with this.
-
@melbmatt50 said in 8bitdo SF 30 Pro Controller not charging or pairing properly:
I found however that although the analog stick works in emulation station, it doesn't work in the emulators.
For RetroArch based emulators, try configuring the Device type as RetroPad w/ Analog in the Controls section of RetroArch menu (RGUI) and then choose which joystick is used for controlling the D-Pad with the Analog to Digital Type option below. Then save a configuration override for the core so the configuration applies to all games started with that core.
-
@mitu When I originall bought the controller and set it up it was so straightforward using the steps provided to me, it was just a matter of updating firmware, putting it in pairing mode and then detecting and setting it up followed by mapping it. I don't know why this time around it is so problematic and why nothing has worked completely. I am not sure how to use the RGUI to configure it.
-
@melbmatt50 Just open RetroArch from the RetroPie menu and do what @mitu mentioned. You need to set it as a controller with an analog stick. And remember to save the config when you've set it. Then it will be a global config and be used for all emulators that support it.
-
@muldjord Can you tell me the command lines that I have to do use to do that as I have no experience using retroarch.
-
@melbmatt50 It's not a command-line, it's a graphical interface. Just go where I mentioned in the menus.
-
@muldjord said in 8bitdo SF 30 Pro Controller not charging or pairing properly:
Just go where I mentioned in the menus.
@melbmatt50 open the RetroArch's menu with
Select + X
(orHotkey + X
, if you've selected another button as Hotkey). -
I've been using that controller for years. My configuration file for the controller. (In the raspberry I have always started start + b)
/opt/retropie/configs/all/retroarch/autoconfig/8Bitdo SF30 Pro.cfg
input_driver = "udev" input_device = "8Bitdo SF30 Pro" input_device_display_name = "8Bitdo SF30 Pro" input_b_btn = "1" input_y_btn = "4" input_select_btn = "10" input_start_btn = "11" input_a_btn = "0" input_x_btn = "3" 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_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" # hotkeys config input_exit_emulator_btn = "11" # select + start input_enable_hotkey_btn = "10" # select hotkey input_menu_toggle_btn = "3" # select + x input_reset_btn = "1" # select + b input_screenshot_btn = "4" # select + y input_pause_toggle_btn = "2" # select + home input_recording_toggle_btn = "14" # select + r3 input_streaming_toggle_btn = "13" # select + l3 input_save_state_btn = "6" # select + l1 input_load_state_btn = "7" # select + r1 input_state_slot_increase_axis = "+2" input_state_slot_decrease_axis = "-2" # psx (cambio de discos) input_disk_eject_toggle_btn = "0" # select + a input_disk_next_btn = "9" # select + r2 input_disk_prev_btn = "8" # select + l2 input_b_btn_label = "B" input_y_btn_label = "Y" input_select_btn_label = "Select" input_start_btn_label = "Start" input_a_btn_label = "A" input_x_btn_label = "X" input_l_btn_label = "L1" input_r_btn_label = "R1" input_l2_btn_label = "L2" input_r2_btn_label = "R2" input_l3_btn_label = "LS" input_r3_btn_label = "RS" input_l_x_plus_axis_label = "LS Right" input_l_x_minus_axis_label = "LS Left" input_l_y_plus_axis_label = "LS Down" input_l_y_minus_axis_label = "LS Up" input_r_x_plus_axis_label = "RS Right" input_r_x_minus_axis_label = "RS Left" input_r_y_plus_axis_label = "RS Down" input_r_y_minus_axis_label = "RS Up" input_menu_toggle_btn_label = "Home" input_up_btn = "h0up" input_down_btn = "h0down" input_left_btn = "h0left" input_right_btn = "h0right" input_up_btn_label = "Dpad Up" input_down_btn_label = "Dpad Down" input_left_btn_label = "Dpad Left" input_right_btn_label = "Dpad Right"
-
@muldjord Can you please provide me with the steps on how to do that as I have no experience doing that. Is it a menu option in emulation station that you use or how do I get to it and do those steps as well as saving the configuration file. I know this is a pain and probably simple to you but I have no experience this type of thing with either retropie or retroarch. I would really appreciate it as I have asked about my issue in other forums and I cannot get the solution that I need.
-
@melbmatt50 I can't give you a complete guide. I think you need to do some research on it. Look into RetroArch controller configuration.
But I can provide the basics:
- Start your RetroPie into EmulationStation
- Go to the RetroPie menu
- Start RetroArch
- And here's where I can't remember the specifics. You need to go to the controls menu or something like that, and it should say something like "Controller 1 type" or something. And that needs to be switched to "Gamepad with analog" or something like that.
I can't remember the specifics and I don't have my RetroPie here to look it up.
-
@muldjord, following your advice and a helpful YouTube video I found, I went into retroarch from inside the games and found that under controls it was just set as dpad and that there was no analog stick defined. This I did and I saved the configuration file. As the video suggested I found that the buttons on the controller were mapped somewhat backwards so this I changed back to normal configuration.
I found also that some emulators such as the freeintv one for Intellivision worked fine for the analog stick before I had changed any settings in this. This leads me to believe that the problem may be linked to all the ones that run through retroarch. I still have an issue where when you launch the game from retropie, it will take nearly a minute to load the rom which was much longer than it used to be, so I am not sure how to fix that but at least the analog stick is working so I am thankful for that.I will try installing another non-retroarcharch emulator such as possibly CoolCV and see if that recognizes the analog stick without having to futher configure it. There are other minor issues as well but I am just glad to be sorting these ones out, so thank you for all your help.
-
@melbmatt50 said in 8bitdo SF 30 Pro Controller not charging or pairing properly:
I still have an issue where when you launch the game from retropie, it will take nearly a minute to load the rom
That sounds more like a dying SDCard rereading sectors until it finally succeeds.
-
@melbmatt50 said in 8bitdo SF 30 Pro Controller not charging or pairing properly:
Trying to get help with my SF 30 Pro controller. I have recently reformatted an sd card and installed a fresh image on it for my 3b+. For some reason when I press the appropriate keys to pair it to retropie, despite finding it, the options are not the same and it doesnt appear to pair properly.
The only light which I can get to appear on the controller is the red light near the usb connection which blinks. This it also does during charging through its usb cable, which from what I have read should be a solid light. I don't know why it is doing these things and if possible I would just like to factory reset the controller and start out as if it was a new one.
Holding on the Y button and pressing start is what got it working for me doing it the Xbox controller method for some reason just doesn't want to work and my R1 and L2 doesn't want to register when configuring the controller so Switch or Dinput would be your best bet.
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.