Bringing an aerial robotics method from simulation to flight should not require rebuilding a mature autopilot or adding a companion computer. Cybflight is an open-source embedded Rust research autopilot whose typed, replaceable interfaces connect hardware access, perception, state estimation, trajectory planning, and control. This modular development and compile-time optimization workflow is demonstrated with replaceable Rust implementations of model predictive contour-tracking control (MPCTC) and incremental nonlinear dynamic inversion (INDI) running on one STM32H743 without a companion computer. Using this configuration, the vehicle reaches 12.38 m/s during indoor flight, while an outdoor flight using global navigation satellite system (GNSS) position updates reaches 31.4 m/s. These flights show that running demanding estimation and nonlinear control entirely on a flight-controller microcontroller need not come at the expense of a modular autopilot structure.
Figures & tables
Fig. 1: Outdoor Split-S maneuver. The corresponding flight reached 31.4 m/s with global navigation satellite system (GNSS) position updates and fully onboard MPCTC–INDI.
Fig. 2: Cybflight’s flight graph. Hardware interfaces (blue) map sensor observations and actuator commands to a hardware-independent research core (orange). Stacked entries denote sensor and actuator classes or algorithm families admitted by the interfaces; a vehicle build selects a compatible estimation, trajectory representation, sampling policy, and control path.
Fig. 3: Experimental quadrotor and STM32H743 flight controller (upper right), which executes all estimation and control.
Fig. 4: Composite of an indoor high-speed flight.
Fig. 5: Indoor time-optimal Split-S flight. (a) Planned path (gray dashed) and executed trajectory, colored by estimated speed. (b) Three-dimensional tracking error. The dashed line denotes the mean. The planned path is 73.7 m; the vehicle reaches 11.90 m/s with 0.278 m root-mean-square tracking error.
Fig. 6: Indoor operating envelope and onboard MPCTC solve time. (a) Average executed speed and root-mean-square tracking error across four path geometries and three aggressiveness levels. Connected markers denote the same geometry. (b) Distribution of MPCTC solve times; the dashed line denotes the mean.
Aerial robotics studies the design, perception, control, and coordination of flying robots for navigation, inspection, transport, and physical interaction.