In this tutorial I will show you how to calibrate ESC for FPV drones and RC planes. ESC calibration is essential for ensuring that your ESC responds accurately to the full throttle range of your radio.
Table of Contents
Understanding When and Why to Calibrate ESC
Firstly, it’s crucial to know that ESC calibration is necessary only if you’re running it from an analog signal such as PWM, OneShot and Multishot.
- If your ESC is connected to a PWM receiver, then you should do an ESC calibration.
- If your ESC is connected to a flight controller using PWM, Oneshot or Multishot protocols, then you should do an ESC calibration.
- If your ESC is connected to a flight controller using digital protocols like DShot, then ESC calibration isn’t needed and you can skip this tutorial.
Learn more about ESC in this buyer’s guide: https://oscarliang.com/esc/
The calibration process sets the low and high throttle range for the ESC. This range might vary from radio to radio, that’s why it’s essential to calibrate ESC with your radio. For instance, while one radio might send signals from 1000ms to 2000ms, another might operate within a slightly different range. Calibration aligns the ESC’s understanding of this range with that of your radio.
And if you are using a flight controller, due to the possibly different speed of the oscillators (or clock) in ESC’s and FC, the signal pulse length might be measured slightly differently by ESC and FC. Especially when the signal we are talking about are down to the level of micro seconds. By calibrating ESC, it syncs the oscillators between them.
Note that only “analogue” ESC protocols require ESC calibrations, including PWM, Oneshot and Multishot. Digital protocol such as DShot does not require ESC calibration.
The Calibration Process with PWM Receiver
Important: REMOVE PROPELLERS when working with your quad/plane on the bench.
- Start with your ESC unpowered.
- Set your radio’s throttle to the maximum position.
- Connect power to your ESC. You’ll hear initialization beeps.
- Once the beeps finish, immediately drop the throttle to zero.
- Listen for a confirmation tone indicating the calibration is successful.
- The motor should now respond immediately to throttle input, confirming the success of the process.
- After calibration, unplugging and re-plugging the ESC will save the new settings.
After calibration, you should observe that the motor responds to even the slightest movement of the throttle, indicating a successful calibration. Using a servo checker, you can verify the calibration.
How to Calibrate ESC with Flight Controller
If you have the ESC connected to a flight controller, and you are using PWM ESC protocol, you can calibrate your ESC in the Flight Firmware’s Configurator. I will use Betaflight as an example.
Important: REMOVE PROPELLERS when working with your quad/plane on the bench.
Make sure LiPo battery is disconnected from the quad. Now connect your flight controller to Betaflight Configurator.
Go to the “Motors” tab in the Configurator, and enable the check box “I understand…” at the bottom. Move the master slider all the way to the top, that will send the maximum throttle signal to all motors.
You can now connect the battery. When the ESC receives max throttle signal at power up, they will enter calibration mode and your motors will beep for a few seconds to indicate that.
When the motors stop beeping, you can drag the master slider all the way down to the bottom. This will send a zero throttle value to the ESC, and the motors will beep (musical tones) again to indicate the calibration is completed successfully.
Calibrate ESC in BLHeliSuite
The steps are the same as using the Motors tab in Betaflight configurator, it’s just a different interference.
- Remove propellers for safety.
- Unplug LiPo from quad, connect USB from PC to FC
- Connect BLHeliSuite, and go to the Motors tab
- Enable “I Understand” checkbox, and drag the last slider all the way up (M), this will bring all the sliders to maximum including motor 1 to 4
- Plug in your LiPo, your motors will beep for a few seconds
- When the beeping stops, drag the slider all the way down
- Motors will beep for a few seconds again and the process is complete
Conclusion
Calibrating your ESC is straightforward but crucial for optimal performance. Follow these steps carefully to ensure your aircraft responds accurately to your throttle inputs if you’re using analog protocols such as PWM signals.
Edit History
- Jun 2018 – article created
- Jan 2024 – updated
8 comments
I burned my esc doing this crocedure with betaflight
This helped me out, Thanks so much!!!
Dear Oscar, I found the solution. For my ESC the procedure is not correct. And all the info and videos I found on the net are wrong for my ESC: XXD HW30A 30A ESC, which are a chinese clone of the SkywalkerV2 from HobbyKing. This is the correct procedure from HK manual: “Throttle range setting (Throttle range should be reset whenever a new transmitter is being used) Switch on the t r a n s m i t t e r, move throttle st ick to th e to p po s i t i o n
Connect battery pack to the ESC, and wait for about 2 seconds
The “Beep-Beep-” tone should be emitted, means the top point of throttle range has been confirmed
Move throttle stick to the bottom position, several “beep-” tones should be emitted to present the
amount of battery cells
A long “Beep-” tone should be emitted, means the lowest point of throttle range has been correctly confirmed”
Hope this will be of help to others. Thanks for your great work Oscar!
Dear OScar, I cannot calibrate ESC: they enter calibration mode (musical tone) but when I lower to minimum the slider they do not exit calibration mode: they just beep 1, then 2, then 3 times and repeat…leaving ESC not calibrated. Any ideas? (yes motors do work correctly, just not in sync…)
Does the configurator need to be set to multishot for the calibration, or does it not matter for the calibration itself?
Calibrate the ESC with the protocol you plan to use.
Use soft mount for your motors. ;).
Thanks, will try it asap, nice tip!
Even with Dshot600 support, multishot seems a lot smoothier for me, never calibrated, so must be doing something wrong.. lol
My esc is Racerstar 30A LiteS, wich”compatible” with DShot600 and caps already removed by default.
Some say it’s because my motors (Racerstart 2205 2300kv) that have a terrible resolution.