Skip to content
Onboard Nodes Uavtrafficclasses

Onboard Nodes Uavtrafficclasses

Andi Lamprecht Andi Lamprecht ·· 2 min read· Accepted
ADR-0096 · Author: Sybil Melton · Date: 2025-02-07 · Products: uncrew
Originally 0095-OnBoard-Nodes_UAVTrafficClasses (v3) · Source on Confluence ↗

Kinds of UAV Network Traffic

What kinds of traffic does communicating with a UAV entail and how do they differ?

First HeaderConsumption PatternsSafety CriticalFootprint
Telemetry UAV->PilotStream of independent data frames. Pilot prefers timely delivery over guaranteed delivery => UDP.
Operations prefer guaranteed delivery and richer telemetry frames (more sensor readouts). It doesn’t really care all that much about timely - we could download upon return.
Semi<100kbps
Video Feed UAV->PilotStream of semi-independent data frames (Ansur codec). Prefer timely delivery over guaranteed delivery => UDP.No600kbps times no of feeds
Command & Control Stick CommandsStream of constant controller (stick) positions. No guaranteed delivery necessary => UDP. Usage @ DroneUp is heavily discouraged (out of scope for Apollo).Yes30kbps
Command & Control Guided Mode
Pilot->UAV
Interactive commands directed to the flight controller or camera system: go to point, land/takeoff, change speed control gimbal and camera
RPC (request-response) commands requiring guaranteed, ordered and timely delivery.

Careful with queuing commands for excessive amounts of time as commands could have become outdated and since pre-empted.

Despite needing guaranteed and orderly delivery, it’s message and not stream orientated. Low throughput and sporadic exchange needs no flow control. It’s not necessarily TCP.
Yeshundreds of bytes at a time, sporadic
Command & Control
Non-Interactive Commands
Pilot->UAV
send a new mission to UAV
RPC commands requiring guaranteed, ordered, but not so timely delivery. The drone may be ordered to stop and hover and then receive a new mission and then resume. => TCPNokB at a time, sporadic
Image download
UAV->Pilot
RPC like command: request an image and get it in response (drones typically offer a http GET endpoint). Require guaranteed delivery => TCP.No~5MB/image
Map/Geo Data
Pilot->UAV
Any map/geo data or change of thereof (e.g.: Airspace, Digital Surface Models) that continuously updates the pre-loaded models and feeds the on-board perception and pathfinding function. A stream of map updates needing guaranteed and ordered delivery => TCP.Semi50kbps, but hard to say
Logs/Diagnostics UAV->PilotStream of messages requiring guaranteed and ordered delivery => TCP.No?~200kbps?
Last updated on