ESC PWM Frequency — 24 vs 48 vs 96 kHz

ESC PWM frequency controls how often the ESC updates the power delivered to the motor. Higher frequency = smoother power delivery, lower frequency = less heat but coarser control.


What PWM Frequency Does

The ESC uses PWM to modulate the voltage applied to each motor phase. The frequency determines how many times per second this switching happens. At the same duty cycle (same average power), a higher frequency packs more switching cycles into the same window — finer control, but more switching events per second:

  • 24 kHz — coarser switching, less switching loss, lower ESC temperature
  • 48 kHz — balanced; default on most modern ESCs; smooth control, moderate heat
  • 96 kHz — finest switching, best motor smoothness, higher ESC heat

Higher frequency reduces the "buzzing" feeling in the motors at hover and gives the flight controller more granular motor control, which helps filtering and PID stability.


Trade-offs

FrequencySmoothnessESC heatMotor efficiencyDesync risk
24 kHzLowerLowSlightly higherLower
48 kHzGoodModerateGoodLow
96 kHzBestHigherSlightly lowerHigher (some ESCs)
  • 24 kHz is preferred for long-range / efficiency builds where flight time matters and the tune is conservative.
  • 48 kHz is the default for most freestyle and 5" racing quads.
  • 96 kHz is popular for 5" freestyle where the smoother motor response helps with propwash, but verify your ESC supports it (not all BLHeli_32 ESCs are stable at 96 kHz at full throttle).

Setting PWM Frequency

Via BLHeli Configurator / ESC-Configurator

Connect via passthrough or direct USB, open ESC-Configurator or BLHeli Configurator, and set PWM Frequency per ESC (or all at once).

Via Betaflight CLI (BLHeli_32 with telemetry)

Some setups allow setting via Betaflight:

1# Check current ESC settings (BLHeli_32 with telemetry)
2# Usually done through BLHeli Suite / ESC Configurator, not BF CLI

Via AM32 ESC

AM32 (open-source alternative to BLHeli_32) exposes PWM frequency directly:

1# In AM32 configurator
2# Set "Input PWM Frequency" to 24 / 48 / 96 kHz

With RPM Filter (DSHOT Bidirectional)

If you're using the RPM filter, the ESC must support bidirectional DSHOT. Most BLHeli_32 ESCs do.

RPM filter + 48 kHz is the standard pairing for modern freestyle builds. Going to 96 kHz with RPM filter gives marginal additional improvement and increases ESC heat — not always worth it.

In Betaflight CLI:

1set dshot_bidir = ON
2set motor_pwm_protocol = DSHOT300  # or DSHOT600
3save

After enabling bidirectional DSHOT, verify in the Motors tab that RPM telemetry is visible (each motor shows RPM readout).


Notes

  • Some ESCs claim 96 kHz support but become unstable under heavy load. Test with aggressive throttle punches before flying over anything expensive.
  • Changing PWM frequency requires a power cycle on most ESCs.
  • PWM frequency is separate from DSHOT protocol — DSHOT is a digital protocol; the PWM frequency setting affects the analog phase switching on the motor windings.

Related Snippets