Your OSD altitude goes negative while you’re 50 meters up, the variometer screams “descending” during a hover, and GPS Rescue nearly flies you into the ground because it trusts a barometer that thinks you’re at sea level. The barometer is the most neglected sensor on an FPV quad — and it’s the one GPS Rescue depends on.
Step-by-Step Barometer Setup and Calibration
Step 1: Determine If You Even Have a Barometer
Not every flight controller includes a barometer. The BMP280 and DPS310 are the two most common barometer chips found on FCs. Check your flight controller specs or look at the board itself — the barometer is a small rectangular chip with a single hole in the top (the pressure sensing port). It’s usually located near the edge of the board and labeled “BMP280” or “DPS310.”
In Betaflight, go to the Sensors tab. If you see a “Barometer” section with an altitude reading, you have one. If the section is missing or shows 0, your FC doesn’t have a barometer — GPS Rescue will use GPS altitude only, which is less accurate but functional.
Step 2: Protect the Barometer from Light and Wind
This is the single most impactful thing you can do. Barometer chips are photosensitive — direct light hitting the sensor hole causes pressure readings to drift by 20-50 Pa (equivalent to 2-5 meters of altitude error). Propeller wash and frame airflow hitting the sensor create rapid pressure fluctuations that make altitude hold unusable.
The fix: cover the barometer with a small piece of open-cell foam (the black foam that ships with most FCs, or a piece cut from an electronics anti-static sponge). The foam blocks light and wind while allowing the pressure equalization the sensor needs. Tape it down with Kapton tape — don’t use electrical tape, as the adhesive can flow and clog the sensor hole over time.
For the DPS310 specifically: this chip is notoriously sensitive to both light and mechanical stress. A foam cover is mandatory, not optional. I’ve seen DPS310 altitude readings swing ±10 meters in direct sunlight with no foam cover — it’s unusable without one.
Step 3: Don’t Calibrate — Betaflight Auto-Zeros at Arm
In Betaflight 4.3+, the barometer altitude is automatically zeroed when you arm. The FC records the barometric pressure at arm, sets that as the reference (altitude = 0), and reports all subsequent altitudes relative to that reference.
This means you should NOT manually “calibrate” the barometer in the traditional sense. There is no calibration button or offset value to enter. What you need to manage is sensor drift during flight, which is where the GPS blending comes in.
Step 4: Configure GPS Altitude Blending
The barometer drifts. Temperature changes in the frame (ESCs heat up, ambient air warms) cause the pressure reading to shift by 5-15 meters over a 5-minute flight. GPS altitude doesn’t drift but is noisy (±3-5 meters instantaneously).
Betaflight blends the two sources. In the CLI:
set baro_hardware = AUTO
set position_alt_source = DEFAULT
The DEFAULT mode uses barometer altitude as the primary source with GPS as a correction. This gives you barometer precision (0.1m resolution) with GPS drift correction.
Alternative: set position_alt_source = GPS_ONLY — use this if your barometer is defective or absent. GPS altitude alone is accurate enough for GPS Rescue (typically within ±5 meters of true altitude), but the variometer tone and altitude hold in angle mode will be choppy.
Step 5: Test Altitude Hold Behavior
Arm the quad and hover at eye level. In the OSD, note the altitude reading. It should read approximately 0.0m at hover height (remember, auto-zero happens at arm, not at liftoff). Climb to approximately 10 meters and hover — the altitude reading should stabilize within ±1 meter after 5-10 seconds.
Known issue: The barometer takes 5-10 seconds to thermally stabilize after arming because the ESCs start producing heat. The first 30 seconds of altitude data will show a slight upward drift (5-15 meters) as the frame warms up. GPS blending corrects this after it accumulates enough GPS data, typically 30-60 seconds into the flight. Don’t use barometer-dependent features (altitude hold, terrain follow) in the first 30 seconds of flight.
Barometer Sensor Comparison
| Sensor | Accuracy | Light Sensitivity | Temperature Drift | Foam Required | Found On |
|---|---|---|---|---|---|
| BMP280 | ±1m (0.12 hPa) | Medium | ±2m over 10°C change | Recommended | Older F4/F7 FCs |
| BMP388 | ±0.5m (0.06 hPa) | Low | ±1m over 10°C change | Recommended | Modern F7/H7 FCs |
| DPS310 | ±0.5m (0.06 hPa) | Very High | ±5m over 10°C change | Mandatory | SpeedyBee, some H7 FCs |
| QMP6988 | ±1m (0.12 hPa) | Medium | ±2m over 10°C change | Recommended | Budget AIO boards |
| No barometer (GPS only) | ±5m | N/A | None (GPS-based) | N/A | Minimalist FCs |
Common Mistakes & How to Avoid Them
Mistake 1: Leaving the barometer exposed to sunlight. The BMP280 and DPS310 are photodiodes at heart — they detect changes in light as if they were changes in pressure. A shadow passing over the sensor (from the frame, a tree, or changing sun angle) causes a 2-5 meter altitude reading jump. Black foam cover, always.
Mistake 2: Expecting accurate altitude in the first 30 seconds. Thermal drift is real. The barometer chip sits millimeters from 4 ESCs that go from ambient temperature to 40-60°C in the first minute of flight. The altitude reading will drift upward during warmup. GPS blending corrects this, but it needs 30-60 seconds of GPS data to establish a baseline.
Mistake 3: Using altitude hold in angle mode without testing. Betaflight’s altitude hold (available when barometer is present and ANGLE mode is active) uses a basic PID controller on the barometer altitude. It’s not INAV-level position hold — expect ±2-3 meters of altitude wander, not centimeter-accurate hovering. Test at altitude before relying on it near the ground.
Mistake 4: Mounting the FC with the barometer hole facing the frame. Some frames have the FC mounted barometer-hole-down against a carbon plate. This seals the sensor port and prevents pressure equalization — altitude readings become stuck or wildly inaccurate. Always mount the FC with the barometer facing open air (upward) or with at least 2mm of clearance if facing downward.
Mistake 5: Confusing variometer behavior with sensor failure. The variometer tone (rising/falling pitch based on climb/descent rate) can sound erratic during fast forward flight because the quad’s forward speed creates dynamic pressure changes from airflow. This is normal aerodynamic noise, not a sensor fault. The variometer is most useful during slow hovering and gentle climbs where dynamic pressure effects are minimal.
Internal Resources
Barometer altitude accuracy directly affects GPS Rescue performance — if your altitude reading is wrong, GPS Rescue might attempt to return at ground level. Our Betaflight GPS Rescue setup guide covers how to configure minimum altitudes and sanity checks to prevent barometer failures from causing a crash. For the ultimate long-range positioning stack, see our FPV GPS module selection guide which covers M10 vs M8 chipsets and mounting best practices.
Video Reference
Painless360 demonstrates barometer behavior, thermal drift, and GPS blending across Betaflight and INAV with real flight data:
A GPS Module That Handles Altitude Properly
Most cheap GPS modules ship with a firmware that updates altitude at 1Hz with no smoothing. The uavmodel M10 GPS module uses the u-blox M10 chipset with a 10Hz altitude update rate and an internal barometer that cross-checks GPS altitude for drift correction. It reduces the GPS altitude noise from ±5m to approximately ±2m out of the box. For pilots running GPS Rescue on builds without an onboard barometer, it’s the difference between a reliable return altitude and a 50/50 chance of returning at tree level.
⚠️ 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.
