Skip to content

HUD overlay

The HUD overlay is the heads-up display drawn over the drone video. It renders a pilot-style instrument cluster: attitude indicator, speed + altitude tapes, heading compass, battery, GPS, wind, obstacle radar, gimbal angle. All of it is driven by the shared HudData model, which normalises telemetry from any source drone (handheld TACLINK peer, DJI Cloud dock aircraft) into a single shape.

The complete readout

ElementSourceField(s) in HudData
Attitude (ADI)FlightStatusattitude.pitch, attitude.roll, headingDeg
Speed tapeFlightStatusspeedMps, horizontalSpeed
Altitude tapeFlightStatusaltitudeM
Heading strip (HSI / compass)FlightStatusheadingDeg
Mode badgeFlightStatusflightModeText (e.g. GPS / MANUAL / RTH / ATTI)
Battery percentageAircraftStatusbatteryPct, lowBatteryWarning, seriouslyLowBatteryWarning
Battery voltage / currentAircraftStatusaggVoltageMv, aggCurrentMa
GPS satellitesAircraftStatussatelliteCount
Signal qualityAircraftStatusocuSignalQuality, rcUplinkSignalLevel, videoDownlinkSignalLevel
WindAircraftStatuswindState.speed, .direction, .warningLevel
Obstacle radar (SVG)AircraftStatusperceptionObstacleData.horizontalObstacleDistance[], .upwardObstacleDistance, .downwardObstacleDistance
Gimbal poseAircraftStatusgimbalState.pitch, .yaw, .roll
RC batteryAircraftStatusremoteController.battery.batteryPercent

Every field is reactive — the HUD subscribes to telemetry and re-renders on every new frame (~150 ms cadence from the drone).

Attitude indicator

A classic pitch-and-roll ball with:

  • Pitch grid lines every 10°.
  • Roll markers at standard angles (-30 / -15 / 0 / +15 / +30 / +45 / +60).
  • Horizon split (sky / ground) coloured by theme.

Extreme angles (beyond ±45° pitch or ±60° roll) flash amber as a warning — if your drone is at those attitudes unintentionally, you’re in trouble.

Speed + altitude tapes

Vertical sliding tapes left (speed) and right (altitude) of the attitude ball:

  • Speed tape shows horizontal ground speed in m/s. Major ticks every 5 m/s; minor ticks every 1 m/s.
  • Altitude tape shows altitude above takeoff in metres. Major ticks every 10 m; minor ticks every 1 m.
  • Centre pointer always points to the current value.

Heading strip

A horizontal strip across the top with cardinal letters (N, E, S, W) plus degree ticks every 10°. A centred index triangle shows the current heading.

Mode badge

A small text badge showing the current flight-mode string — common values:

  • GPS / POSITION — position hold with GPS.
  • MANUAL / ATTI — attitude-only (no position hold).
  • RTH / RETURNING — returning to home.
  • LANDING — descending to land.
  • TAKEOFF — climbing out.
  • WAYPOINT — following a pre-planned wayline.

DJI dock aircraft publish a much richer set of mode codes — the HUD normalises them down to the above list for display. The original modeCode is still preserved in the telemetry stream for flight-log analysis.

Battery block

  • Large percentage number, colour-coded:
    • ≥ 50 % → green
    • 25 - 49 % → yellow
    • 15 - 24 % → orange
    • < 15 % → red, pulsing.
  • Voltage (V) and current (A) below.
  • lowBatteryWarning and seriouslyLowBatteryWarning flags from the aircraft drive additional pulsing or flashing.

GPS + signal

  • GPS satellites — count with a fix-type indicator (3D / RTK fixed / RTK float).
  • Signal quality — composite of OCU signal, RC uplink, video downlink. Rendered as signal bars (0-5). Any single path below “good” quality flashes amber.

Wind

  • Wind speed (m/s) + direction arrow.
  • warningLevel (low / moderate / high) colours the wind indicator amber or red — useful for knowing when to scrub a flight.

Obstacle radar (SVG)

A small radar-style ring around the attitude indicator. Sectors fill when proximity sensors detect objects:

DistanceColour
< 1 mRed
< 2 mOrange
< 5 mYellow
≥ 5 mGreen or absent

Eight horizontal sectors plus upward + downward indicators give you full spherical awareness. Only drones that publish perceptionObstacleData populate this — DJI Dock aircraft publish it; handhelds often don’t.

Gimbal pose

Small gimbal-angle readout in the corner. Shows pitch / yaw / roll of the gimbal relative to the drone body, plus a mini-indicator arrow.

RC battery

A small battery indicator for the remote controller (if connected). Shown separately from the aircraft battery — losing RC battery can force an RTH before the aircraft itself is low.

Configuration

The HUD itself has no in-place settings panel. Toggles for individual readouts + units + thresholds live in the drone settings drawer → Settings tab.

When the HUD dims

The HUD auto-dims when:

  • A modal dialog or overlay opens on top of the video.
  • You drag a PIP window over a readout.
  • The tile is minimised below a certain height — some elements collapse to save space.

Open any dialog to see the HUD go semi-transparent so you can still read underlying values.

Known limitations

  • No per-user element toggles — all readouts render; you can’t hide the obstacle radar if your drone doesn’t have one (it just stays empty).
  • No theming — HUD colours are baked into the component; no per-user accent override.