Welcome to our project repository!
We developed an autonomous VTOL drone system by implementing our own STM32-based flight controller.
The purpose of this project was to design a flight controller optimized for our self-made VTOL platform.
| Repository | Description | Link |
|---|---|---|
| STRIX-FC-V1 | Repository for Testing Navigation Algorithms | GitHub Repository |
| STRIX-FC-V2 | Repository for RTOS-based Flight Controller Testing | GitHub Repository |
| STRIX-FC-V3 | Repository for the First Integrated Flight Controller Implementation and Attitude Control | GitHub Repository |
| STRIX-FC-V4 | Repository for the Attempt for Altitude Control based on Barometer | GitHub Repository |
| Ground Control System | Repository for the Ground Control System based on Nano ESP32 | GitHub Repository |
Among these versions, STRIX-FC-V3 was selected as the final implementation.
It integrates RTOS-based task scheduling, EKF-based Navigation and Cascaded Control Systems on an STM32 platform.
- STM32F405-based custom flight controller implementation
- RTOS-based task scheduling for sensor reading, control, logging, and communication
- EKF-based state estimation using IMU, GNSS, and barometer measurements
- Attitude, velocity, altitude, and position estimation in the NED coordinate frame
- Cascaded flight control structure: position control, velocity control, attitude control, rate control, and motor mixing
- Ground Control System communication using NRF24L01+
- SD card logging for flight data analysis and controller validation
- STM32CubeMX
- STM32CubeIDE
- STM32CubeProgrammer
- u-blox u-center
| Item | Module | Description |
|---|---|---|
| MCU | STM32F405RGT6 | Main Flight Controller MCU (168 MHz, 192 + 4 KB SRAM) |
| IMU | EBIMU-900FV5-R3 | Attitude Sensor |
| Baro | DFROBOT BMP390L | Barometric Pressure Sensor |
| GNSS | u-blox NEO-M9N | GNSS Module |
| Comm | NRF24L01+ | RF Communication Module |