Flight Data Logger - Image 1
Flight Data Logger - Image 2
Flight Data Logger - Image 3
Flight Data Logger - Image 4

Flight Data Logger

ArduinoC++PythonElectronics

Custom flight data logging system with GPS, IMU, and barometric sensors. Features SD card storage, real-time wireless transmission, and post-flight analysis software for reviewing flight performance.

Project Details

Technologies

Arduino, C++, Python, Electronics

Category

Aerospace Engineering

Status

Completed

Institution

TU Delft

Key Features

  • GPS, IMU, and barometric sensor integration
  • SD card storage for flight data logging
  • Real-time wireless data transmission
  • Post-flight analysis software

Project Overview

The Flight Data Logger project emerged from a need for reliable, affordable flight instrumentation for RC aircraft and amateur rockets. Commercial solutions were either prohibitively expensive or lacked the customization options needed for experimental vehicles with unique sensor requirements.

Logger PCB assembly

The system is built around a custom PCB integrating an Arduino-compatible microcontroller with GPS receiver, nine-axis IMU, barometric pressure sensor, and SD card interface. The compact design fits within typical RC aircraft fuselages while maintaining low weight for minimal performance impact.

A key design goal was robustness to the harsh vibration and acceleration environment experienced during flight. All components use automotive or industrial grade parts rated for extended temperature ranges and mechanical stress.

Hardware Design

Sensor integration

The sensor suite includes a u-blox GPS module providing 10 Hz position updates, an InvenSense ICM-20948 nine-axis IMU sampling at 200 Hz, and a Bosch BMP388 barometric sensor with 0.1 meter altitude resolution. Power regulation circuitry accepts battery voltages from 6V to 28V, covering most RC power systems.

Wireless telemetry uses a 915 MHz LoRa radio module, achieving reliable data transmission over distances exceeding 2 kilometers. The link provides real-time monitoring of critical parameters during flight, enabling immediate assessment of vehicle performance.

The PCB was designed using KiCAD and manufactured through a professional PCB fabrication service. Surface mount components were placed using a stencil and reflow soldering process for consistent quality.

Firmware Development

The Arduino-based firmware manages sensor polling, data logging, and telemetry transmission using a priority-based task scheduler. Time-critical operations like IMU sampling use hardware interrupts to ensure consistent timing regardless of other processing activities.

Ground station software

Data is logged to SD card in a binary format optimized for storage efficiency and fast write speeds. Flight events such as launch detection, apogee, and landing are automatically identified and marked in the log file.

Sensor fusion algorithms combine accelerometer, gyroscope, and magnetometer data to compute accurate attitude estimates even during dynamic maneuvers. GPS data is integrated to provide velocity and position estimates that remain accurate when GPS signal is temporarily lost.

Analysis Software

A companion Python application provides post-flight analysis capabilities including 3D trajectory visualization, parameter time histories, and flight statistics. The software imports binary log files and exports processed data in common formats for further analysis.

The system has been deployed on numerous flights, providing valuable data for performance validation and troubleshooting. Future development will add support for additional sensors and implement in-flight data processing for autonomous vehicle applications.