34.2K
A flight controller is without doubt one of the most necessary parts in a FPV drone. It’s liable for stabilizing the plane, guaranteeing exact flight manoeuvres, and offering information to the pilot. On this article, we’ll clarify intimately what a flight controller is, the way it works, and why it’s such a crucial a part of any drone. Whether or not you’re a newbie or a seasoned pilot, understanding the fundamentals of flight controllers is essential for getting probably the most out of your flying expertise.
A few of the hyperlinks on this web page are affiliate hyperlinks. I obtain a fee (at no further price to you) should you make a purchase order after clicking on certainly one of these affiliate hyperlinks. This helps help the free content material for the group on this web site. Please learn our Affiliate Hyperlink Coverage for extra info.
If you’re new to the passion, take a look at our FPV drones freshmen information to study extra.
The Finest FC Suggestions
Speedybee F405 V4
The Speedybee F405 V4 is presently the most effective worth flight controller stacks accessible, providing first rate high quality and efficiency. It contains almost all the trendy options you’d need in a flight controller. It helps an analog FPV system with an onboard Betaflight OSD chip and is “plug n play” appropriate with digital FPV methods. See my full assessment right here: https://oscarliang.com/speedybee-f405-v4/.
I’ve been virtually completely utilizing this stack for my 5″ and seven″ builds prior to now 12 months as a result of it’s reasonably priced and appropriate for freestyle, racing, long-range, and cinematic flying. For enhanced efficiency, I like to recommend flashing the BlueJay firmware to the ESC so you need to use RPM filter in Betaflight.
Whereas there are different funds FC stacks available on the market, they usually use the F722 chip, which has solely half the reminiscence of the F405 within the Speedybee. Much less reminiscence restricts the variety of options you need to use in Betaflight and makes the system much less future-proof.
Get your Speedybee F405 V4 Stack from:
Speedybee: https://oscarliang.com/product-wncw
RDQ: https://oscarliang.com/product-6ro8
NBD: https://oscarliang.com/product-tscf
AliExpress: https://s.click on.aliexpress.com/e/_DFU9NkF
Amazon: https://amzn.to/46EzYZi
iFlight Beast F7 AIO 55A
For light-weight builds with a low profile, resembling sub-250 5″, 4″, and three.5″ drones, the iFlight Beast with a 25.5×25.5mm mounting is a stable alternative. It’s notably appropriate for racing resulting from its light-weight and compact design. Though the 55A ESC ranking would possibly sound “bulletproof,” it’s necessary to keep in mind that that is nonetheless an AIO board and never as sturdy as ESCs on separate boards. Nevertheless, it’s greater than adequate for any drone smaller than 5″. This flight controller presents all of the connections and performance you would need in a Betaflight flight controller.
Get the iFlight Beast 55A FC from:
AliExpress: https://s.click on.aliexpress.com/e/_DlhSn6R
GetFPV: https://oscarliang.com/product-e7xk
RDQ: https://oscarliang.com/product-pdc0
Flywoo GOKU GN745
The GOKU GN745 is an nice different to the iFlight Beast. It additionally contains a 25.5×25.5mm kind issue, making it preferrred for light-weight 3″, 4″, and 5″ FPV drone builds. Geared up with an F7 processor and BLHeli32 ESC, it helps bidirectional DSHOT and RPM filtering proper out of the field, together with different superior BLHeli32 options.
It’s arguably some of the feature-rich whoop/toothpick fashion flight controllers accessible. Though there are various solder pads positioned on the sting of the board, they’re fairly small and may be difficult to solder. Nevertheless, the board does provide 7 full UARTs, and its set of options is unmatched. It features a barometer, a 5V and 9V BEC, and even boasts 8MB of blackbox reminiscence on board!
Product Web page:
Flywoo: https://oscarliang.com/product-bgbk
GetFPV: https://oscarliang.com/product-1f9n
RDQ: https://oscarliang.com/product-4zy4
AliExpress: https://s.click on.aliexpress.com/e/_DCBmtpd
Flight Controller: What it’s and The way it Works
A flight controller, or “FC”, is just like the mind of an FPV drone. It’s a circuit board geared up with sensors that detect the drone’s actions and consumer instructions. With this info, the FC adjusts the velocity of the motors to maneuver the drone within the desired course.
All flight controllers have primary sensors like gyroscope and accelerometer, whereas others could embody different sensors resembling barometric stress sensors (barometer) and compasses (magnetometer).
The FC can even function a hub for different drone peripherals like ESC, GPS, LED, servos, radio receiver FPV digital camera and VTX.
As expertise advances, flight controllers are getting smaller, extra feature-packed, and utilizing higher processors and {hardware}.
FC Sorts
There are two important sorts of flight controllers: one is extra plane-oriented, whereas the opposite is extra multirotor-oriented. This doesn’t imply you need to use a airplane FC on a multirotor or vice versa, however you’ll possible face extra challenges. It’s greatest to decide on the proper kind of FC for a smoother expertise.
Airplane/Wing Oriented FC | Multirotor Oriented FC/ESC Stack |
Throughout the multirotor FC, you will discover common FC and AIO (All-in-One) FC.
An AIO FC integrates the ESC onto the identical board, which makes for a compact setup. Nevertheless, they aren’t as sturdy as ESCs on separate boards, as present in common FC/ESC stacks (two separate boards). The selection relies on your necessities—if area and weight are priorities, you in all probability wish to go together with an AIO FC. In any other case, a daily FC/ESC stack is often most popular for its reliability.
Common FC/ESC Stack (2 boards) | AIO FC (1 board) |
FC Connection
Right here is an instance wiring diagram how parts in a FPV drone are related to the flight controller. Every FC has a distinct wiring diagram resulting from variations in solder pad layouts, however the idea stays the identical—you simply have to establish the suitable pads in your FC.
Flight Controller Firmware
In the case of flight controllers, you’ve gotten a alternative not solely in {hardware} but additionally in firmware. Completely different firmware choices provide totally different options and specializations for varied functions. For instance, iNav is designed with GPS and autonomous flight in thoughts, whereas Betaflight is extra centered on flight efficiency.
Listed below are a record of fashionable FC firmware choices for FPV drones: https://oscarliang.com/fc-firmware/
Nevertheless, I’d personally advocate selecting between these two:
- Betaflight: This open-source firmware focuses on flight efficiency. It has the biggest consumer base, which makes beginning out simpler because of the abundance of tutorials. It additionally means help is available while you encounter points. Moreover, Betaflight helps the widest vary of flight controllers. Right here’s a tutorial to get you began: https://oscarliang.com/betaflight-firmware-setup/
- iNav: If you’re extra excited about automated flying and GPS waypoint mission, iNav is the best way to go.
When you’ve chosen your firmware, you possibly can then search for a appropriate flight controller board.
Configuration and Tuning
Flight controller firmware may be configured utilizing a pc, smartphone, or radio controller. Every firmware has its personal consumer interface (UI) and parameters that may be modified. Nevertheless, even similar-looking UIs can produce totally different flight traits relying on the firmware, so it takes time to study and alter to a brand new one.
“Tuning” is the time period we use within the passion to explain the method of adjusting parameters like PID, charges/expo, and others to realize desired flight traits. This is a crucial step in optimizing your FPV drone’s efficiency and getting probably the most out of your flight controller. I’ve a tutorial on how you can tune your FPV drone in a number of easy steps.
Processor
A flight controller makes use of microcontroller items (MCUs) to retailer firmware codes and carry out advanced calculations.
Presently, STM32 MCUs resembling F4, F7, and H7 are supported by Betaflight, whereas F1 and F3 are now not supported resulting from inadequate reminiscence for the increasing firmware necessities. Subsequently, it’s necessary to concentrate to the reminiscence accessible on totally different processors – it’s simply as necessary as velocity, if no more. As an example, though the most recent Betaflight permits you to choose which options to make use of and hold the code measurement small for processors with much less reminiscence, in the long term, the slower F405 would possibly even have a bonus over the quicker F722 resulting from its bigger reminiscence capability.
F1 | F3 | F4 | F7 | H7 | |
Velocity | 72MHz | 72MHz | 168MHz | 216MHz | 480MHz |
Reminiscence | 128KB | 256KB | 512KB/1MB | 512KB/1MB | 1MB/2MB |
This text supplies a extra detailed rationalization of the variations between all of the MCU for a greater understanding of FC processors: https://oscarliang.com/f1-f3-f4-flight-controller/
Traditionally, STM32 chips have dominated the FPV drone flight controller market. Nevertheless, in recent times, AT32 is shortly changing into a viable different to STM32 chips resulting from its availability and affordability. Be taught extra right here: https://oscarliang.com/at32-flight-controllers/
Gyro
The flight controller on an FPV drone makes use of a spread of sensors to detect motion and orientation. The primary sensor used for this objective known as an Inertial Measurement Unit (IMU). An IMU incorporates each an accelerometer and a gyroscope, however within the passion, the time period “gyro” is usually used to check with the IMU sensor.
The gyro can measure angular velocity whereas the accelerometer measures linear acceleration. When flying an FPV drone in full handbook mode (aka acro mode), it makes use of solely the Gyro, whereas in self degree modes resembling Angle mode, it requires each the Gyro and Accelerometer to work.
Gyro Overview
The most well-liked sorts of gyro for FPV drone FCs are made by two producers: InvenSense (now a part of TDK) and Bosch Sensortec.
Right here’s a listing of frequent gyro fashions, together with the communication protocols they help and their most efficient sampling frequency:
IMU | Attainable Communication Protocol (BUS) | Max. Efficient Gyro Sampling Frequency |
MPU6000 | SPI, i2c | 8KHz |
MPU6050 | i2c | 4KHz |
MPU6500 | SPI, i2c | 32KHz |
MPU9150* | i2c | 4KHz |
MPU9250* | SPI, i2c | 32KHz |
ICM20602 | SPI, i2c | 32KHz |
ICM20608 | SPI, i2c | 32KHz |
ICM20689 | SPI, i2c | 32KHz |
ICM42688P | SPI, i2c | 32KHz |
BMI270 | SPI, i2c | 6.4KHz |
* MPU9150 is successfully MPU6050 with an built-in AK8975 magnetometer, whereas MPU9250 is MPU6500 with the identical magnetometer
There are two sorts of communication between the gyro and processor: SPI and i2c. SPI is the popular communication protocol between the IMU and processor as a result of it permits for a a lot larger gyro refresh charge than I2C (which has a restrict of 4KHz). Nearly all fashionable FCs at this time use SPI connection for the gyro. We wish to keep away from MPU6050 and 9150 as a result of they solely help i2c and never SPI.
How you can Discover Out What Gyro FC Is Utilizing
To search out out which gyro your FC has you’ll find the IMU mannequin quantity printed on the chip, for instance that is the favored Invensense MPU-6000.
Or you possibly can enter the “standing” command within the Betaflight Configurator CLI and search for the title of the IMU beneath Gyro/ACC. Some FC could have multiple Gyro onboard, and you’ll select which one to make use of within the CLI with the command “set gyro_to_use=0 or 1”.
Which Gyro Is Finest?
Flight controllers don’t provide Gyro choices, however usually, should you select a good model that features a gyro with a great monitor document, it shouldn’t pose any points. Right here’s a short historical past of gyros utilized in flight controllers.
The selection of gyro relies on its max sampling charge and susceptibility to electrical and mechanical noise. Earlier than 2022, probably the most extensively used gyro was MPU6000 due to its robustness towards noise. The final consensus is to keep away from MPU6500 and MPU9250 regardless of their larger sampling velocity. The ICM20689 can also be a good gyro by way of efficiency however allegedly has a better failure charge. The ICM20602 is one other fashionable alternative, nevertheless it’s extra inclined to noise and tougher to tune. Since Betaflight 4.1 (Oct 2019), 32KHz gyro sampling charge has been faraway from Betaflight, so there isn’t a benefit utilizing gyro with 32KHz sampling charge.
In 2022, FC producers shifted from MPU6000 in direction of BMI270 resulting from price and availability. Whereas its max sampling frequency is barely 6.4KHz, Betaflight forces it to enter OSR4 mode (with a cutoff frequency of 300Hz), leading to a fair decrease sampling charge of three.2KHz. That may sound suboptimal, however as I’ve examined it myself personally, the precise efficiency of BMI270 is similar to MPU6000 (in Betaflight 4.3/4.4). The primary draw back might be the additional filtering that’s generally required because the cut-off frequency is larger within the built-in low move filter with the BMI270 gyro.
In 2023, an increasing number of producers are once more shifting from BMI270 to ICM42688P resulting from availability and value. The ICM-42688P Gyro has been the topic of debate resulting from perceived noise and tuning points. Nevertheless, investigations reveal that the gyro itself shouldn’t be the issue; fairly, it’s the design of the flight controllers it’s built-in into. Particularly, the gyro requires a clear energy provide for optimum efficiency, which was neglected by some early FC designs in 2022 and early 2023, resulting in poor efficiency. For customers contemplating buying a flight controller that includes this gyro, thorough analysis into product opinions specializing in noise efficiency is essential.
Structure
FC structure refers back to the association of pins and solder pads on a flight controller board, which might vastly have an effect on how simple it’s to attach varied parts. Many individuals solely care in regards to the specs of a flight controller, and infrequently overlook the significance of the structure.
As an example, evaluating the next two flight controllers, you possibly can see the primary one has a superior structure with all of the pads grouped by perform and positioned all the sides.
ESC Compatibility
4in1 ESC’s are sometimes offered along with flight controllers these days as a stack, and they’re designed to be plug and play.
Nevertheless, when utilizing ESC and FC from totally different manufacturers, whereas they need to be appropriate, the pinouts is likely to be totally different, requiring rearrangement of the wires within the harness, which could be a enormous problem. If that is what you wish to do, guarantee to double-check the pinout earlier than connecting the FC and ESC collectively, flawed wiring might fry your FC upon powering up.
Solder Pads Defined
Right here, I’ll record a few of the necessary solder pads typically wanted on a flight controller and clarify what they imply.
Voltage Pads
VBAT, 3.3V, 5V, 9V
These pads are used to energy exterior units. VBAT is the direct voltage from the LiPo battery, whereas all different voltages are generally known as BEC (Battery Eliminating Circuit). Nearly all FCs have VBAT, 3.3V, and 5V pads; some bigger FCs provide different voltages resembling 9V and 12V to energy video transmitters. Be aware that each one BECs have an amp ranking, so keep away from overloading them to keep away from harm.
UART
UART (Common Asynchronous Receiver/Transmitter) is a very powerful connection on a flight controller. It’s a {hardware} serial port used to attach exterior parts resembling radio receivers, video transmitters, GPS, and so forth.
Every UART has two pins: one for transmitting information (TX pin) and one for receiving information (RX pin). It’s necessary to keep in mind that the TX on the peripheral system connects to the RX on the FC, and vice versa. It’s important to join TX and RX of the identical quantity for a tool. Some units solely require connecting both TX or RX if two-way communication isn’t wanted.
As proven within the following instance, UART3 (R3 and T3 pins) and UART6 (R6 and T6 pins) on a flight controller may be assigned totally different duties within the ports tab of the Betaflight configurator.
Flight controllers have a restricted variety of UARTs; some have as much as 6, whereas smaller FC’s could solely have 2. It relies on the processor and area accessible. Guarantee there are sufficient UARTs for the units you propose to make use of earlier than buying.
In case you want extra UART ports, Betaflight has a characteristic referred to as SoftSerial, which converts sure solder pads into “digital serial ports.” These are just like UARTs however have a a lot slower replace charge, making them unsuitable for time-critical functions resembling receivers and GPS. They can be utilized for analog VTX management but additionally improve CPU load, making them not really useful for slower processors otherwise you would possibly have to decrease the PID Loop Frequency.
Digicam Pad
Vin or Cam
In case you run analog FPV system, that is the place you join the FPV digital camera. The flight controller will then overlay the OSD to the video feed earlier than it outputs it to the VTX.
VTX Pad
Vout or VTX
That is the place you join the VTX should you run an analog FPV system.
i2C Pads
SDA and SCL
For connecting units like a GPS compass and barometer.
Buzzer Pads
BZ+ and BZ-.
For beepers.
LED Pad
For connecting RGB LED strips.
Mounting Sample
The mounting sample refers back to the distance between the adjoining mounting holes on a flight controller. Widespread patterns embody 30.5×30.5mm, 25.5×25.5mm, 20×20mm, and 16×16mm.
For five″ FPV drones or bigger, FC with 30.5×30.5mm mounting sample is usually used, whereas smaller drones usually use 25.5×25.5mm or 20×20mm.
Different Options
Flight controllers include a spread of options that may improve your flying expertise. Let’s check out a few of them.
Blackbox
Blackbox is beneficial for tuning and troubleshooting. You possibly can document your flight information in two methods – utilizing built-in flash reminiscence or storing it on an SD card if there’s an onboard SD card logger.
I’ve a tutorial explaining how you can use Blackbox: https://oscarliang.com/blackbox/.
Flash reminiscence is cheaper however has restricted storage capability, usually 16MB which presents round 5 to 10 minutes of flight information. Downloading information from it may also be gradual. Utilizing an SD card reader in your flight controller, you possibly can hold recording all 12 months lengthy with out emptying the storage, and it provides you entry to the logs immediately by inserting the SD card in a card reader.
Blackbox logs is a must have for skilled pilots. It provides you the power to squeeze each little bit of efficiency out of the drone and diagnose points intimately. I’ve a tutorial explaining how you can tune your FPV drone: https://oscarliang.com/pid-filter-tuning-blackbox/
In case your flight controller doesn’t have an SD card slot or flash reminiscence, you can even join an exterior SD card reader to the FC by way of UART.
Connector Sorts
The three important sorts of connectors on a flight controller are
- Plastic JST connectors
- Solder pads
- By holes
Plastic connectors are much less sturdy however handy to make use of, whereas solder pads are extra sturdy however requires soldering. By holes provide the choice of direct soldering or utilizing header pins.
BEC
BEC (battery eliminator circuit) is simply what we name voltage regulators on a flight controller.
Nearly all flight controllers have a 5V BEC for powering radio receiver, GPS and so forth, whereas some additionally provide 9V or 12V BEC devoted for powering the video transmitter. Though you possibly can energy FPV gear instantly from the LiPo battery, powering them from a regulated energy supply can produce higher outcomes.
Study how you can wire analogue FPV setup for greatest consequence.
It’s necessary to decide on the correct voltage supply based mostly on the system you’re powering. Some units may be powered instantly from the LiPo battery e.g. the video transmitter. Nevertheless the facility supply from LiPo tends to be noisy, voltage spikes may even harm your units if there isn’t sufficient filtering. A BEC acts as an influence filter and is normally a greater energy supply, however that you must verify if it meets the voltage and present necessities of your system.
Barometer
Having a barometer constructed into your flight controller could make GPS-assisted flight extra correct (resembling GPS Rescue Mode), however it’s not obligatory.
OSD Chip
For analog FPV system, make certain your flight controller has an OSD chip (AT7456E) accessible, or Betaflight OSD received’t work. Nevertheless, it’s not mandatory for digital FPV methods resembling DJI, HDZero and Walksnail, all they want for OSD to work is only a spare UART .
Delicate Mounting
Delicate mounting the flight controller is essential for optimum efficiency, it reduces the noise/vibration from the body attending to the gyro.
Nearly all FC as of late have M4 holes, which let you insert rubber gummies (grommets) so you need to use M3 {hardware} to safe the board in a body.
There are FC with the Gyro “tender mounted” on a bit of froth for decreasing vibrations attending to the gyro. This isn’t a highly regarded strategy, because it’s been confirmed pointless so long as the flight controller itself is satisfactorily soft-mounted. Listed below are some recommendations on soft-mounting and filtering capacitors to cut back noise.
A Little Historical past
The historical past of FPV drone flight controller may be traced again to 2009, when a maker used the Wii Movement Plus Accent with an Arduino board to manage a drone. This led to the event of the Multiwii undertaking, which ultimately created its personal flight controller board that labored on an 8-bit Atmel processor.
In 2013, one other developer named “timecop” created a flight controller board with an ARM 32-bit processor, Naze32, and ported the Multiwii supply code to it, referred to as “Baseflight.” This board established the 35x35mm kind issue (with 30x30mm mounting) and continues to be related until today.
In 2014, “Hydra” modified Baseflight and created Cleanflight, resulting in an explosion within the 32-bit flight controller market, with producers growing their very own FC variants.
Betaflight was created in 2015 by “BorisB”, utilizing Cleanflight’s supply code and making vital modifications to it. When Betaflight was first launched, it was primarily centered on enhancing the efficiency of Cleanflight, whereas additionally including new options and capabilities. Over time, Betaflight has diverged considerably from Cleanflight, and is now thought of a separate and distinct firmware. Betaflight is presently the preferred flight controller firmware for FPV drones, and continues to be being frequent up to date.
Edit Historical past
- 2014 – Article created
- 2016 – Added decisions of flight controller firmware, up to date FC options
- 2017 – Up to date Processor and Gyro sorts, Added “FC Evolution” infographics, Up to date MPU sorts
- 2018 – Up to date data about FC integration, Added data about mounting sample
- 2020 – URL Modified; Up to date: FC Firmware, Gyro Data; Added: connection diagram/instance, AIO FC & Characteristic integrations defined, structure, digital camera management
- 2022 – Added data about BMI270 gyro
- 2023 – Tutorial revised, Added data about ICM42688P Gyro
- Could 2024 – Up to date tutorial, added FC suggestions.