Avionics is an Arduino-Core based system designed for high reliability and efficiency, serving as the backbone for multiple flight computers in the Clemson University Rocket Engineering program.
This repository contains the avionics system used across various flight computers within the Clemson University Rocket Engineering program. Designed to be modular and highly configurable, the system supports critical functions such as state detection, data logging, and robust communication.
-
Launch Detection:
The Launch Predictor uses a rolling median of acceleration data to accurately detect launches. It is highly configurable to accommodate different launch profiles and includes stringent data rate and error-handling mechanisms. -
Kalman Filter:
The Kalman Filter module fuses accelerometer and altimeter data to provide precise estimates of vertical velocity.
-
SPI Flash-based Logging:
DataSaverSPI logs sensor data directly to any W25 SPI flash chip. Each sensor logs data at its own rate using the "Byte5" format, which is optimized for space efficiency while allowing for unordered data. Data is stored in a circular buffer until post-launch mode is activated. -
Serial-based Logging:
DataSaverSDSerial provides an alternative logging mechanism by streaming binary data to a serial interface. Although less space-efficient than "Byte5", it is designed for applications with large SD cards. Refer to the Serial-Logger-Decoding repository for decoding instructions.
-
Serial Command Handler:
The UARTCommandHandler offers a fully configurable command interface for runtime configuration, debugging, and data retrieval, using function pointers for flexibility. -
CC1125 Transceiver:
The CC1125 module enables direct communication via an embedded CC1125 transceiver over SPI.
The following systems integrate Avionics as a submodule:
Unit tests are managed by the Native repository, allowing for module testing without requiring embedded hardware.
The following rocket flights have successfully utilized this avionics system (most recent first):
-
MARTHA 1.1 Nov 9th L1 Cert Launch:
Launch detection and SD card data logging performed as expected. Note: No altitude data was recorded due to issues with sensor drivers or hardware damage. -
MARTHA 1.1 Spaceport 2024:
Although data was captured via the serial logger, the battery failure on the pad resulted in no launch data being recorded.
This project is licensed under the MIT License. Please review the LICENSE file for complete details.