Betaflight beeper vs ESC startup melodies — what's the difference?
Two completely different systems make noise on your quad, and pilots mix them up constantly. Here's what the FC beeper does, what ESC melodies do, and when you want which.
"My quad already beeps — isn't that the same thing?"
No, and the confusion is understandable because both systems make noise out of the same aircraft. But they're entirely separate mechanisms with different hardware, different configuration, and different jobs. Untangling them will save you a lot of head-scratching in both configurators.
System 1: the flight controller beeper
Most flight controllers have a solder pad for a small piezo buzzer — a dedicated sound component, usually 5 V, controlled by Betaflight (or Emuflight/INAV). This is the thing that:
- Beeps when you flip your beeper switch to find a downed quad
- Screams on low battery
- Chirps RC-link-loss warnings
- Confirms arming/disarming with short blips
Betaflight controls it through beeper conditions in the CLI — you choose which events beep, but the sound itself is fixed-function: monotone blips at whatever frequency the piezo resonates at. There's no melody support worth speaking of. It's an alarm, not an instrument.
If you didn't solder a buzzer on, this system is silent. Plenty of modern builds skip the buzzer entirely and use the next thing instead.
System 2: ESC tones through the motors
This is the system this whole site is about. Your ESCs drive the motor windings at audio frequencies, turning each motor into a small speaker — no extra hardware at all. Out of the box this produces the familiar power-up jingle ("da-da-da-dum" on connect). With Bluejay firmware, that jingle becomes a programmable 62-note melody per ESC — actual songs, in up to four-part harmony on a quad.
Configuration lives in the ESC configurator (esc-configurator.com), not Betaflight. Betaflight never sees your melody; it's stored in the ESC's own flash and plays when the ESC initialises.
The crossover: "beacon" via motors
Here's where pilots get tangled. Betaflight has a feature called DSHOT beacon (beacon in the CLI) that uses the motors as a lost-model buzzer — the FC sends a DSHOT command and the ESC plays a tone through the motor. So you can have buzzer-style functionality with no buzzer soldered.
That means motor noise can come from two masters:
| FC piezo buzzer | DSHOT beacon | ESC startup melody | |
|---|---|---|---|
| Hardware | separate piezo | motors | motors |
| Configured in | Betaflight | Betaflight | ESC configurator |
| Sound | monotone blips | monotone tones | full melodies |
| When it plays | events you choose | beeper switch / RX loss | power-up & arming |
| Needs Bluejay? | no | no | for custom songs, yes |
When you want which
Keep a real piezo buzzer if you fly long range. A downed quad in a field with a dead ESC (crash damage) can't beep through its motors. The independent piezo keeps screaming as long as the FC has power. Beacon-via-motors is a convenience, not a full replacement.
Use DSHOT beacon on tiny builds. On a 20-gram whoop, a piezo is meaningful weight. Beacon costs nothing.
Use ESC melodies for everything expressive. Startup identity, the arming moment, making the field grin — that's melody territory, and the piezo physically can't do it.
They coexist happily. A typical setup on our bench quads: Bluejay melody on power-up, DSHOT beacon bound to a switch for find-me duty, no piezo on the 5-inchers, piezo retained on the long-range 7-inch.
One gotcha
If your quad makes unexpected tones mid-session — rhythmic beeping while sitting armed-idle — that's almost never your melody. Check Betaflight's beeper conditions first (beeper list in CLI); RX_LOST and BAT_LOW are the usual suspects. Melody plays at initialisation and arming, then gets out of the way. Anything else is an alarm trying to tell you something — our troubleshooting guide has the full sorting logic.