How to Configure the SP F3 Flight Controller in Betaflight (Martian 👽 Series)

This guide takes you through the full configuration of the SP F3 flight controller in BetaFlight, step-by-step. We will cover everything from installing the BetaFlight GUI software to setting up flight modes for your quadcopter.

Install BetaFlight GUI

First things first, if you don’t already have the BetaFlight GUI software (Chrome App) on your PC, you will need to install it via the Chrome web store. This App is used to configure the flight controller.
​

⚠️During any configuration of your drone please ensure the propellers are removed from your quad!

Connecting to your Martian Flight Controller

Connect the flight controller (FC) on the Martian to your PC via a micro USB cable. Once connected, some LEDs will illuminate on the FC to indicate that it has power (via the USB connection). Don’t use a USB hub as sometimes these don’t provide enough power to power the flight controller on the quadcopter.

With the BetaFlight GUI App open, you should be able to connect to your drone by clicking the connect button. Assuming you have the correct drivers, the software will connect to your quadcopter.

If you get an error, try selecting another COM port from the drop-down menu. If you still can’t connect (or you can’t even select the connect button) then there is likely a driver issue on your computer. I suggest you check out our driver fixer guide to get the correct driver (and driver version) installed on your computer. Also, you might want to try another USB cable, or USB port on your computer, just in case.

Once connected, you should see something like the image above. You will see a 3D model of a quadcopter that should move as you move your actual quadcopter. At this point we have confirmed that the flight controller is working and if you still can’t connect, please add a comment below so we can help you. We will now move onto upgrading the firmware and configuring the flight controller.

Upgrade Firmware on SP F3 Flight Controller

Although this is not strictly required, it is always a good idea to install the latest firmware on your FC. To do this you will, disconnect your flight controller (click the disconnect button on the top right of the Betaflight GUI). This will enable the Firmware Flasher tab which we use to update the firmware.

Download the firmware

On the Firmware Flasher tab, you must first select the SPRACINGF3 board (as this is the flight controller we are using on the Martian quadcopter). Then, below this, you can select what version of the firmware you want to load onto your board. It’s best to select the latest stable version – at the time of this guide it is 3.2.0.

Once you have selected the firmware, you can click on the Load Firmware (Online) button at the bottom of the screen and BetaFlight will download the firmware onto your PC. Once done, you will see that the ‘Flash Firmware’ button can be clicked. Don’t click it just yet as we first need to enable bootloader mode on the flight controller.

Enable Bootloader Mode

Bootloader mode is a special mode that allows you to flash firmware onto the flight controller. Fortunately, the process of enabling bootloader mode is quite simple. All you need to do is short the two bootloader pins (as shown below) as you connect the flight controller to your PC.

I usually use some metal needle-nose tweezers to short the boot pins but anything conductive (e.g. some wire, a paperclip etc.) will work. You just need to create an electrical connection between the two boot pins.

Flash Firmware

Now that the board is connected to the PC in bootloader mode, you simply need to click the Flash Firmware button. If this is successful, you will see the progress bar at the bottom of the page start up and once complete, the board will reboot.

If this works straight away, then great! This isn’t usually the case however. You usually need to change a few settings. This is the process I follow:

Go back up the page and turn on ‘Flash on Connect’ (first select ‘No reboot sequence’) and ‘Full Chip Erase’ for good measure.

Unplug the board and connect it again (still in bootloader mode). BetaFlight will then attempt to flash the firmware automatically upon connection.

Didn’t work again? Hit ‘Flash Firmware’ again just to make sure.

Last but not least, if you’ve been through all of this, unplug the board again and select ‘Manual Baud Rate’ (whilst keeping the other options selected). You might also want to try a slower baud rate just to make triple sure.

Plug the board in again and hey presto! Hopefully, the firmware is being flashed.

If you are still having problems, make a quick video of what you are doing and post it on our forums and one of us will help you out!

Once completed remember to make sure the boot pins are no longer connected so the board can start in normal mode.

At this point, you can congratulate yourself as you have just flashed firmware onto your flight controller. This process can be repeated when new firmware is released to keep your flight controller on the cutting edge. We will now move onto the configuration of your board.

Calibrate Accelerometer

When your flight controller is posted to you, it can take a few knocks (especially if the courier decides to play some football with the parcels between deliveries…). The sensitive IMU units might, therefore, need a re-calibration. Fortunately, this is super easy, as it’s just the click of a button within BetaFlight. Simple connect to your board via Betaflight and on the Setup Tab, you will see the Calibrate Accelerometer button.

Before pressing this button, simply place your quadcopter on a surface you know is level (thereby ensuring the flight controller itself is level) and make sure that there are no vibrations or micro movements. Then simply click the calibrate accelerometer button on the Setup Tab.

❗ If you are following our guide step by step, at this point your Martian may not be completely assembled so when it rests on the table, make sure the board itself is level before you calibrate the accelerometers.

Setting up your Radio

At this point, you should now get your radio setup and bound to the receiver on your Martian quadcopter. Unfortunately, the stock setup on the radio is not ideal for FPV quadcopters so we need to change a few things. Rather than repeat everything again in this article, you should head over to our Flysky Radio setup guide that covers how to get your radio setup and also bound to the receiver on your Martian.

Once you have set up your radio and bound the receiver, you need to tell your flight controller what receiver you are using and where it is connected.

Following our guide, we connected the receiver to the UART2 port. The first thing we therefore need to do is to enable Serial RX on UART 2 within the Ports tab of BetaFlight.

You then need to go to the Configuration Tab and tell BetaFlight that you are using a Serial-based receiver and that the type is iBUS. Remember to hit the Save and Reboot button to apply the settings to the board.

Testing your receiver

It’s a good idea to now make sure that everything is working correctly. To do this, you go to the Receiver Tab within BetaFlight.

On this tab, you will see a bunch of bars that represent the inputs from your radio. When you move a stick on the radio, the corresponding bar should move on screen. For example, when you move the thrust stick, the thrust channel should move.

You may find that when you move a stick on the radio, a channel that doesn’t correspond to that stick moves on screen. For example, you may move the thrust stick on your radio but the roll channel moves on screen. You will need to correct this and this is done by changing the channel mapping. We have a video here taking you through the process of changing the channel mapping.

This video is for the CleanFlight software but the process is exactly the same in BetaFlight.

If you don’t see anything moving, make sure your battery is connected to your Martian (so that the receiver has power) and, of course, that your radio is on. If both are on, then I suggest you try to rebind your receiver to the radio (as per our FlySky radio setup guide mentioned before).

The other thing to check is to ensure your radio settings are correctly configured within BetaFlight as discussed previously.

Setting up and testing the motors

Part of configuring the flight controller involves making sure it is communicating to the ESCs/motors correctly. We need to set the optimal protocol for the flight controller and you do this in the Configuration Tab where there is a box called ‘ESC/Motor Features’. Here, we need to set the ESC/Motor protocol to Dshot600. This ensures the motors and ESC will work as fast as possible. Once selected, don’t forget to click the Save and Reboot button to save the settings onto your flight controller.

While we have the battery connected and props removed, it is a good idea to check the motors. You do this via the Motors Tab within BetaFlight.

⚠️Make sure the propellers are removed before testing the motors for your own safety!

Here, you need to select the master switch, thereby arming the motors. You can now test the motors individually or all at once. We are checking that the motors are connected in the correct order. Using the diagram below, when you turn on motor 2, you will need to confirm that motor 2 is spinning and also that it is spinning the correct way (counter-clockwise). Repeat this for the rest of the motors taking note of which motors are spinning the wrong way around as we can fix this in the next step. If you are following our build guide, chances are you will find that motors 2 and 3 are spinning the wrong way around.

If you find that one of the motors don’t work at all, please double check your battery is connected and fully charged. Otherwise, recheck your soldering.

Using BLHeli Configurator to reverse motor spin direction

BLHeli Configurator is another Chrome App that you will need to install to configure your ESC settings. The nice thing here is that you can connect to your ESCs via the USB cable connected to your Martian flight controller.

With the quadcopter plugged into your PC and the battery connected, make sure you have disconnected from BetaFlight. Now click the connect button in BLHeli configurator. Once connected, click the ‘Read Setup’ button to load the ESC information.

The left column shows settings that are common among all four of the ESCs. In this section, you need to make sure that the ‘Brake on Stop’ function is enabled. The right column shows ESC specific settings for ESC 1,2,3,4. In our example, we need to now select ‘reverse’ for ESC 2 and 3 so that these motors spin the correct way. Once done, remember to click the ‘Write Setup’ button to save the settings to the ESCs.

You can also use the BLHeli Configurator to flash new firmware onto your ESCs but at this point, you do not need to worry about that.

Setting up flight modes

Before you go out and fly, you should set up the flight modes for your quadcopter. Assuming you are reading this section as a beginner, I suggest you configure your flight modes according to our beginner flight modes article.

And that’s it! Once all the flight modes are configured, if you are following our ‘Martian III 220 Build Guide’ you should return to the ‘Final Touches’ section of the article to finish up.

Notable Replies

You can connect your ibus receiver to any UART port on the SPF3… if you followed our martian build, we connected the receiver to UART2, so for continuity we made the guide reflect that. But yes if you connect yours to UART3, then you would enable serial_RX on UART 3