ADR-0006: Altitude references and coordinate framesLink to the section ADR-0006: Altitude references and coordinate frames
On this page
Status: Accepted 2026-10-14 — sponsor confirmed ("keep all") Date: 2026-10-14 Profiles affected: all
ContextLink to the section Context
Altitude above ground, above mean sea level, above the WGS84 ellipsoid and above take-off point are different numbers that differ by tens of meters. Vendor APIs mix them. Gimbal angles may be reported relative to the aircraft body or to the earth. A VMS that plots a drone or computes a camera footprint with the wrong reference produces visibly wrong results.
DecisionLink to the section Decision
- Horizontal position is WGS84 latitude/longitude in decimal degrees.
- Altitude fields are named by reference and never a bare
altitude:altitude_msl_m— height above mean sea level (geoid; the device SHOULD declare the geoid model, default EGM96).altitude_ellipsoid_m— height above the WGS84 ellipsoid.altitude_agl_m— height above ground directly below (from rangefinder, terrain model or barometric estimate; the source SHOULD be declared).altitude_rel_m— height relative to the take-off/home point.- At least one of
altitude_msl_moraltitude_ellipsoid_mMUST be present when position is reported;altitude_agl_mSHOULD be present.
- Aircraft attitude is reported as
roll_deg,pitch_deg,yaw_degin a North-East-Down (NED) body convention: yaw 0 = true north, positive clockwise viewed from above; pitch positive nose-up; roll positive right-wing-down. heading_degis true heading in [0, 360). Course over ground, when distinct, iscourse_deg.- Gimbal orientation carries an explicit
frame:BODY(relative to the aircraft) orEARTH(absolute, same NED convention as the aircraft). Devices SHOULD reportEARTHwhen they can. - Velocity is
velocity_north_mps,velocity_east_mps,velocity_down_mpswithground_speed_mpsas the derived horizontal magnitude. - Angles in degrees, distances in meters, speeds in m/s, time in RFC 3339 UTC. No feet, knots or local time anywhere in the wire format; conversion is a client presentation concern.
ConsequencesLink to the section Consequences
schemas/common.schema.jsonencodes these definitions once and all other schemas reference them.- Mapping tables must state the conversion from each source (e.g. MAVLink
GLOBAL_POSITION_INT.altis MSL in millimeters;relative_altis relative to home).