FC-Udev Flight Software is an open-source project designed to operate and manage model rockets, perfect for rocketeers eager to explore the integration of electronics into their projects. Developed by Cosmic Aerospace Technology (C|A|T), this software provides a robust, modular foundation for enthusiasts, beginners, and professionals to build, deploy, and log telemetry for flight systems. Optimized for Arduino-based platforms, it integrates sensor modules to monitor real-time telemetry, detect events, and execute autonomous operations.
This repository represents our commitment to fostering innovation, learning, and collaboration within the aerospace and electronics communities.
- Open Source: Freely available for non-commercial and educational purposes.
- Telemetry Logging: Seamless integration with SD card modules for recording temperature, pressure, altitude, and other sensor data.
- Modular Design: Built for flexibility and ease of customization.
- Advanced Sensor Support: Compatible with the Adafruit MPU6050 and BMP280 modules for precise accelerometer, gyroscope, and barometric readings.
- Event Detection: Includes launch detection and apogee recovery deployment logic.
- User Configurable: Allows toggling features like data logging and apogee delay for different mission profiles.
To use this software, ensure the following hardware components are available:
- Flight Computer: Arduino-compatible board (e.g., Arduino Mega, Uno, or Nano).
- Sensors:
- Adafruit MPU6050 (Accelerometer and Gyroscope)
- Adafruit BMP280 (Barometric Pressure and Temperature Sensor)
- SD Card Module: Compatible with SPI interface.
- Peripherals:
- LEDs
- Buzzers
- Pyrotechnic outputs (for recovery system deployment)
- Arduino IDE: Install the latest version.
- Libraries:
- Clone this repository or download the
.inofile. - Open the
.inofile in the Arduino IDE. - Install the required libraries listed above.
- Upload the sketch to your Arduino-compatible board.
- Setup: Initializes the sensors, peripherals, and SD card module.
- Loop: Contains the main program logic for telemetry logging, launch detection, and recovery system deployment.
- Functions:
printTelemetry(): Logs and prints sensor data.flight(): Handles the flight phase, including event-based logic.deploy(): Executes recovery system deployment.startup(): Provides a startup sequence for user feedback.
- Data Logging:
- Enable or disable logging by setting the
dataLoggingvariable in the code.
- Enable or disable logging by setting the
- Customizing Deployment:
- Adjust the apogee delay using the
delayTimevariable.
- Adjust the apogee delay using the
- Telemetry:
- View real-time data via the serial monitor or access the recorded telemetry in the
data.txtfile on the SD card.
- View real-time data via the serial monitor or access the recorded telemetry in the
Contributions are welcome! Whether you want to fix a bug, enhance the software, or suggest a new feature:
- Fork the repository.
- Create a branch for your feature/bugfix.
- Submit a pull request with a detailed explanation.
This project is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-nd/4.0/
We thank the global open-source community for their contributions to the Arduino ecosystem. Special recognition goes to:
- Adafruit Industries for their robust sensor libraries.
- Greiman for the SDFat library.
For questions, feature requests, or bug reports, please create an issue in the Issues Section.
If you find this project useful, consider donating to us at cosmicaero.space/donate.
Cosmic Aerospace Technology (C|A|T)
Unlocking the sky through open innovation.
cosmicaero.space