Betaflight GPS Rescue Sanity Checks: RTH Heading, Magnetic Declination, and Altitude Hold Tuning — 2026 Guide

GPS Rescue engages, the quad climbs to your configured altitude, and then — instead of coming home — it banks 90 degrees left and flies toward a tree line. This is the number one failure mode I see in pilots who check the “GPS Rescue” box but skip the sanity checks. Three specific misconfigurations cause 95% of RTH failures, and none of them show up as an arming disable flag.

GPS Rescue Pre-Flight Sanity Checks

1. Verify Heading Arrow in OSD (The 30-Second Test)

Before every session, power up your quad outdoors with a GPS lock (10+ satellites). Walk 30 meters away, hold the quad at shoulder height, and rotate it 360 degrees. The home arrow in your OSD must point consistently toward your launch position.

What happens if it doesn’t: The arrow flips 180 degrees when you cross certain orientations, or drifts randomly. This means the magnetometer data is corrupted — usually by power wire proximity, carbon frame interference, or an uncalibrated compass. GPS Rescue will fly AWAY from home because the flight controller thinks “forward” is a different direction.

The fix: If your GPS module has a compass (BN-880, M8N with HMC5883), calibrate it through Betaflight’s Sensors tab. Rotate the quad on all three axes until the sphere fills green. Then check the mag alignment: the heading displayed in Betaflight must match the physical direction the quad is pointing. If the heading is 90 degrees off, your board alignment is wrong — adjust align_mag in CLI.

If you’re using a compass-less GPS (BN-220, most M10 modules), Betaflight falls back to GPS course-over-ground for heading — but this only works when the quad MOVES. In a static hover before RTH engages, there’s no COG data, and the FC guesses. This is why compass-less setups often veer briefly before correcting.

My preference: On a 5-inch freestyle build where GPS Rescue is insurance, not a primary feature, a compass-less M10 GPS is fine as long as you understand the initial heading uncertainty. On a 7-inch long-range rig where RTH is critical, spend the extra $8 for a compass-equipped module.

2. Set Magnetic Declination Manually — Never Rely on Auto

Magnetic declination is the angular difference between true north and magnetic north at your flying location. In California, it’s roughly +12 degrees east. In New York, it’s roughly -13 degrees west. In parts of New Zealand, it exceeds +20 degrees east.

Betaflight’s auto-declination uses a lookup table based on GPS coordinates. The problem: the lookup can be outdated or return zero during initialization, and the quad will use 0.0 degrees declination (no correction). A 12-degree error means your quad flies 12 degrees off course — that’s 210 meters off-target per kilometer of distance traveled.

Set it manually: Enter set gps_rescue_use_mag = ON in CLI, then set mag_declination = X where X is your local declination in decimal degrees. Use https://www.magnetic-declination.com to find your value. Positive = east, negative = west. Set this ONCE and it stays correct for your flying region until you travel significantly.

Verification: After setting declination, re-run the 30-second OSD heading test. The home arrow should point within 5 degrees of true home direction at all orientations.

3. Altitude Hold Climb Rate and Ground Speed — Tune These

Betaflight GPS Rescue has two altitude-related settings that almost everyone leaves at default, and almost everyone should change:

  • gps_rescue_initial_climb: defaults to 50 (meters). This is the altitude the quad climbs to before heading home, relative to the altitude where GPS Rescue triggered. At minimum, set this to 10 meters above your tallest nearby obstacle. For suburban flying, 60-80m is safer.
  • gps_rescue_ascend_rate: defaults to 500 (cm/s = 5 m/s). This is fine for a 5-inch but a loaded 7-inch on Li-Ion might need 700+ to maintain climb authority against wind.

What happens when these are too low: The quad climbs into a tree during the initial ascent, or a headwind prevents the quad from reaching rescue altitude before the gps_rescue_ground_speed threshold kicks in. I lost a 7-inch to a gradual descent into power lines because the default climb rate couldn’t overcome a 25 km/h headwind.

Tuning procedure:
1. Fly to 200m out, 30m altitude
2. Trigger GPS Rescue manually (assign to a switch)
3. Watch the altitude readout as it climbs. If it takes more than 10 seconds to reach rescue altitude, increase gps_rescue_ascend_rate by 100 cm/s
4. Watch the ground speed during the return leg. If the quad slows below gps_rescue_ground_speed_min and starts descending, increase gps_rescue_throttle_hover by 2-3%

Betaflight GPS Rescue: Critical Parameter Reference

Parameter Default Recommended Too Low Effect Too High Effect
gps_rescue_initial_climb 50m 60-100m Hits obstacles on ascent Wastes battery climbing
gps_rescue_ascend_rate 500 cm/s 500-800 cm/s Can’t fight headwind Overshoots altitude
gps_rescue_ground_speed 750 cm/s 700-1000 cm/s RTH too slow, times out Wastes battery at high speed
gps_rescue_throttle_hover 1350 1300-1450 Loses altitude in RTH Climbs during return, wastes energy
gps_rescue_min_sats 8 8-10 Engages with poor lock Won’t engage when needed
gps_rescue_allow_arming_without_fix OFF OFF Arms without position data
gps_rescue_sanity_checks RESCUE_SANITY_ON RESCUE_SANITY_ON Flies wrong direction
mag_declination 0 Your local value 10+ degree heading error

Common Mistakes & How to Avoid Them

Mistake 1: Testing GPS Rescue over water or dense forest. I’ve watched three pilots lose quads this year because their first GPS Rescue test was over a lake. The logic is “if it fails, the water is soft” — but getting a quad back from a lake has a 0% success rate. Consequence: no recovery possible if RTH misbehaves. Fix: First test in an open field with 100+ meters of clear space in every direction. Fly out 50m at 15m altitude, trigger rescue, and be ready to switch back to angle mode if it veers wrong.

Mistake 2: Leaving gps_rescue_sanity_checks = RESCUE_SANITY_OFF because “it’s annoying.” Sanity checks verify that GPS coordinates are changing in the expected direction and magnitude. Turning them off means Betaflight will follow garbage GPS data — including GPS glitches that report the quad at 0,0 coordinates (the Atlantic Ocean off Africa). Consequence: the quad pitches to 45 degrees and flies full throttle in a random direction. Fix: Leave sanity checks ON. If they’re triggering falsely, your GPS module is getting interference — relocate it, not the setting.

Mistake 3: Not accounting for wind drift during the climb phase. GPS Rescue climbs vertically before heading home. In a 30 km/h crosswind, a 50m climb can drift the quad 20-30 meters laterally — directly into a tree line if you’re at the edge of a field. Consequence: the quad clips branches during the initial climb and disarms. Fix: Add 20 meters to your climb altitude for every 10 km/h of wind. In gusty conditions, climb higher than you think you need.

Mistake 4: Assuming “GPS Rescue” and “Failsafe” are the same thing. GPS Rescue is a flight mode you trigger intentionally or configure for failsafe. Failsafe is the umbrella term for what happens when the receiver loses signal (Stage 1: drop, Stage 2: RTH). Many pilots configure GPS Rescue but never set Stage 2 failsafe to actually trigger it. Consequence: loss of signal drops the quad instead of returning it. Fix: Set Stage 2 failsafe to GPS Rescue in the Betaflight Failsafe tab. Test it by turning off your radio at 30m altitude in an open field.

⚠️ 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. Some jurisdictions require failsafe and return-to-home functionality to be tested and verified before flight. Regulations vary significantly between the FAA (US), EASA (EU), CAA (UK), CAAC (China), and other authorities.

GPS Rescue is the last line of defense — and as we detailed in our failsafe setup guide, getting Stage 1 and Stage 2 configured correctly is what determines whether you walk away with a quad or a memory. If you’re running the latest ExpressLRS firmware, the link reliability improvements mean fewer rescue triggers — but you still need the safety net for when you push range limits in a long-range build.

For reliable GPS reception in any orientation, a high-quality module is essential. The uavmodel BN-880Q GPS+Compass module with a 25x25mm ceramic patch antenna maintains lock through aggressive freestyle maneuvers where smaller patches drop satellites mid-flip.


Leave a Comment

Scroll to Top