In this article I will explain what an ESC is, and cover all the basics of ESC used in FPV drones (aka mini quad). Hopefully you will find this an informative guide for beginners getting into FPV or RC in general.
ESC stands for Electronic Speed Controller, and they control the speed of the motors in an FPV drone. The ESC receives throttle signals from the flight controller, and drives the brushless motor at the desired speed. Using good quality ESC’s means you should have a reliable and smooth flight experience, though of course, there are other factors to consider.
|I compiled the specification of all ESC’s for mini quad in this spreadsheet so you can compare them more closely.|
The first thing to look at when choosing ESC is the current rating, which is measured in Amps. Motors draw current when they spin, if you draw more Amps than your ESC can handle, it will start to overheat and eventually fail. A catastrophic failure can even end up with your ESC in flames! Three things that tend to increase your current draw and put more stress on your ESC:
- Higher motor KV
- Larger motor size (stator width and height)
- Heavier propellers (length and pitch)
There are 2 current ratings to an ESC: continuous and burst. Continuous current rating indicates the maximum amount of continuous current which the ESC can safely handle. Even when racing, it is unlikely that you will use maximum throttle for extended periods, ESC’s are usually designed to withstand a higher current for short periods of time (e.g. 10 seconds) and this is the “burst” current rating.
Sometimes beginners confuse the current rating of an ESC as amperage that it would apply to the motor, but the opposite is actually the case. The motors that draw current through the ESC’s, so the ESC must be rated for the maximum amps of the motor you are using.
How to test your current requirement
You can find out how much current a motor draws by testing it on a thrust stand, along with a power meter. Admittedly that’s a lot of hassle, that’s why there are many reviewers testing motors for us and publish the results online. Popular sources are:
What you want to look for, is the amp draw of the motor at 100% throttle, spinning the propeller of your choice (or similar size/pitch to the one you plan to use).
You can sometimes find this data on the product page but I find 3rd party tests more trustworthy.
It doesn’t hurt to leave some margin for error, but there is no need to go overboard. You can use an 30A ESC, or even 40A on something that only draws 20A of current, but it’s an overkill.
Thrust and Current Overstated in Thrust Tests
In static conditions, the propeller pushes more air than in flight, so on the bench your motor produces more thrust, with the greater load, it therefore draws more current. When the drone is flying forward (moving through “free air”), the load is actually smaller, so the amp draw is lower. In addition, the FC always leaves a little throttle headroom to stabilize the copter, so you will never actually see 100% of your motors capability.
Based on my personal experience, maximum amp draw is usually 20% to 30% lower in flight than in static testing.
When you draw current from LiPo battery, the voltage sags due to internal resistance. When you reach the discharge limit of the battery, the voltage would sags so much, it can no longer sustain the high current draw.
Learn more about internal resistance of LiPo batteries in this guide.
This is why for most 5″ builds using 4S 1300mAh – 1500mAh LiPo, 30A ESC are good enough for the most part, because LiPo this size can’t sustain 120A of current for very long (a few seconds at best). Most 4S 1500mAh batteries I’ve tested can’t even reach 100A maximum discharge rate.
If you are using larger batteries on a more powerful build, then you should consider higher rating ESC’s.
Using Larger ESC’s than Required
It’s completely okay to use larger ESC’s than required, downsides are the extra weight, size and cost. In fact there are advantages with higher current ESC’s, which are the lower chance of overheat and higher efficiency.
On an ESC, there are MOSFET (or FET) that basically do all the hard work handling high current. The FET’s are bigger and beefier on higher current ESC’s, and they don’t generate as much heat as the smaller ones, therefore they can be more energy efficient.
Some people prefer using larger ESC’s because of voltage spikes which are much higher than the battery voltage. The MOSFET’s in larger ESC’s usually have a higher voltage tolerance. This is especially popular in 6S builds.
You can also reduce the damage of voltage spikes by soldering extra capacitors in your quad.
SimonK and BLHeli
Two of the oldest open source ESC firmware for multirotors are SimonK and BLHeli.
Early ESC’s would come with primitive firmware written by manufacturers, so hobbyists tended to flash 3rd party firmware, such as SimonK or BLHeli for better performance. Later, BLHeli became the FPV industry standard and almost all ESC’s have it pre-installed.
BLHeli became popular due to its wide range of features and user-friendly interface. For more info about BLHeli and SimonK, here is a discussion comparing the two firmware. Anyway, SimonK has now become obsolete as it’s no longer being updated.
BLHeli_S firmware is the 2nd generation of the BLHeli firmware, developed specifically for ESC’s that have “Busybee” processors. The configurator has a much more simplified user interface. Aikon SEFM 30A and DYS XS series are early adopters of the updated BLHeli_S firmware.
The BLHeli_32 ESC firmware is the third and most recent generation of BLHeli. It’s written specifically for 32-bit ESC’s and it has gone closed source for this iteration. These more powerful processors allow for better future development, smoother, more precise and reliable performance than previous ESC’s.
Which ESC firmware you can install on the ESC, depends on the hardware, more specifically, the processor.
There are many settings in BLHeli_32 and they can be confusing. Discover what the best settings are for an FPV drone in this article.
The majority of multirotor ESC’s on the market use processors (micro-controller or MCU) from ATMEL, Silabs and ARM Cortex. The different MCU’s have different spec and features, and are supported by different firmware:
- ATMEL 8-bit compatible with both SimonK and BLHeli ESC firmware
- SILABS 8-bit supported by BLHeli or BLHeli_S only
- ARM Cortex 32-bit (e.g. STM32 F0, F3, L4) – can run BLHeli_3
ATMEL 8-bit ESC’s used to be more common before the ESC market was dominated by SILABS. ESC’s with Silabs chips tend to outperform 8-bit ATMEL generally in ESC performance. In 2016, 32-bit ARM Core MCU was introduced to ESC’s.
SILABS F330 and F39X
Within SiLabs based ESCs, there are various processors of different performance, for example the 2 main ones being F330 and F39X (F390/F396).
F330 has a lower clock speed than F39X, and may have issues running high KV motors. The F39X doesn’t have these problems, and also supports Multishot ESC protocol and Oneshot42 perfectly. Two well known examples are the Littlebee 20A (F330) and DYS XM20A (F39X).
Busybee MCU is the upgrade to the F330 and F39X. If you have a BLHeli_S ESC right now, it’s likely to be a BusyBee chip. There are two BusyBee chips:
- BusyBee1 – EFM8BB10F8 (aka BB1)
- BusyBee2 – EFM8BB21F16 (aka BB2)
Instead of using software PWM (pulse width modulation), Busybee MCU have specific hardware that can generate a PWM signal that is synced with the duty cycle of the processor, resulting in much smoother throttle response. They also support DShot ESC Protocol, making them a low cost yet effective solution for today’s standard.
Examples of ESC’s that use these MCU’s would be the Aikon SEFM 30A and DYS XS30A.
8-bit MCU Performance Ranking
The overall performance ratings from best to worst:
8-bit vs. 32-bit
32-bit processors are certainly more powerful, allows for many new features that weren’t possible with the limited processing power and capability of the 8-bit counterpart. Features such as “ESC Telemetry”, onboard current sensor, programmable LED – just to name a few.
However there are still many 8-bit ESC’s on the market, because they still offer the key features such as RPM filter, DShot support, 48KHz Mode and so on, for a much more affordable price. For a lot of people, that’s enough.
ESC protocols determine how fast the signals can be sent from FC to ESC, which can have an impact on your quadcopter’s performance. The original (oldest) protocol is standard PWM, has delay up to 2ms, while the currently fastest Multishot has reduced latency down to only about 5-25uS.
Here is a list of current protocols used on quadcopters, from oldest to latest:
Check out this post to learn about ESC firmware and protocols. Not every ESC supports every protocol, make sure you check the specifications before you buy.
Support for Active Braking and Hardware PWM
There are a few key features in an ESC that make them perform great and are worth mentioning.
- Damped Light, a.k.a. Active Braking – Greatly improves responsiveness
- Hardware PWM – Improves smoothness and responsiveness, makes your quad noticeably quieter and slightly more efficient. It also allows for more fine control
- Dedicated gate driver – Cheaper ESCs use transistors to drive the FET gates, but using a dedicated gate driver improves active braking effectiveness
Size and Weight
Normally the size and weight of an ESC is proportional to the Amp rating.
Single standalone ESC’s that are designed for FPV drones have fairly standard dimensions and weight these days, at around 4g – 6g each. 4in1 ESC weighs around 10-15g.
It’s becoming challenging to make ESC’s any smaller and lighter without sacrificing performance and cooling. You want to keep your mini quad as light as possible, however, ESC is probably not the best place to save weight.
Smaller/lighter ESC’s generally has poorer heat dissipation, which leads to concerns of overheating.
Some ESC’s support input voltages up to 6S, some only support up to 4S. Make sure they are compatible with the LiPo voltage you plan to use. Powering your ESC with an excessively high voltage will fry them, and possibly your motors as well.
There are ESC’s that come with a built-in BEC (battery eliminate circuit) and have 5V output for powering your flight controller, radio receiver (RX) and other 5V components.
The ones that don’t have built-in BEC, are often referred to as “Opto” ESCs by marketers and manufacturers, despite this claim though, they don’t actually use opto-isolators.
An opto-isolator is an optical component that transfers signals using light. It basically separates the high voltage circuit from the low voltage circuit, and prevents rapidly changing voltages from damaging the electronics or interfering with the signals from the FC.
ESC’s that don’t have a BEC have the advantage of being lighter, smaller, and less noisy (since the motor control circuitry is optically isolated from the radio receiver and flight controller).
Without the 5V BEC however, your FC and RX will require a separate power source. (Note: ESC’s without a BEC don’t have the “red” servo wire, only the signal and ground wires)
BLHeli ESC Configurator
For BLHeli_32 users, you can only use BLHeliSuite_32 to flash and configure your ESC. However, BLHeliSuite only runs on Windows.
BLHeli_S is slightly more flexible as there is a 3rd party BLHeli Configurator that runs on Linux as well. But of course you can still use BLHeliSuite to flash and configure your ESC as usual. These two programs works for both BLHeli, BLHeli_S, but NOT BLHeli_32.
A convenient option is the 4-in-1 ESC, which is basically four ESC’s integrated into one single board of the same size as an flight controller, which you can stack together to make wiring much simpler and cleaner. However damaging one of the ESC’s means the retirement of the whole board. This is a trade off between risk and convenience.
4-in-1 ESC’s are also beneficial in terms of weight distribution, as the mass is more centralized there is less moment of inertia to the mini quad, which should improve responsiveness.
4in1 ESC is normally installed right under the flight controller, you have to take care of interference coming from the ESC, that could potentially affect your flight performance and video. An easy solution is to put a piece of shielding in between ESC and FC.
How to Connect ESC?
ESC is powered directly by LiPo battery, and motor speed is controlled by a signal from the flight controller.
The motors are connected to the ESC through 3 wires. The wire order doesn’t actually matter. If the motor spins the wrong direction, simply swap any two wires. You can also change the rotation direction setting in BLHeliSuite.
Here is a guide on how to reverse motor direction.
Single ESC Connection:
4in1 ESC Connection:
An ESC is made up of the following components:
- Micro Controller
- Gate Drivers
- Arrays of filtering capacitors
- Optional: Current Sensor
- Optional: LED
A 4in1 ESC basically has four ESC integrated on the same piece of PCB.
These are voltage regulators for converting voltage down to power the micro controller and other components.
Micro controller, or MCU, is the brain of an ESC, and stores the BLHeli firmware.
Gate drivers are used to drive the MOSFET’s in our ESC, and actually bring benefits to the performance. It’s connected to the gate of a MOSFET hence the name “gate driver”.
Older and Cheaper ESC’s use simple transistors to drive the MOSFET’s. Using dedicated gate drivers improves active braking effectiveness.
Instead of having separate gate drivers for the three motor phases, modern BLHeli_32 ESC uses the FD6288 IC chip by Fortior. One of these chips contains three independent MOSFET gate drivers in one single chip.
MOSFET are like switches, it switches the power on and off thousands of times per second, this is how the motors are driven.
ESC Name Brands
Popular, high performance and well-known ESC manufacturers for racing drones (in alphabetic order):
Sorry if I missed anyone, please remind me in the comments.
ESC Affects Thrust
Some ESC’s can generate slightly more thrust than others with the same setup (same motor, prop, voltage…).
From my early testing, there can be a discrepancy of up to 20% in thrust output between the most and least powerful ESC’s on the market. However that does not indicate the quality of the ESC, which can depend on many other factors: build quality, longevity, supported voltage range, smoothness, electrical noise level, etc… It all depends on what kind of flying you do.
Personally I would not worry about thrust too much, as all the latest ESC’s from the well known brands more or less provide similar level of power and performance nowadays.
Back in the days when we had multiple different firmware options, bootloader was an important aspect of flashing an ESC. Think of it as a small program you need to install on the ESC, to let you load and access it more easily.
Today we don’t even need to know what bootloader is, since new ESC’s always come with BLHeli firmware and BLHeli bootloader installed already. Users don’t normally need to worry about it. However here is some info for the curious.
Without the bootloader, you can only flash firmware or change ESC config by connecting directly to the processor chip. You can also install the bootloader while flashing firmware this way.
SimonK and BLHeli both have their own bootloaders. BLHeli bootloader offers more features and flexibility, making firmware flashing and configuration much easier. Initially we could flash firmware via the signal lead, using 1-wire interface. More recently “passthrough” became an option, which basically uses the flight controller as the programmer.
Please See our “Top 5 Best” articles to see which ESC we recommend for mini quad.
- Jul 2016 – Article created
- Aug 2017 – updated article with info about BLHeli_32 and 32-bit processors
- Feb 2020 – Updated info, added ESC anatomy and connection diagrams