The Wizard X220 is currently our favourite entry-level FPV quadcopter - the performance is excellent and it comes at an unbeatable price. By default, the SPRacing F3 flight controller comes with Cleanflight installed on it but this doesn't get the best out of it. To enhance the performance of the Wizard X220 even further, you should use the latest version of BetaFlight.
This guide takes you through how to flash BetaFlight onto the flight controller and how to configure your Wizard X220 in general. It is aimed at beginners in the field but some surface knowledge of drone configuration is handy. If you do not understand something just ask us in the comments section.
Why Upgrade to BetaFlight?
You may be asking yourself would you should bother with upgrading to BetaFlight since the flight controller comes with CleanFlight pre-flashed. Well, all I can tell you is that the quad flies significantly better with BetaFlight and it is well worth doing. This whole process should take you approximately 10 minutes and it may be a bit daunting at first, but after you have been through the process, you will see there's nothing to worry about.
When you upgrade the firmware (which you should every time BetaFlight release a new version) you will have to go through the configuration again but this isn't a big deal. After a few updates, you will get comfortable with the process and it will take no time at all.
Flashing BetaFlight onto SP Racing Flight Controller
First thing first is to download BetaFlight from the internet. Simply search the chrome web store for 'BetaFlight Configurator', or click the link (you need to use Chrome browser). You can then open it up and we can get ready to flash BeatFlight onto the SPRacing F3 flight controller that comes with the Wizard X220.
Step 1: Ensure board is in bootloader mode
- You must first ensure that the flight controller is in 'bootloader mode'. This is the mode in which the board can accept new programming i.e. we can flash BetaFlight onto it.
- For the SP Racing F3, we have to manually put this into bootloader mode. This means that we have to short the circuit between two pads on the board.
- The board has a 'boot' port and this is what we need to short.
- One way of doing this is with a paperclip. Unbend it and stick the two ends into the ports and this will close the circuit. Alternatively, you can use tweezers or any other conducting material.
Step 2: Connect board to BetaFlight
- We can then connect the board to BetaFlight via the USB connection (i.e. plug a USB cable from the board to the computer).
- You will know the board is in bootloader mode as a blue LED will turn on (solidly) and no other LED will turn on. If you plug the board in when it is NOT in bootloader mode, you will see a different sequence of LEDs.
Step 3: Flash BetaFlight
- This step is not always an easy one. You may have a good day and it works straight away, but do not be discouraged if it does not - this is fairly normal practice.
- You first need to choose the correct board (SPRACINGF3) and the latest version of BetaFlight available (BetaFlight 3.1.6 at the time of writing).
- You then scroll down to the bottom of the page and hit 'Load Firmware (Online)' for the software to download the firmware. Once done, you will then be able to click the 'Flash Firmware' button - if this works first time, well done you.
- If it does not, you need to 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.
Note: As the firmware is being flashed, verification may not work but don't worry about this - it's never been a problem for us. Also, if you struggle with the above, it may be because your drivers are not installed correctly. Check the top right of your screen and you should NOT see 'Manual Selection'.
If you have any driver issues see our guide on how to fix any flight controller driver issues.
So you've got BetaFlight on your flight controller and you're ready to set it up to fly like a champ...let's get going.
- On the left of the screen you will see different tabs, we're going to go through the important one starting with the Ports tab.
- This tab is about what type of receiver you're using. The Wizard X220 RTF comes with a PPM receiver and a cable already plugged into the flight controller. You can simply plug in the receiver into this cable and away you go - nothing more to be done.
- If you are using a serial receiver (such as an SBUS receiver) then you have to do something slightly more complicated.
- Firstly, you have to unplug the servo cable and plug it into the opposite port on the F3. You then need to enable Serial RX on UART3.
Note: If you're a beginner, the RTF Wizard includes a PPM receiver as standard so this is the option you need to select
This is quite an important tab as you've probably figured from the name...
- First things first, we need to set the Yaw Degree to -90 (or 270). This is because Betaflight currently thinks that your flight controller is orientated in a different way than it actually is i.e. it thinks the quad is facing forward when it's actually facing to the side. This may seem strange but the flight controller has been positioned this way so we can access the USB port easily.
- You should test that BetaFlight corresponds to reality. You do this by turning on the 'Accelerometer' on this tab (pressing 'Save and Reboot' at the bottom) and then going on the Setup tab.
- Here you will see a 3D model of your quad and if you move your real Wizard X220, this model should move in exactly the same way. If it doesn't, you need to fix this with the options on the Configuration tab.
- In the Receiver section, ensure that it's on PPM (assuming that is the receiver you are using).
- In the Systems Configuration section, ensure the Gyro Update Frequency is set to 4KHz and the PID Loop is set to 2KHz.
Note: In general, we want the gyro update frequency to be as fast as possible. The SPRacing F3 flight controller that we are using can only go up to 4KHz, so that's why we have selected this. As for the PID loop, this is a little more complicated. Basically, there is a point of diminishing returns for the speed of the PID loop and as we have selected OneShot125 for the motor/ESC protocol (discussed below), the rate of 2KHz is just about right.
- Keep 'Accelerometer' ON if you are a beginner - trust me, it's easier this way.
- Other Features section - in this section everything should be off except the Blackbox option (the flight controller comes with this feature so we might as well use it).
- You can choose to have 'AirMode' on or not. This is a small point of contention between pilots as this mode makes the quad harder to land (it bounces) but you can still control the pitch/roll when the throttle is idle. I'm used to flying with AirMode off and so I might recommend this myself.
- In the ESC/Motor Features, select OneShot125 and copy the values seen in the picture below.
If you can't see this tab, don't panic! You first need to enable 'Expert Mode' at the top right of your screen.
- This is not too complicated but it is very important - every pilot needs to know their failsafe procedure.
- So, the first three options should be on 'Auto', but we recommend that the throttle is on 'Hold'. This means that the throttle will maintain the last value it received if the signal cuts out between the transmitter and receiver for whatever reason. This, therefore, gives you a grace period in case the signal should immediately come back.
- You can set the 'grace period' on the right of this screen using the 'Guard Time'. Each unit of 'Guard Time' is 0.1 seconds and so a time of 5 (0.5 seconds) should do us.
- After this, you need to set the quad to 'Drop' i.e. after 0.5 seconds of not receiving a signal, it will simply drop from the sky. You may be tempted by the 'Land' option - in our experience, this doesn't actually work and so selecting the 'Drop' option is the best choice.
We will just mention this tab as you may have come across PID tuning and wonder if it is necessary here. The short answer is no, especially if you are a beginner. As always, the automatic values could be tuned a little to increase performance but if you are not an experienced flyer, you won't be able to tell the difference.
- In this tab, we make sure that the channels from the transmitter are mapped correctly to the channels in BetaFlight. I.e. when you move your throttle stick on your radio, the throttle channel moves correspondingly (and the same for the other channels).
- We have a short video guide on this procedure below. This is for CleanFlight, but the procedure is exactly the same.
- If you find that the channels are reversed (i.e. you move the throttle up on the radio and it moves down on BetaFlight), you need to fix this on your transmitter.
- Additionally, you need to ensure all the channels are centred on 1500 - these are also modified on your transmitter, usually under 'sub-trims'.
- You also need to make sure the start and end points are approximately 1000 and 2000 respectively and guess what? These are changed in your transmitter as well.
- Setting the modes up takes a few steps and we have a separate article that covers this process called 'Setting Up Flight Modes in CleanFlight/BetaFlight'. Check it out to set up the modes.
- So we finally come onto the Motors Tab and this is where you can calibrate your ESCs.
- The ESCs on the Wizard do come pre-calibrated but it is a good idea to go through this process yourself for your own peace of mind and your own knowledge. It also only takes about 20 seconds.
- First things first, TAKE OFF THE PROPS! You need to do this otherwise you might get a Wizard in your face....and there's a sentence I never thought I'd say.
- So here's the process:
Step 1: unplug the battery.
Step 2: slide the master slide to the top and plug in the battery. Wait for ESC tones.
Step 3 : after hearing tones, slide the master slide back down to the bottom and you should hear another sequence of tones from your ESCs.
And we're done with the calibration.
Note: there is a 'dead' zone on your throttle i.e. when you start to increase throttle, nothing happens for while. This dead zone is the range that your throttle has to be in in order to arm. This might be set at something like 1100 by default. You can change this in the CLI by typing 'set min_check=1005' for instance and this lowers the zone from 1100 to 1005 - just above zero throttle. Remember to type 'save' in the CLI to save.
Parameter List (Copy/Paste into CLI)
So that's the end of the initial setup! Nothing to it really.
If you want to, you can copy and paste the configuration we used directly into your BetaFlight - you will find the code below. Bare in mind that we have used an SBUS receiver, we've used telemetry and we have set up the arming process to be controlled with AUX1 (a switch).
If you want to do this, you simply copy the text and hit enter. To save this, you then must type 'save' into the CLI and hit enter.
Double-check that everything is still working as it should i.e. double-check the end points of your channels, check that they are mapped correctly, check the failsafe procedure etc. before going ahead and flying.
# feature feature -RX_PPM feature RX_SERIAL feature TELEMETRY feature AIRMODE # map map TAER1234 # serial serial 1 32 115200 57600 0 115200 serial 2 64 115200 57600 0 115200 # aux # skip these lines if you intend to use stick arming aux 0 0 0 900 1200 aux 1 12 2 1800 2100 # rxfail rxfail 3 h # master set min_check = 1005 set min_throttle = 1035 set max_throttle = 1990 set serialrx_provider = SBUS set align_board_yaw = 270 set gyro_sync_denom = 2 set failsafe_delay = 5 set blackbox_rate_denom = 2 # profile profile 0 set vbat_pid_compensation = ON rateprofile 0 # rateprofile rateprofile 0 set rc_rate = 155 set rc_rate_yaw = 120
There's a great video that goes through all of the above really clearly. Check it out if you prefer videos to text.