ADOS SENSOR FUSIONIn Development

One fusion hub, every sensor, a stock flight controller

The drone agent runs as an open, plug-and-play multi-sensor fusion hub on the companion computer. Sensor drivers, a fusion layer, and a map to standard MAVLink messages feed a stock flight controller with no firmware fork.
In Development

Actively being built. The design is scoped and firm; it is not usable yet.

0
Firmware forks
1
Hub, many sensors
5
Sensor-role MAVLink messages
Moving
Reliability while in motion

How it works

Sensors in, one estimate out

Every sensor publishes through its own driver. A shared fusion layer combines them and speaks standard MAVLink to the flight controller.

Sensors to fusion to flight controller
ToF rangefinderOptical flowRTK GNSSSolid-state lidarmmWave radarFusion layerFlight controller
Sensor drivers publish to a shared fusion layer. The fusion layer maps sensor roles onto standard MAVLink messages, so a stock ArduPilot or PX4 flight controller consumes them without a firmware change.

Layers

Three layers on the companion computer

Each layer is open and replaceable. Sensors are drivers, fusion is a shared estimate, and the mapping keeps the flight controller stock.

Drivers
One plug-in driver per sensor, with hardware auto-detect on the companion computer.
Fusion
A sector occupancy ring and a state estimate, weighted by how each sensor behaves in motion.
Mapping
Each sensor role becomes a standard message a stock ArduPilot or PX4 already understands.

The organizing idea

Reliability while moving

Sensors that stay accurate in flight carry more weight. Sensors that get noisy with speed or texture are trusted less as the drone moves.

Motion-agnostic

Steady in flight, so they carry high weight in the estimate.

  • ToF rangefinder
  • RTK GNSS
  • Solid-state lidar
  • mmWave radar

Scene-sensitive

Reliable when slow and textured, so their weight drops with speed and yaw.

  • Optical flow
  • Stereo depth
  • Mechanical 2D lidar

Mapping

Sensor roles become standard messages

The fusion layer never forks firmware. It emits the MAVLink messages a stock flight controller already reads.

Sensor role to MAVLink message
Rangefinder
DISTANCE_SENSOR
Obstacle field
OBSTACLE_DISTANCE
3D obstacle field
OBSTACLE_DISTANCE_3D
Visual position
VISION_POSITION_ESTIMATE
Odometry
ODOMETRY

One ecosystem, any sensor

Sensor drivers, fusion, and MAVLink mapping ship as open-source. Follow the design as it comes together.

Read the docs
Get Early Access