How to Flash and Configure BLHeli_32 ESCs: The Complete Walkthrough
BLHeli_32 has been the dominant ESC firmware for FPV drones since 2017, and even as AM32 gains ground, the vast majority of pilots will encounter BLHeli_32 hardware. Whether you’re building a new quad, updating firmware, or troubleshooting a twitchy motor, knowing how to flash and configure your ESCs is an essential skill. This guide covers everything from driver installation to RPM filtering setup, with hard-won troubleshooting tips along the way.
Prerequisites: What You Need
Before you begin, gather the following:
- BLHeliSuite32 (Windows) or BLHeli Configurator (cross-platform, web-based). The web configurator works through Chrome/Edge and is increasingly the preferred tool.
- Betaflight Configurator 10.8.0 or later, with your flight controller flashed to BF 4.3+ for RPM filtering support.
- USB cable that supports data (not just charging).
- LiPo battery — your ESCs cannot be configured over USB power alone. The flight controller will power up, but the ESCs need battery voltage to respond.
- Props OFF. I cannot stress this enough. Remove your props before plugging in a battery for ESC configuration. A motor spinning up unexpectedly can cause serious injury.
Step 1: Connecting to Your ESCs
The first hurdle is establishing a connection. Modern flight controllers use ESC passthrough, which lets Betaflight relay your USB connection directly to the ESCs. No external programmer is needed.
- Plug in the USB cable to your flight controller.
- Open Betaflight Configurator and connect.
- Plug in your LiPo (props off!).
- Open BLHeliSuite32 or BLHeli Configurator.
- Select the correct COM port (same one Betaflight uses).
- Click “Connect” or “Read Setup.”
If the connection fails, common culprits are:
- Betaflight still connected: Disconnect Betaflight Configurator before connecting the ESC tool. Only one application can use the COM port at a time.
- Wrong COM port: Check Device Manager (Windows) or ls /dev/tty* (Mac/Linux) for the correct port.
- ImpulseRC Driver Fixer: If you’re running an older F4 flight controller on Windows, you may need the ImpulseRC driver fixer tool. F7 and H7 controllers generally don’t require this.
- Battery not plugged in: No battery = no ESC power = no communication. The ESCs beep their startup tones when they receive power — if you didn’t hear those tones, your battery isn’t connected.
Step 2: Reading and Understanding Your ESC Configuration
Once connected, you’ll see all four ESCs in a list. Each shows its firmware version, layout target, and key settings. The most important parameters:
| Setting | Recommendation | Explanation |
|---|---|---|
| Motor Direction | Set in Betaflight, NOT here | Leave all ESCs set to “Normal” and configure direction in Betaflight’s Motor Direction wizard |
| Motor Timing | 16-18° (Medium) | Good balance of power and efficiency. Go higher (22°) for racing, lower (15°) for efficiency |
| Demag Compensation | High for 6″+ props | Prevents desync under heavy load. Low/Medium for 5″ and smaller |
| PWM Frequency | 48kHz | Runs cooler than 24kHz. Nearly all modern builds use 48kHz |
| Rampup Power | 50-75% | Start at 50%. Increase if motors stutter on rapid throttle changes |
| Brake on Stop | Off | Only useful for 3D/reversible flight |
| Minimum/Maximum Throttle | Default (1048/2020) | Leave at defaults unless you know what you’re doing |
You can configure all four ESCs at once using the “Flash All” or multi-select options. There’s rarely a reason to set ESCs differently from each other.
Step 3: Flashing New Firmware
Keeping your ESCs updated is important for bug fixes, new features, and compatibility with the latest Betaflight versions. The flashing process:
- In BLHeliSuite32, click “Flash BLHeli.”
- Select your ESC layout. The tool usually auto-detects this — if not, check the label on your ESC or look up your 4-in-1 ESC model. Common layouts: G-H-30 (Hobbywing), A-H-30 (Aikon), TMotor variants.
- Choose the firmware version. Select the latest non-beta release unless you’re specifically testing new features.
- Uncheck “Flash Individual” — flash all four simultaneously.
- Click OK and wait. Each ESC takes 5-10 seconds to flash.
Critical warning: Never disconnect power during a flash. If the flash fails mid-process on even one ESC, that ESC may be bricked and require a C2 programmer or Arduino to recover. Ensure your battery is fully charged and connections are solid before flashing.
Step 4: Enabling Bidirectional DShot and RPM Filtering
This is the single most impactful configuration change you can make. Bidirectional DShot lets the flight controller read each motor’s actual RPM in real time, enabling RPM-based notch filtering that dramatically reduces noise — often eliminating the need for traditional notch filters entirely.
BLHeli_32 firmware version 32.7 or later is required for bidirectional DShot. Once flashed:
- In Betaflight Configurator, go to the Configuration tab.
- Under “ESC/Motor Features,” select DSHOT300 or DSHOT600 as your ESC protocol. (DSHOT1200 works on F7/H7 FCs; avoid on F4 due to DMA conflicts.)
- Enable Bidirectional DShot (it will appear once DShot protocol is selected).
- Save and reboot.
- Go to the Motors tab. With your battery plugged in (props off!), spin up each motor individually to ~1100. You should see the RPM reading populate in the “RPM” column. If all four show RPM data, bidirectional DShot is working.
Now configure the RPM filters:
- Go to the PID Tuning tab, then the Filter Settings sub-tab.
- Set both Gyro RPM Filter Harmonics sliders to 3 (a safe starting point).
- Set RPM Filter Min Frequency to 100 Hz.
- Optionally, reduce or disable the dynamic notch filter. With RPM filtering working, many pilots set the Dynamic Notch Count to 1 or even disable it entirely for lower CPU usage.
- Save.
The result: your motors run cooler, your gyro noise floor drops significantly, and your PIDs can be pushed higher without oscillation. It’s one of the biggest free upgrades in FPV.
Step 5: Motor Direction and Order
Betaflight 4.3+ handles motor direction entirely in software via the Motor Direction wizard. This is vastly simpler than reprogramming each ESC individually:
- In Betaflight, go to the Motors tab.
- Click “Motor Direction.”
- Follow the wizard: it will spin each motor and ask you to confirm the direction. You can flip individual motors with a button click.
- Alternatively, use the simplified “Reverse Motor Direction” toggle to switch between “props in” and “props out” configurations for all four motors at once.
Leave all BLHeli_32 ESCs set to “Normal” direction and handle everything in Betaflight. This way, if you swap an ESC, you don’t need to worry about firmware-level direction settings.
Troubleshooting Common Issues
| Symptom | Likely Cause | Fix |
|---|---|---|
| ESC not detected / “ESC 1 not found” | Bad connection, wrong protocol, or burned ESC | Check motor signal wire, verify DShot protocol in Betaflight, test with a known-good ESC |
| Motor stutters / twitches | Bad solder joint, wrong timing, or demag too low | Reflow the three motor-phase solder joints, increase motor timing to 20°, set demag to High |
| ESC reboots mid-flight (death roll) | Voltage sag, excessive noise, or desync | Install low-ESR capacitor on battery pads, lower rampup power, check motor screws aren’t touching windings |
| RPM filtering shows zero RPM | Bidirectional DShot not enabled or firmware too old | Flash BLHeli_32 32.7+, enable Bidirectional DShot in Betaflight |
| One motor spins differently | Direction set in BLHeli instead of Betaflight | Reset all ESCs to Normal direction, use Betaflight Motor Direction wizard |
| Flash fails / bricked ESC | Power loss during flash or wrong firmware target | Use C2 interface programmer (Arduino-based) to force reflash. Last resort: replace ESC |
AM32: The Successor
While this guide focuses on BLHeli_32, it’s worth mentioning AM32 — the open-source ESC firmware gaining rapid adoption. AM32 offers higher PWM rates (up to 128kHz), better startup performance, and no licensing fees. The flashing process is similar (use the AM32 Configurator or EscConfigurator.com), and it supports bidirectional DShot and all the same Betaflight features. If you’re buying new ESCs in 2026, consider AM32-native hardware — but for the millions of BLHeli_32 ESCs already in the wild, this guide has you covered.
ESC configuration can feel intimidating the first time, but once you’ve done it a few times, it becomes a 5-minute routine. The combination of BLHeli_32 on 48kHz PWM with bidirectional DShot and RPM filtering is the foundation of every smooth-flying quad in 2026. Take your time, double-check your settings, and always — always — remove your props before plugging in.
