KYLE_K
Return to Grid
Project Dossier

Skydiving Altimeter

Timeline
2024
Category
Full Stack Dev
IMG_01.RAW
Top view of compact wearable skydiving altimeter PCB showing STM32 microcontroller, barometric pressure sensor, WS2813 addressable LED array, USB interface, and power management circuitry

System Modules

Wearable Device
C++
STM32
Embedded
PCB Design
Verification
Validation
Open Source
Risk-Analysis

Open-Source Skydiving Altimeter: High-Performance Life-Safety Equipment at 10% the Cost

Project Overview

This project demonstrates that sophisticated life-safety equipment can be built affordably without compromising performance. By designing a custom skydiving altimeter using commercially-available components, I reduced the typical $350 price point of devices like the ColorAlti to approximately $30 per unit—a 91% cost reduction. The altimeter underwent rigorous ground testing followed by multiple live skydive validations to refine both performance and user experience. The complete design, including hardware schematics, firmware, and documentation, is available as an open-source project on GitHub.

Technical Architecture

The altimeter is built around an STM32F103 microcontroller paired with a barometric pressure sensor as the core sensing element. The hardware design includes comprehensive power management with an LD1117S33TR voltage regulator, RP400N501A-TR-FE switching components, and protection circuitry to ensure reliable operation in the demanding skydiving environment. A CP2102N handles USB communication for programming and data retrieval, while EEPROM storage preserves jump data. The device features WS2813 addressable LEDs for visual feedback, chosen for their brightness and individual control capabilities critical for visibility during freefall.

Power efficiency was a key design consideration, utilizing Schottky diodes, optimized inductors, and careful capacitor selection (10uF, 4.7uF, and 100nF) to maintain stable operation throughout extended use. The inclusion of JTAG connectivity enabled efficient firmware debugging and updates, essential during the iterative development process.

Altitude Measurement and Calibration

The altimeter employs the same calibration methodology used by commercial digital wrist altimeters and in-helmet audible altimeters. Upon power-up at ground level, the device captures a reference pressure reading that establishes the baseline for all subsequent altitude calculations. This approach eliminates the need for manual altitude entry and ensures accuracy regardless of the departure airport's elevation or daily barometric variations.

During freefall, barometric pressure readings are processed through a basic filtering algorithm to convert sensor data into altitude measurements. The pressure differential during descent is so significant—skydivers typically fall at 120+ mph in freefall—that sensor noise becomes negligible compared to the signal. This allowed for straightforward filtering techniques while maintaining the precision required for safety-critical altitude awareness.

Visual Feedback System

The WS2813 LED array implements a three-phase color-coded countdown system that intuitively maps to the stages of a skydive. Green LEDs count down to breakoff altitude, where formation skydivers separate to establish safe spacing. Yellow LEDs then track descent to deployment altitude, typically around 3,500-4,000 feet. Finally, red LEDs provide critical warnings as the jumper approaches the 2,500-foot hard deck—the minimum safe altitude for emergency procedures. This color progression provides instant visual feedback without requiring the jumper to interpret numerical displays during the high-cognitive-load environment of freefall.

Real-World Validation Challenges

The most significant engineering challenge emerged not from the hardware or firmware design, but from creating a testing system that could accurately simulate actual skydive conditions. Ground testing revealed limitations quickly—validating altitude calculations, LED visibility, power consumption, and timing could only go so far without the actual environmental conditions of a jump.

Live testing uncovered issues invisible during ground validation. The state controller exhibited unexpected behavior during the idle ascent phase to altitude, and accurately detecting the transition from aircraft to freefall proved more complex than anticipated. Aircraft may descend before jumper exit—during approach patterns or turbulence—which could trigger false freefall detection if the system relied solely on descending pressure readings.

Freefall Detection Algorithm

The solution involved implementing a rolling buffer in the STM32's memory that continuously captures pressure data over an extended time window. Rather than making instantaneous decisions about state transitions, the system analyzes pressure trends to distinguish between aircraft movements and true freefall. Once freefall is confirmed through sustained pressure decrease at the expected rate, the algorithm retroactively pulls buffered data into the active state, ensuring no critical altitude information is lost during those first crucial seconds after exit.

This approach prevents false triggers from aircraft descent while maintaining the rapid response time necessary for accurate altitude tracking from the moment of exit. The system must transition quickly—skydivers cover approximately 1,000 feet in the first five seconds of freefall—making this buffering technique essential for maintaining accurate altitude awareness throughout the jump.

Project Philosophy and Impact

This project was undertaken to prove a fundamental principle: we can build whatever we set our minds to. While commercial alternatives exist and serve the skydiving community well, demonstrating that equivalent functionality could be achieved at a fraction of the cost using accessible components and open-source principles validates the power of maker culture and engineering determination.