HOLYBRO X650 · JETSON ORIN NX · PIXHAWK 6X

Validated hardware stack, designed for agronomy missions.

Every component on AgroExplorer One is field-chosen for reliability and integration depth. The Holybro X650 airframe carries a Jetson Orin NX 16 GB companion computer running AEOS alongside OAK-D Pro vision, Unicore UM982 RTK GPS, dual TFMini Plus LiDARs, and a three-path communication system with a Tailscale WireGuard overlay.

KEY SPECS
AirframeHolybro X650 · 650 mm
Battery6S 16 Ah LiPo
Flight time25–35 min
All-up weight4.5 kg
Max payload2.5 kg
Motors4× MN4014 KV330 · 15"
Flight controllerPixhawk 6X · ArduCopter V4.7
ComputeJetson Orin NX 16 GB · 100 TOPS
RTK GPS accuracy1–2 cm
CameraOAK-D Pro · 72° HFOV · 4K RGB
Onboard storage501 GB NVMe
Comm linksWiFi · 4G · LoRa
4.5 kg
AUW
2.5 kg
Max payload
35 min
Flight time
2 cm
RTK GPS
100 TOPS
Edge AI
25 Hz
Nav loop
<100 ms
Path planning
3 Hz
AI detection
OAK-D Pro
Stereo depth · YOLO
2× LiDAR
Fwd + Down ranging
HereFlow
Optical flow · CAN
360°
Obstacle scan
3 Links
WiFi · 4G · LoRa
Voxel Nav
3D path · Experimental
Live
Disease · Weeds · Pests
0
Pilots needed

AgroExplorer One — All Angles

Custom 3D-designed airframe with guarded rotor pods, aerodynamic central body, and integrated sensor bay for OAK-D Pro, GPS mast, and compute enclosure.

AgroExplorer One in the field — carbon frame, guards, payload bay
AgroExplorer One
Holybro X650 carbon-fibre frame, folding arms, landing gear
X650 Frame
Pixhawk 6X Pro flight controller stacked on Holybro Jetson Baseboard
Pixhawk 6X · Jetson NX
T-MOTOR MN4014 KV330 — 4 per drone, max thrust 2.6 kg each
MN4014 KV330

Airframe & Flight Control

ArduCopter V4.7 on Pixhawk 6X runs the inner control loops; AEOS on the Jetson sends high-level MAVLink setpoints via MAVProxy.

AIRFRAME + FC
RoleComponentInterface / Notes
Airframe Holybro X650 quad 650 mm wheelbase · 6S 16 Ah LiPo
Flight Controller Pixhawk 6X (Holybro baseboard) ArduCopter V4.7 · UART /dev/ttyTHS0 @ 921600 baud
Propulsion 4× MN4014 KV330 motors 15" props · PWM via FC
Optical Flow HereFlow CAN bus · EKF input · GPS-denied position assist
KEY ARDUPILOT PARAMS
> config/ardupilot/x650.yaml (single source of truth) GPS1_TYPE = 15 # Unicore UM982 serial EK3_GPS_CHECK = 31 # strict GPS health gates MOT_THST_HOVER = 0.50 # hover thrust baseline COMPASS_MOT = enabled # motor interference cal > MAVProxy bridge: UDP 14551 / TCP 5760 > AEOS MAV_TYPE_GCS, source_system = 255 > Param diff on boot → push mismatches to FC > FC reboot triggered if serial/EKF params change

Companion Compute

The NVIDIA Jetson Orin NX 16 GB runs the entire AEOS stack: behavior-tree engine, OAK-D perception pipeline, MQTT uplink, link manager, and Athena AI assistant — all as systemd services on L4T.

JETSON ORIN NX 16 GB
SubsystemDetail
OSL4T R35.4.1 (JetPack 5.x) on NVMe SSD
AEOS EnginePython behavior-tree (py_trees) · ~189 blackboard keys
Navigator25 Hz · MAVLink setpoints · A-Star voxel path planning
PerceptionOAK-D child process (spawn) · 60 s watchdog + USB-VPU recovery
MQTT UplinkAdaptive QoS by link state · HMAC-signed telemetry frames
Link ManagerWiFi ↔ 4G failover · 5 s probe · 15 s hysteresis
LoRa BridgeHeltec CP210x auto-detected · heal-command receiver
depthaiv3.1.0 · forced USB 2.0 (Tegra xHCI workaround)
Jetson Orin NX live stats — CPU 62.1°C, GPU 58.5°C, 6.9% CPU load at 729 MHz, 9% RAM, 501 GB NVMe, TX 136 kbps
Jetson Orin NX live · CPU 62.1 °C · 6.9 % load · 9 % RAM · TX 136 kbps

Positioning & Sensing

Multi-layer positioning: RTK GPS at 1 cm accuracy (NTRIP-corrected via free government networks) fused with HereFlow optical flow and downward LiDAR for GPS-denied resilience.

RTK GPS

Unicore UM982

Dual-antenna RTK receiver on UART GPS1 at 230 400 baud. NTRIP client injects ReNEP (Portugal) RTCM corrections for 1 cm fixed-solution accuracy — no base station required. Free EU NTRIP networks (ERGNSS, RGP, 06-GPS) extend the same precision across member states. RTK status (none → float → fixed) telemetered live.

LIDAR

2× TFMini Plus

Forward: 0.15–12 m at 10 Hz on TELEM1 — obstacle ranging, cross-validation against OAK-D depth, discrepancy > 2 m flags sensor fault.
Downward: 0.1–12 m at 10 Hz on TELEM3 — terrain AGL, ground-plane voxel marking, altitude safety.

VISION + FLOW

OAK-D Pro + HereFlow

OAK-D Pro delivers RGB 4K + stereo depth (72° HFOV, 0.3–10 m) + YOLOv6-nano on the Movidius Myriad X. HereFlow on CAN feeds optical flow velocity to the Pixhawk EKF for GPS-denied hover stability.

Live Telemetry Visibility

The ground station streams a complete picture of drone state over MQTT: GPS fix quality, EKF health, sensor readings, vibration, CPU load, and comms drop rate — all in real time. Shown below from an active 4G session at 47.8 m AGL with 3D RTK fix on 13 satellites.

AgroExplorer One connected via 4G — LIVE 3D FIX, 13 sats, Alt 47.8m, 0.0 m/s, STABILIZE mode
4G Connected · 3D Fix · 13 Sats
Telemetry main tab — battery 22.95V 61%, altitude 46.5m, heading 77°, GPS 3D fix HDOP 2.4, HereFlow optical flow active
Telemetry · Main · 22.95 V · HDOP 2.4
Telemetry extended tab — EKF OK, CPU load 26.7%, comms drop 0.0%, optical flow OK, vibration nominal
Telemetry · Extended · EKF OK · CPU 26.7%

Communications Stack

Three independent radio paths plus a WireGuard VPN overlay so the ground station always sees the drone at a single fixed IP, regardless of which physical link is active.

LINK FAILOVER LOGIC
Primary · WiFi

Realtek RTL8822CE · M.2 PCIe · powersave forced off

Probe interval 5 s · 3 failures (15 s) before failover · 2 successes (10 s) to restore
Failover · 4G

D-Link DWM-222W · CDC-Ether on eth0 · 192.168.125.100

Marvell 1286:4e31 · auto data-path verified at boot · USB-hub reset escalation
Survival · LoRa

Heltec V3 SX1262 · CP210x USB serial · 115 200 baud

Position beacons · heal commands: restart_tailscaled, switch_route, reset_modem, reboot_jetson
Overlay · VPN

Tailscale 1.78.1 · Headscale controller on Hetzner VPS

Drone 100.64.0.9 · Ground 100.64.0.10 · single IP regardless of active path
MQTT TELEMETRY TOPICS
Telemetry WiFi/4G tab — Digi PT 4G connected, Band 3, DWM-222W, RSSI 43 dBm, RSRP -98 dBm, SINR 4.0 dB, IP 192.168.125.100
Live 4G link · Digi PT · Band 3 · RSSI 43 dBm · SINR 4.0 dB
TopicRateContent
aeos/<id>/telemetry5–10 HzPosition, attitude, battery, mode (HMAC-signed)
aeos/<id>/snapshotsadaptiveJPEG frame · camera_id · timestamp
aeos/<id>/depth_map~5 HzCompressed depth tile from OAK-D
aeos/<id>/detectionseventYOLO results with 3D world positions
aeos/<id>/mission_stateon changeExecutor state + waypoint progress
aeos/<id>/links1 HzComposite link score + per-interface status
aeos/<id>/lora_status1 HzLoRa-only state (retained)
aeos/<id>/presenceLWTonline: true/false on connect/disconnect

Drone Process Architecture

AEOS runs as a set of supervised systemd services on the Jetson. Each service has a defined role and lifecycle; the engine depends on MAVProxy being healthy before it starts.

SYSTEMD SERVICES · JETSON
ServiceTypePurpose
mavproxy.serviceLong-runningBridges /dev/ttyTHS0 to UDP 14551 / TCP 5760
aeos-engine.serviceLong-runningMain engine: behavior-tree + all subsystems
aeos-link-manager.serviceLong-runningProbes WiFi/4G, manages default route, heals Tailscale
aeos-cellular.serviceLong-runningPolls modem web UI, publishes cellular_status to MQTT
aeos-links.serviceLong-runningComposite link-score publisher (1 Hz)
aeos-dongle-reset.serviceOne-shotVerifies modem data path; escalates to parent-hub reset on failure
aeos-usb-hub-power.serviceOne-shotWrites 'on' to usb2/2-1 power/control (Tegra xHCI workaround)
tailscaledLong-runningWireGuard tunnel to Headscale controller

Edge computing: every decision happens onboard.

AEOS splits work into two concurrent loops running on the Jetson Orin NX. The fast loop never waits for AI — safety and navigation are always running at full speed.

TWO-LOOP ARCHITECTURE
Fast Loop — 20–30 Hz · Navigation & Safety

Stereo depth + rangefinders + GPS/IMU/optical flow → obstacle grid → path adjustment → MAVLink setpoints to Pixhawk. Pure geometry — no ML involved. If the slow loop lags, the drone still avoids obstacles.

Slow Loop — 2–5 Hz · Intelligence & Awareness

RGB frames → neural inference (TensorRT/Myriad X) → scene classification → mission commands (advisory). ML runs here. If it misses a frame, the mission continues — it never blocks the flight control loop.

Failsafe Watchdog — independent

Monitors battery, GPS health, geofence, and heartbeat continuously. Overrides all other loops. Triggers return-to-launch or emergency stop if any critical condition is met — regardless of what AEOS is doing.

DATA FLOW
DRONE (Jetson Orin NX · 100 TOPS) │ ├─ OAK-D Pro → stereo depth, RGB, Myriad X YOLO ├─ TFMini fwd/dwn → terrain + obstacle ranging ├─ UM982 RTK GPS + HereFlow → position fusion ├─ Pixhawk 6X → flight control (UART 921600) │ ├─ FAST LOOP (20–30 Hz) → nav + safety ├─ SLOW LOOP (2–5 Hz) → AI inference └─ MQTT publisher (HMAC-signed) │ │ WiFi / 4G / LoRa ▼ GROUND STATION (React 18 browser) │ ├─ Live map, telemetry, video, detections └─ Athena AI chat + voice panel │ ▼ ORCHESTRATOR (HPE DL380 · API + MQTT broker) │ ├─ Dell R640 → ODM orthomosaics, NDVI maps, │ 3D models, PPK, MinIO storage └─ AI Server → Athena reasoning, ML training, crop analysis

Ground infrastructure that turns flight data into intelligence.

Three dedicated servers handle coordination, heavy post-processing, and AI — so the drone stays lean and the analysis never compromises flight performance.

ORCHESTRATOR

HPE ProLiant DL380 Gen10

2× Xeon Gold 6138 · 64 GB RAM · API server, MQTT broker (mTLS port 8883), database, web portal, and Headscale WireGuard controller. Entry point for all external connections from the drone and operators.

PROCESSING & STORAGE

Dell PowerEdge R640

2× Xeon Gold 6138 · 128 GB RAM · 7.2 TB HDD RAID. Runs OpenDroneMap for orthomosaic generation, PPK post-processing, NDVI computation, 3D mesh reconstruction, and MinIO bulk data storage.

AI SERVER

GPU Server

32 GB VRAM · ROCm. Hosts Athena AI assistant (Qwen2.5-7B + Whisper + Piper TTS), crop analysis inference, object segmentation, and ML model training. Runs alongside flight operations without competing for drone resources.

Multispectral sensing at a fraction of the cost.

AEOS uses a phased sensor strategy — each phase adds a band and unlocks new agricultural indices, with the current phase already delivering RGB orthomosaics, 3D canopy structure, and real-time AI.

SENSING ROADMAP
PhaseSensor AdditionWhat It UnlocksStatus
Phase 1ELP 16MP RGB (down) + OAK-D ProRGB orthomosaic · visible disease · plant counting · 3D canopy structure · real-time AI detectionsActive
Phase 2ELP 16MP NIR (modified, 850nm longpass)NDVI · GNDVI · SAVI · early disease detection · irrigation mappingIn progress
Phase 3Reflectance calibration panelCalibrated NDVI comparable across flights, dates, and lighting conditions · variable-rate prescriptionsPlanned
Phase 4ELP 16MP Red Edge (720nm bandpass)NDRE index · precise chlorophyll estimation · early nutrient deficiency mappingPlanned
Phase 5Thermal camera (FLIR Lepton 3.5)Canopy temperature · accurate hydric stress · transpiration analysis · night operationsFuture
COST COMPARISON
SystemCostBandsNDVI3D StructureReal-time AI
AEOS Phase 1+2~€110R, G, B, NIRYesYes (OAK-D)Yes (Myriad X)
MAPIR Survey3W RGN~€400R, G, NIRYesNoNo
DJI Mavic 3 Multispectral~€4,500R, G, RE, NIRYesNoNo
MicaSense RedEdge-P~€8,000B, G, R, RE, NIRYes (radiometric)NoNo

Device & Service Inventory

The ground station's Test Harness panel gives a live view of every hardware device and system service on the drone. Toggle individual peripherals, inspect service health, control the Jetson NVP power model, and run automated test suites — without SSHing into the vehicle.

Test Harness — Services tab: Ground API connected, Drone Engine live, MQTT Broker up 3 days, Tailscale VPN active
Test Harness · Services — real-time health of every AEOS subsystem
Test Harness — Devices tab: OAK-D Pro, 16MP Camera, 4G Modem, WiFi, HereFlow, LiDAR 1 & 2, GPS 1 & 2, LED Strip all enabled; nvpmodel selector
Test Harness · Devices — full hardware manifest with per-device toggle & nvpmodel control