Skip to main content

drone-hud

[UNTESTED] — v0.5 paper-correct

Builds clean on native_sim/native/64 and cross-compiles to the AEN target. Real-silicon bring-up + airframe integration land later.

A live attitude / GPS / battery HUD for a drone, rendered with LVGL on an ST7789 TFT.

Source: examples/drone-hud/.

Components

  • LSM6DSO IMU — 6-axis sensor read via <alp/chips/lsm6dso.h>.
  • u-blox NEO-M9N GNSS — UART NMEA via <alp/chips/ublox_neo_m9n.h>.
  • INA236 battery monitor — voltage / current via <alp/chips/ina236.h>.
  • ST7789 TFT — 240×320 SPI panel via <alp/chips/st7789.h>.
  • madgwick_ahrs library — fuses IMU samples into attitude.
  • LVGL — composes the artificial horizon + GPS readout + battery telemetry + flight-mode selector.

Thread model

Three threads at independent rates:

  • Render — 30 fps screen update
  • IMU + AHRS — 100 Hz attitude fusion
  • Slow telemetry — 5 Hz GPS + battery refresh

board.yaml

schema_version: 2

som:
sku: E1M-AEN701

carrier:
name: E1M-EVK

cores:
m55_hp:
os: zephyr
app: ./src
peripherals: [i2c, spi, uart]
libraries: [lvgl, madgwick_ahrs]

chips:
- lsm6dso
- ublox_neo_m9n
- ina236
- st7789

diagnostics:
log_level: info

See also

Questions about this page? Discuss in Community Forum