Abstract
Micro aerial vehicles weighing under 250 grams have become the reference platform for autonomy research precisely because of the constraints they impose: a 15-watt power budget, a processor no heavier than a few grams, and vibration levels that saturate consumer IMUs during aggressive maneuvers. Visual-inertial odometry (VIO) - fusing camera measurements with inertial data from a gyroscope and accelerometer - has emerged as the dominant approach to state estimation on these platforms because it requires no external infrastructure and needs no heavyweight computation when implemented carefully. The past two years have produced several algorithmic and hardware advances that push the performance envelope on sub-250-gram platforms.
Tight vs. Loose Fusion Architectures
VIO implementations differ primarily in how visual and inertial data are combined. Loosely coupled systems run independent visual pose estimation and IMU integration, then fuse their outputs in a Kalman filter. This is robust - a failure in the camera pipeline does not immediately destabilize the inertial integration - but it discards correlation between the two streams that could improve accuracy.
Tightly coupled systems - exemplified by MSCKF (Multi-State Constraint Kalman Filter), first described by Mourikis and Roumeliotis at the University of Minnesota, and its descendant variants - incorporate raw feature tracks directly into the filter update. This eliminates the intermediate pose estimate and lets the filter optimally weight each feature observation against the IMU prediction. On aggressive trajectories where visual features blur between frames, the tight coupling allows the IMU to bridge short periods of visual degradation without accumulating large positional error.
The OpenVINS framework, maintained by the University of Delaware, provides a well-documented open implementation of tightly coupled MSCKF that runs comfortably on ARM Cortex-A class processors at camera rates of 30 Hz with a single VGA-resolution camera.
Hardware Choices at Sub-250-Gram Scale
The Crazyflie 2.1 from Bitcraze and the Ryze Tello have been widely used research testbeds, but their stock hardware lacks the onboard compute for full VIO. The more capable AI deck from Bitcraze pairs a GAP8 multicore RISC-V processor with a grayscale camera, enabling lightweight VIO at reduced resolution. At slightly higher mass, the Holybro Kakute H7-based platforms paired with a Raspberry Pi Zero 2W run OpenVINS in real time with a fisheye monocular camera.
Camera-IMU temporal synchronization is the dominant hardware-level challenge. A one-millisecond timestamp error between the camera frame and the IMU integration introduces centimeter-level position error during fast maneuvers. Hardware trigger synchronization through a dedicated GPIO line between the IMU and camera, rather than software timestamping, reduces this to below 100 microseconds and is now standard practice in research builds.
Failure Modes and Mitigation
Pure VIO drifts over time because it has no absolute reference - heading error in particular accumulates without a magnetometer or GPS correction. Feature-poor environments (blank walls, featureless floors) cause tracking loss that the IMU alone cannot sustain indefinitely. Depth-camera variants using stereo rigs or active depth sensors recover scale faster and reduce drift, at the cost of additional weight and power draw.
Active research directions include learned front-ends that replace FAST or Harris corner detectors with learned keypoint predictors trained to be robust to motion blur and extreme illumination changes, and adaptive filter tuning that modulates process noise in real time based on detected motion aggressiveness.