Betaflight I-Term Relax and Anti-Gravity: Throttle Punch Stability and Propwash Handling — 2026 Guide

Your quad snaps into a tight 180, then wobbles for half a second before settling. That’s I-term windup — the accumulated integral error from a fast maneuver bleeding out over the next 300 milliseconds. You can chase it with P and D gains all day, but the fix is in two settings most pilots leave at default: I-term relax and anti-gravity. I’ve tuned dozens of quads where these two parameters solved what PID tuning couldn’t.

I-Term Relax and Anti-Gravity Configuration

The I-term in a PID controller accumulates error over time to correct steady-state offsets — it’s what keeps your quad tracking straight in wind instead of drifting. The problem: during aggressive maneuvers, the I-term accumulates massive error at rates the quad can’t physically correct. When the maneuver ends, that accumulated I-term discharges as a correction in the opposite direction — the bounce-back you feel as a wobble after a hard stop.

Step 1: Understand I-Term Relax Cutoff

I-term relax reduces how aggressively the I-term accumulates during fast stick movements. The key parameter is iterm_relax_cutoff — the gyro frequency below which I-term accumulation is allowed to proceed at 100%. Above this cutoff, I-term accumulation is progressively suppressed.

Default is 15Hz (Betaflight 4.3+). At 15Hz, gentle corrections (wind, drift) still get full I-term authority. Fast stick inputs generating gyro rates above 15Hz get progressively less I-term accumulation.

For 5-inch freestyle builds, 15-20Hz works. Drop to 10-12Hz for heavy cinewhoops — the higher inertia means slower maneuvers, and you need I-term to fight through propwash recoveries. Raise to 25-30Hz for ultralight toothpicks that change direction instantly — they don’t need as much I-term accumulation window.

CLI setting: set iterm_relax_cutoff = 15

Step 2: Set I-Term Relax Type

iterm_relax_type determines how the relax cutoff is applied:
GYRO (default): Suppresses I-term based on gyro rate. The standard choice — it reacts to what the quad is actually doing, not what the sticks are commanding. This handles the case where wind gusts cause sudden gyro movement even at constant throttle.
SETPOINT: Suppresses I-term based on stick movement rate. More aggressive suppression during fast stick inputs but less protection against external disturbances. Use if you’re getting I-term bounce specifically on snap rolls and flips.
RP (Roll/Pitch), RPY (Roll/Pitch/Yaw): Apply relax to specific axes. RP is usually sufficient — yaw I-term is less prone to windup issues.

Recommendation: Start with GYRO. If bounce-back persists on hard stops, try SETPOINT. Don’t bounce between them without testing — each type changes the entire PID feel.

Step 3: Configure Anti-Gravity Gain

Anti-gravity is a separate mechanism that boosts I-term temporarily during rapid throttle changes to fight the quad’s tendency to pitch or roll with sudden acceleration. Without anti-gravity, a punch-out causes a brief pitch-up as the rear motors spool up slightly faster than the front.

anti_gravity_gain multiplies the I-term by a factor proportional to how fast the throttle is changing. At a fixed hover, gain=1.0 (no boost). During a punch-out where throttle jumps from 20% to 80%, the I-term gets multiplied by up to the anti-gravity gain value.

Default is 3.5-4.0 (Betaflight 4.3+). For a standard 5-inch, 3.5 is solid. Bump to 5.0-6.0 for high-power builds (6S, 2306 1700kV+ motors) where the torque reaction on throttle punches is violent. Drop to 2.5-3.0 for low-authority builds (3-inch, 4S) where anti-gravity overshoot creates its own bounce.

CLI setting: set anti_gravity_gain = 35 (displayed as 3.5 in GUI)

Step 4: Field-Test and Iterate

Test procedure:
1. Hover at eye level, punch to 80% throttle for 1 second, cut to zero. Watch for pitch-up on punch and bounce on stop.
2. Snap roll 360° at medium speed. Watch for wobble after rotation stops.
3. Power loop (if you can). The bottom of the loop — highest G-load — is where I-term windup is most visible.

If you see bounce-back after hard stops, lower iterm_relax_cutoff by 2-3Hz. If the quad drifts in wind or feels loose in hover, raise it. If you get pitch-up on hard throttle, increase anti_gravity_gain by 0.5. If anti-gravity overshoot causes a secondary oscillation after punch-outs, decrease it.

I-Term Settings Comparison Table

Parameter Default (4.3) 5″ Freestyle 3″ Toothpick Cinewhoop Effect of Too High Effect of Too Low
iterm_relax_cutoff 15 15-18 25-30 10-12 I-term suppressed in wind → drift Bounce-back after maneuvers
iterm_relax_type GYRO GYRO SETPOINT GYRO N/A (type choice) N/A
anti_gravity_gain 3.5 3.5-4.5 2.5-3.0 3.0-4.0 Overshoot oscillation on punch Pitch-up during throttle blip
iterm_windup (max) 400 300-400 200-300 400-500 Accumulated I overload on stop Not enough correction authority
Symptom Likely Cause Parameter to Adjust Direction
Bounce-back after flip/roll I-term relax cutoff too high iterm_relax_cutoff Decrease by 2-3
Pitch-up on punch-out Anti-gravity gain too low anti_gravity_gain Increase by 0.5-1.0
Wobble after fast yaw spins I-term relax not on yaw axis iterm_relax_type Change to RPY
Drift in steady wind Relax cutoff too low iterm_relax_cutoff Increase by 2-3
Propwash oscillation (3-5 cycles) I-term overactive + relax insufficient iterm_relax_cutoff + P Decrease cutoff, increase P slightly

Common Mistakes & How to Avoid Them

Mistake 1: Cranking Anti-Gravity to Max. Pilots set anti-gravity to 10.0 thinking “more is better” for punch-out stability. Consequence: The I-term gets multiplied by 10x during any throttle change, creating a massive correction that overshoots and oscillates as the quad accelerates. The quad feels like it’s on a spring — bouncy under any throttle modulation. Fix: 3.5-5.0 covers 95% of builds. Only go above 5.0 for extreme power-to-weight builds.

Mistake 2: Using I-Term Relax to Fix Bad PIDs. If your quad oscillates during forward flight, that’s a P-gain problem, not an I-term problem. Lowering iterm_relax_cutoff masks the oscillation without fixing it. Consequence: You’ve suppressed I-term across the board, so your quad now drifts in wind and loses altitude in turns. Fix: Tune P and D first on default I-term settings. Only adjust I-term relax when bounce-back is the specific symptom.

Mistake 3: Forgetting I-Term Relax After Major Rebuilds. You retune P and D after switching from a GoPro to a naked camera, but I-term relax stays at your old heavy-build value. The now-lighter quad has faster dynamics — the old relax cutoff is too aggressive, suppressing I-term during normal flight. Consequence: The quad feels “drifty” and won’t hold attitude in wind, which you misinterpret as a P-gain problem. Fix: Re-baseline I-term settings after any significant weight or power change.

Mistake 4: Adjusting I-Term Relax Without Blackbox. You can’t see I-term windup from the goggles. You’re tuning blind. Consequence: You adjust the wrong parameter, make the quad worse, and blame the tune. Fix: Record a blackbox log of the specific maneuver that causes bounce-back. Open it, look at the PID I trace — if I-term spikes during and continues after the maneuver, it’s a relax issue. If I-term tracks normally but the quad still oscillates, it’s P/D.

⚠️ 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.

I-term relax tuning works best when your base PID tune is solid. Our Betaflight PID tuning fundamentals guide covers P, I, and D from scratch. For blackbox analysis techniques that let you actually see what the I-term is doing, check our blackbox log analysis guide.

Getting your I-term dialed in makes more difference to flight feel than brand-name motors. But if you’re in the market for a flight controller that handles high-rate PID loops cleanly, the SpeedyBee F7 V3 has the processing headroom for 8kHz with full filtering — I-term relax and anti-gravity calculate every loop cycle with zero CPU-starvation artifacts. Available at uavmodel.com.

Leave a Comment

Scroll to Top