One problem FPV drone pilots face is motor or ESC burnout due to a blocked motor, particularly when your drone crashes into a tree or a similar obstacle. I will show you a way to reduce the chance of these instances, using the Betaflight RPM Alarm element in OSD. This feature alerts you when a motor is not spinning correctly or is blocked, potentially saving your motor or ESC from burning out.
Table of Contents
The Issue with Motors Getting Stuck
To give a bit of context, when you crash into a tree and your drone is stuck, you might try to arm your quadcopter or use turtle mode to shake it free. While doing so, if a branch is stuck in the motor, it can lead to high current surges being sent through the motor by the ESC in an attempt to make it spin. This surge of current can burn out the ESC or the motor. So, wouldn’t it be great if you could get an alarm warning you of such a situation?
Introducing the Betaflight RPM Alarm
Having a warning system that indicate which motor is getting stuck is very useful, especially for pilots who crash a lot. It helps you decide whether you can safely shake the quad free, get it back up in the air, or do the walk of shame and go pick it up yourself.
The RPM alarm works by displaying a warning on your OSD (on-screen display) when it detects that one of your motors is not spinning as expected by checking its RPM, potentially indicating that it’s jammed or blocked.
How Does It Work?
To enable this warning, you can do it via Betaflight configurator’s CLI. Enter this command:
set osd_esc_rpm_alarm = 1000
The value ‘1000’ is the RPM threshold. If the motor’s RPM falls below this value, the warning will be triggered. This setting only works with ESC telemetry RPM and NOT bi-directional DShot. That means your ESC needs to have a telemetry wire going to the flight controller. Here’s how to set it up: https://oscarliang.com/esc-telemetry-betaflight/
You might wonder why Betaflight needs a separate ESC telemetry wire when it already knows the motor’s RPM through bidirectional DSHOT. Unfortunately, this seems to be an oversight in the Betaflight code. The alarm only triggers if the RPM data is coming via ESC telemetry.
The Motor Diagnostics Alternative
If you’re unable or unwilling to set up ESC telemetry, you can enable the “Motor Diagnostics” OSD element. This feature uses bidirectional DSHOT instead of ESC Telemetry, and displays for each motor the level commanded or an “S” if stalled. It won’t pop up as a warning, but it’s always there, helping you know when you’re caught in a flag or a gate and a motor isn’t spinning. To use this, check the Motor Diagnostics box in the OSD, and you’ll see “SSSS,” indicating which motor is stalled. When it’s not stuck, you will see “—-“.
No one likes a burnt-out motor or ESC, and tools like the Betaflight RPM Alarm or the Motor Diagnostics OSD element help prevent these unfortunate situations. While these tools may require a bit of setup and technical understanding, they’re incredibly valuable for saving your FPV drone from potential damage. So, next time you’re preparing for a flight, consider setting up these safeguards – you’ll thank yourself later.