Factory startup beeps are boring — two ascending tones, and your quad sounds like every other quad at the field. BLHeli_32 ESCs support custom startup melodies up to 64 notes, turning your power-up sequence into anything from the Super Mario theme to a recognizable pattern that identifies your quad before it even leaves the ground. It’s also surprisingly useful: on a race line, you know your quad armed successfully by the melody, not just the beeps.
How BLHeli_32 Startup Music Works
BLHeli_32 reserves space in ESC flash memory for a 64-note melody table. Each entry is a frequency (in Hz) and a duration (in milliseconds). The ESC plays these tones through the motor windings during the final phase of the startup sequence — after the three ascending initialization beeps, before the ready tone. The motor itself becomes a speaker; the ESC pulses the windings at the specified frequency to vibrate the bell and produce audible sound.
Only BLHeli_32 ESCs support this. BLHeli_S (even with Bluejay firmware) does not include custom melody functionality. Check your ESC configurator — if you see a “Music” or “Melody” tab, you have a 32-bit ESC. If you don’t, you have BLHeli_S.
Step 1: Open BLHeliSuite32 or the Web-Based ESC Configurator
Connect your quad via USB (battery not required for configuration). In BLHeliSuite32, select the correct COM port and click “Read Setup.” All connected ESCs appear. Select any ESC and click the “Music Note Editor” button, or navigate to the “Melody” tab. The editor shows a piano-roll grid where you can enter notes graphically, or you can paste raw note data.
Step 2: Compose or Import a Melody
Each note has two parameters: frequency in Hz and duration in milliseconds. The editor provides a piano keyboard interface where you click notes on a staff. For precise control or longer melodies, use the text-based editor:
# Note format: FREQUENCY HZ, DURATION MS
# Total allowed: 64 notes maximum
# Gen 1: 10 notes, Gen 2: 13 notes (some ESCs vary)
# Leave ~80ms of silence (0 Hz) between notes for clarity
0,80 # Silence before melody
523,150 # C5 - 150ms
587,150 # D5
659,150 # E5
0,80 # Gap
659,150 # E5
659,300 # E5 held longer
0,200 # End silence
The editor versions (Gen 1 and Gen 2) differ in max note count. Gen 1 ESCs support 10 notes with basic durations. Gen 2 ESCs support 13 notes with finer duration control. Check your ESC firmware version — 32.7 and later typically support Gen 2.
Step 3: Write Melody to All ESCs
After composing, click “Write Melody to All ESCs.” The configurator sends the melody data to each ESC sequentially. This takes 5-10 seconds. Disconnect, power cycle the quad with a battery, and listen. All four ESCs now play the same melody in approximate sync — slight timing differences between ESCs create a natural chorus effect that actually sounds better than perfect synchronization.
Troubleshooting: ESCs Silent or Wrong Notes
Symptom: No startup melody at all, only the three initialization beeps. The melody table is empty or the ESC doesn’t support custom music. Re-read the ESC setup and verify you’re connected to BLHeli_32, not BLHeli_S. If the ESC is confirmed 32-bit, re-write the melody and power cycle.
Symptom: Melody plays but sounds garbled or out of tune. Frequency resolution on BLHeli_32 is limited — the actual played frequency is approximated to the nearest value the ESC timer hardware can produce. Notes above ~800Hz tend to sound progressively sharper than intended. Stick to the C4-B5 range (262-988 Hz) for clean tone reproduction.
Symptom: One ESC is silent while others play. That ESC may have a corrupted flash or a hardware issue. Try re-writing the melody to just that ESC. If it remains silent after a verified write, the ESC may need a firmware re-flash or replacement.
BLHeli_32 Note Frequency Reference
| Note | Octave 4 (Hz) | Octave 5 (Hz) | Octave 6 (Hz) | Sounds Best On |
|---|---|---|---|---|
| C | 262 | 523 | 1047 | Clear, strong fundamental |
| D | 294 | 587 | 1175 | Clean, slight warmth |
| E | 330 | 659 | 1319 | Bright, cuts through noise |
| F | 349 | 698 | 1397 | Warm, round tone |
| G | 392 | 784 | 1568 | Strong, resonant |
| A | 440 | 880 | 1760 | Sharp, pitch-accurate |
| B | 494 | 988 | 1976 | Slightly sharp on BLHeli_32 |
What Most Pilots Get Wrong About Startup Music
Mistake 1: Using frequencies above 1kHz. Above ~1kHz, the BLHeli_32 timer resolution produces noticeable pitch errors. What sounds like C6 in the editor comes out as something between B5 and C#6 on the quad. Stay in the 260-880Hz range for reliable pitch accuracy.
Mistake 2: No silences between notes. Without at least 60-80ms of silence (frequency = 0) between notes, adjacent tones blend into each other because the motor bell takes ~30ms to stop vibrating from the previous note. Your melody sounds like a continuous tone with pitch wobble instead of distinct notes.
Mistake 3: Assuming melody length is unlimited. The 64-note limit is hard-coded in BLHeli_32 firmware. If you paste a melody with 70 notes, the last 6 are silently truncated. Count your notes — including silence entries. A silence entry with frequency=0 still counts as a note.
Mistake 4: Disconnecting battery before melody finishes. If you unplug the battery mid-melody, the FC loses power first, which can trigger a brown-out condition on the ESC signal line. The ESCs interpret this as a signal loss and may enter an error state. Always let the melody complete (2-3 seconds max) before disconnecting.
⚠️ Regulatory Notice: The flight recommendations in this article should be followed in accordance with the latest 2026 drone regulations in your country or region. Always verify local laws regarding flight altitude, no-fly zones, remote ID requirements, and registration before flying. Regulations vary significantly between the FAA (US), EASA (EU), CAA (UK), CAAC (China), and other authorities.
Custom startup tones are the fun part of BLHeli_32 — but the ESC settings that actually affect flight are in the main configuration tabs. Our BLHeli_32 ESC settings guide covers startup power, motor timing, and demag compensation — the settings that prevent desyncs and protect your motors.
If you need to reverse a motor’s direction after building, our BLHeli_32 motor direction reversal guide walks through the ESC configurator method and the Betaflight resource remapping alternative. Getting motor direction right is step one — adding custom music is the reward for a properly configured build.
For BLHeli_S pilots who want customization but can’t run startup music, our BLHeli_S to Bluejay flashing guide covers the upgrade path. Bluejay doesn’t support custom melodies either, but it does enable bidirectional DShot and RPM filtering — more useful than a startup tune if you’re still on BLHeli_S.
For the cleanest BLHeli_32 experience with reliable melody support, the T-Motor F55A Pro II 4-in-1 ESC uses genuine BLHeli_32 firmware with full Gen 2 music note editor support and 13-note melody capacity. Pairs perfectly with T-Motor’s F7 flight controller stack for a matched build.
