Corvus
UAS flight control firmware
Install / Use
/learn @David-OConnor/CorvusREADME
Corvus: Small UAS flight controller firmware
todo: Fill out this README
This mainly exists as a code demo, although is mostly functional for quadcopter rate-control ("acro") flight, when paired with specific hardware. There is nascent code to support fixed-wing flight, but it is incomplete and untested.
It uses RTIC to manage control flow, via interrupts.
Video of a flight (OSD not shown)
Overview
This firmware is tied to specific hardware configurations. It runs on STM32G4 and STM32H743 flight controllers. (AnyLeaf boards). It requires specific hardware, currently:
- ICM426xx IMU (SPI)
- DPS310 barometeric altimeter (I2c)
- UART GPS using the UBLOX protocol
- MSP Displayport OSD (e.g. DJI O3, WTFOS etc)
- DSHOT ESC motor controllers
- ELRS (CRSF) controls (UART)
- WIP support for CAN GPS, external AHRS, and controls
It is in either a flyable, or close to flyable state if paired with compatible hardware, using acro mode only. Code is written for semi-autonomous flight modes, but these are not working.
Its primary flight control model is attitude-based. Its acro mode is based on this as well, setting the attitude target based on rate controls, vice direct gyro reads. This results in higher latency than traditional gyro-based acro modes, but is less sensitive to tuning. It decouples control inputs from response.
See the accompanying Preflight repo for PC software that connects via USB to view system status, and configure the UAS.
See the accompanying AHRS library, which it uses as a dependency, for the attitude heading-reference system.
See this DroneCAN library for interaction with CAN peripherals.
See descriptions in individual modules for their function.
Related Skills
node-connect
344.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
96.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
344.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
344.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
