← Back
Home › Systems › Robotics

flight-controller

drone flight controller

PX4, Betaflight

SystemTechniques · 2Primitives · 30 flight-controller Sensor fusionrobotics · medium: Combining IMU, GNSS, camera, lidar and radar estimates with Kalman-type filters and time alignmentTransform treerobotics · medium: Time-indexed tree of coordinate frames with interpolated lookups between any two framesSPSC ring bufferdata-structures · low: Bounded wait-free queue for exactly one producer and one consumer thread, built from an array and two indices with acquire/release ordering.›Complementary filterrobotics · low: Blend high-passed gyro integration with low-passed accelerometer/magnetometer attitude (Mahony/Madgwick)Extended Kalman filterrobotics · low: Kalman filter for nonlinear motion and measurement models: linearize f and h with Jacobians at the current estimate each step. The default estimator in robot navigation.›Rigid-body transforms (SE(3) poses)robotics · low: Represent, compose, invert, integrate and interpolate 3D poses as unit quaternion plus translation, with exp/log maps for small motions and uncertainty.›Dma transfersembedded · low: DMA controllers: descriptors, circular buffers, cache coherence for zero-CPU data movementFixed-rate control loopembedded · low: Run a controller at an exact period using absolute deadlines and a fixed dt, so jitter never accumulates and the math stays valid.›Preemptive priority schedulingembedded · low: Always run the highest-priority ready task, switching the instant a higher one becomes ready; selection is O(1) with one FIFO per priority and a bitmap.›PWM generationembedded · low: A timer's counter, period and compare registers draw the pulse train; preload, dead time and DMA make duty changes glitch-free, shoot-through-free and cheap.›Spi i2c bus driversembedded · low: SPI/I2C/UART peripheral drivers with interrupts, DMA and bus error recoveryCRC32C checksumshardware-os · low: The Castagnoli CRC-32 with dedicated instructions on x86 (SSE4.2) and ARMv8. It is the standard fast integrity check for storage blocks, logs and network frames.›Interrupt handlinghardware-os · low: How a device signal reaches a CPU handler through an interrupt controller and vector table, and how top/bottom halves, polling switch-over and coalescing keep load bounded.›Fast Fourier transformnumerics · low: Computes the DFT in O(n log n) by recursively splitting into even and odd halves; the basis of fast convolution and spectral methods.›Control allocation mixingrobotics · low: Map desired thrust and torques to actuator commands via mixer matrices with saturation handlingPID controllerrobotics · low: Drive a measured value to a setpoint with three terms on the error: proportional, integral, derivative. The default feedback loop for motors, heaters, drones and gimbals.›Pure pursuit path trackingrobotics · low: Geometric path following by steering to a look-ahead point (pure pursuit, L1, Stanley)Biquad filterssignal-processing · low: Second-order IIR sections (RBJ cookbook): low/high pass, peaking EQ; stable cascades+ 14 more primitives

Similar systems

Share the most building blocks with this one.