Demag Compensation & ESC Protection Settings

A handful of ESC-side settings decide how reliably a motor spins up and how it behaves when abused. The headline failure they guard against is desync — the mid-air motor cutout that ends in a crash. This covers demag compensation, startup/rampup power, and the protection group in BLHeli_32 and AM32. For the timing lever that interacts with all of them, see Motor Timing Advance.


The problem: desync

A brushless ESC is sensorless — it has no encoder. It figures out rotor position by measuring the back-EMF (BEMF) voltage on the undriven phase and detecting its zero-crossing to time the next commutation.

If the ESC mistimes a commutation, it energises the wrong phase, the rotor fights it, and the motor loses sync — it stops, stutters, or grinds. Symptoms: a motor that cuts on a hard punch, stutters at low RPM under load, or "catches" and drops the quad. Common triggers:

  • Rapid throttle changes (punch-outs, flip stops)
  • High load at low RPM
  • Electrical noise (6S, high-current builds)
  • Long demagnetization time after a phase switches off
flowchart TD
    S[Motor cuts / stutters<br/>on punch or low-RPM load] --> A{When?}
    A -->|On hard throttle jumps| B[Raise Demag Compensation<br/>then lower Rampup Power]
    A -->|At spin-up / weak starts| C[Raise Startup / Rampup Power]
    A -->|Low-kV motor, low voltage| D[Low RPM Power Protect:<br/>On Adaptive, or Off if needed]
    B --> E[Retest with full-throttle punches]
    C --> E
    D --> E

Demag Compensation

When a phase switches off, current in the winding does not stop instantly — the winding's inductance keeps it flowing while it demagnetizes. During that window the BEMF reading is corrupted, and at high RPM or high load the demag time can eat into the detection window and cause sync loss.

Demag compensation detects a demag situation and cuts power briefly to protect sync:

SettingBehaviour
OffPower is never cut — maximum performance, least safe
LowCuts power gently on a detected demag event
HighCuts power more aggressively — stronger protection
Very High (32.9+)Most aggressive cut

A higher setting gives better protection but can slightly reduce top-end power on some motors (it limits acceleration to tame current spikes). High commutation timing fights the same problem but costs efficiency — demag compensation is the targeted alternative.

Practical: leave it at default unless you get desync. Raise to High for 6S / high-power / hex builds or if you see stutter on punches.


Startup / Rampup Power

This limits how much power the ESC may apply at low RPM and during spin-up. The cap exists so BEMF stays detectable while the motor is barely turning.

  • BLHeli_32 "Rampup Power" (older name: Startup Power): relative 3%–150%. Too low → weak or failed starts and stutter; too high → current spikes, desync, and a noisier quad.
  • AM32 splits it in two:
    • Startup Power — a short boost during only the first few commutations, to kick the motor into rotation.
    • Minimum Duty Cycle — a floor (up to ~25%) so tiny/low-inertia motors don't stall at very low throttle.

Reducing rampup power is a valid lever against desync and electrical noise, at the cost of slightly softer motor response.


Low RPM Power Protect

Limits power specifically in the low-RPM region to keep sync.

  • On (default) — safe for almost every quad.
  • Off — only needed to get full power from some low-kV motors on low supply voltage; disabling it raises the risk of sync loss and can cook the motor or ESC.
  • On Adaptive (32.9+) — scales the limit from kV × voltage; a good "set and forget" for any motor/voltage.

Leave this On unless you have a specific low-kV/low-voltage reason.


Temperature Protection

The ESC monitors its MCU temperature and progressively reduces motor power once it passes the threshold, down to roughly 25% if it keeps climbing. The threshold is selectable (typically 140/150/160/170 °C, or disabled).

Keep it enabled — it is a last-ditch guard that saves the ESC from thermal death; it should rarely engage on a healthy build. If it's engaging, fix the real cause (timing too high, PWM too high, prop too heavy — see ESC PWM Frequency and Motor Timing Advance).


Current Protection

A hard amperage cap per ESC. When enabled, current is limited to the programmed value, and the limiter is fast enough to act during accelerations (AM32 does this with a proper current PID loop).

Leave it off by default — as long as the ESC's current rating suits the build, you don't need it. It's mainly a safeguard against burning an ESC on repeated crashes/desyncs.


Settings mainly for other craft

SettingWhat it doesOn a quad
Low Voltage ProtectionCuts/limits power below 2.5–4.0 V per cellOff — the FC handles vbat warnings; you never want the ESC cutting power mid-flip
Stall ProtectionBoosts throttle to prevent stalling under loadOff — a crawler/RC-car feature; causes heat and odd behaviour on quads
Brake on StopApplies braking at zero throttleUsually Off — meant for fixed-wing folding props (Air Mode brakes differently)

These protections are the same on every build, from a 65 mm whoop to a 5":

AlwaysValue
Temperature ProtectionEnabled (~140–150 °C)
Current ProtectionOff
Low Voltage ProtectionOff (the FC handles vbat)
Stall ProtectionOff
Brake on StopOff

What actually scales with prop size is demag and startup: smaller, lower-voltage builds pull little current and rarely desync, so they need less demag protection; startup/rampup only needs attention when a motor won't break away cleanly.

Prop size (example)Typical packDemag compensationStartup / RampupLow RPM Power Protect
35 mm (Air65)1SDefault — won't need HighDefault; raise a little if motors stall on armOn
45 mm (Meteor65)1SDefault — won't need HighDefault; raise a little if motors stall on armOn
1.6"1S–2SDefaultDefaultOn
2"2S–3SDefaultDefaultOn
2.2"3S–4SDefaultDefaultOn
2.5"4SDefaultDefaultOn
3"4S–6SDefault; High if desyncDefaultOn
5"4S–6SDefault; High on 6S or desyncDefaultOn (or Adaptive)

Whoop and micro ESCs often run BLHeli_S, which exposes fewer knobs (demag Off/Low/High and a startup-power slider, no current limit). The guidance is the same — leave the defaults, and only raise demag if you get cutouts.

Change one thing at a time and confirm with a full-throttle punch session, then check motor temps on landing. Most desync fixes are: raise demag, lower rampup, and confirm timing isn't set too aggressively.


Related Snippets