The UAV/UGV Platform, Written in Rust
An open-source platform for unmanned vehicles. Ground control, autopilot firmware, MAVLink library, and companion computer — built from scratch in Rust for performance, reliability, and simplicity.
The Stack
CrabStation
Cross-platform ground control station for ArduPilot, PX4, and CrabPilot. Real-time telemetry, mission planning, firmware flashing, MAVLink inspector, and offline maps.
CrabLink
Async MAVLink communication library built on Tokio. 75% MAVSDK coverage with multi-autopilot support for ArduPilot, PX4, and CrabPilot.
CrabPilot
Rust-based flight firmware for STM32H7. 24-state EKF, 13 flight modes, VTOL support, and ArduPilot-compatible parameters with memory safety guarantees.
CrabStation
Cross-platform ground control station for ArduPilot, PX4, and CrabPilot. Real-time telemetry, mission planning, firmware flashing, MAVLink inspector, and offline maps.
CrabLink
Async MAVLink communication library built on Tokio. 75% MAVSDK coverage with multi-autopilot support for ArduPilot, PX4, and CrabPilot.
CrabPilot
Rust-based flight firmware for STM32H7. 24-state EKF, 13 flight modes, VTOL support, and ArduPilot-compatible parameters with memory safety guarantees.
ArduPilot & PX4 Compatible
Works with existing autopilots. Same parameters, same protocols, same tools.
Full VTOL Support
Copter, plane, and VTOL with transition — firmware to GCS.
Gazebo SITL
Test flights without hardware. Full simulation with Gazebo integration.
Cross-Platform
Windows, macOS, and Linux. One codebase, native performance everywhere.
Offline-Ready
Download maps, plan missions, and review logs without internet.
Open Source
MIT licensed. Full source on GitHub. No vendor lock-in.
Why Rust for UAVs
C++ autopilots rely on discipline. Rust enforces correctness at compile time — no null pointers, no data races, no undefined behavior in your flight loop.
Memory Safety Without a Runtime
No garbage collector, no runtime overhead. Rust’s ownership model eliminates use-after-free, buffer overflows, and data races at compile time — the classes of bugs that cause in-flight failures.
C-Level Performance
Zero-cost abstractions and no heap allocation in the control loop. The autopilot runs at 400 Hz on bare-metal STM32H7 with the same throughput as hand-written C.
Fearless Concurrency
Sensor fusion, MAVLink routing, and telemetry run in parallel without data races. The type system guarantees thread safety that C++ developers enforce by convention.
no_std from Day One
The autopilot core compiles without the standard library. Every crate, from sensor drivers to the EKF, is no_std-compatible for embedded targets with no OS.
Built to Scale
Not a proof of concept. The Crab UAV ecosystem is a tested, modular codebase with real sensor drivers, flight-proven algorithms, and a full async MAVLink library.
2,000+
Tests
5
Platforms
24
EKF States
75%
MAVSDK Coverage
13
Flight Modes
3
Autopilots
Getting Started
Pick your entry point and get up and running in three steps.
Clone the repository
git clone https://github.com/rligocki/DroneControl.git
cd DroneControlInstall dependencies
cd crabstation
npm installRun in development mode
npm run tauri devStart Building
Crab UAV is in active development. Download the GCS, explore the code, or get in touch.