

The DEEED Flight Computer is an easy-to-build, open-source flight computer / altimeter for model rockets. It is designed around commonly available breakout boards, so it is simple to assemble and use.
- Size
- 24 × 106 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 17
- Nets
- 22
- Pads
- 72
- Tracks, vias
- 153, 7
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 26 Oct 2026
- Updated
- 27 Oct 2026
Overview
DEEED is an open-source printed circuit board by elgspace, from the elgspace/DEEED-Open-Source-Flightcomputer repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 24 × 106 mm with 17 parts on 22 nets, routed with 153 tracks and 7 vias.
It is built around the IRLZ44N. Its parts include 4 resistors, 4 ICs, 2 capacitors and 2 transistors.
Main components
1README
README.mdDEEED Open-Source Flight Computer
The DEEED Flight Computer is an easy-to-build, open-source flight computer / altimeter for model rockets. It is designed around commonly available breakout boards, so it is simple to assemble and use. I designed it as a good first PCB project for myself and for every hobbyist.
The programming side of the project was mostly done by Claude AI, as I can't really program myself – this accelerated that part enormously. I recommend you write your own code or improve the existing code and design if you can or want to. I hope you have a great experience!
⚠️ Safety notice This is a hobby project, provided without any warranty (see LICENSE). It is not a certified recovery system. In the original setup the ejection charge is fired by the rocket motor itself; the igniter output is an additional function. Follow the laws and safety codes of your rocketry association, and always test the igniter output without any igniter connected.
I Build my own fully custom and 3D printed model Rocket around this Flightcomputer. The Rocket can be found on Makerworld. I also uploaded some of my Flight on YouTube ELG_Space https://www.youtube.com/@ELG_Space
Technical overview
| Function | Part |
|---|---|
| MCU, IMU and Bluetooth recovery beacon | Seeed XIAO nRF52840 Sense |
| Barometer | BMP280 (six-pin breakout board version) |
| Stable 5 V supply | Pololu 4941 |
| Data logging | Adafruit 4682 SD card breakout board |
| Buzzer | Standard 5 V buzzer (found in most electronics starter kits) |
| Switching (buzzer and pyro channel) | 2× N-channel MOSFET IRLZ44N |
The board is 24 mm wide and 106 mm tall, so it fits into a 35mm airframe.
Pinout
| Pin | Function |
|---|---|
| D0 | Manual override button (to GND) for ground tests |
| D1 | Buzzer (via MOSFET) |
| D2 | Igniter / pyro channel (via MOSFET) |
| D4 / D5 | I2C to the BMP280 (address 0x76) |
| D6 | BMP280 supply (3.3 V from a GPIO, so the firmware can power-cycle the sensor) |
| D7 | SD card chip select (SCK/MISO/MOSI on D8/D9/D10) |
| D3 | free |
Recommended for each MOSFET: 330 Ω in series with the gate and a 10 kΩ pulldown from gate to GND, so the output can never switch while the MCU is booting.
Code overview
The current software is DEEEDSoft V0.2. It can:
- detect the flight phases automatically: PAD → BOOST → COAST → APOGEE → DESCENT → LANDED
- detect apogee using a median-filtered barometric altitude, a vertical-speed window, a plausibility check and a 15 s backup timer
- fire the igniter output at apogee
- record flight data into RAM during the flight (2000 records, 3 s pre-launch buffer; 50 Hz up to apogee, 5 Hz during descent) and write it after landing to the SD card as
flightNNN.csvplus a summaryflightNNN.txt - help you find the rocket: buzzer and a Bluetooth beacon named "Rocket-Recovery" after landing
- show its status on the board's RGB LED (green = IMU, barometer and SD OK; red = something is missing)
- keep running if the barometer misbehaves: it uses its own software I2C with timeouts, powers the BMP280 from D6 and automatically power-cycles it after repeated read errors; a hardware watchdog covers everything else
Serial commands (115200 baud)
| Key | Action |
|---|---|
l | list files on the SD card |
d | print the last written file (read flight data without removing the card) |
w | write the data buffer to the card now |
r | re-initialise the SD card |
f | show flight summary |
m | show RAM usage |
s | status (state, records, SD, BMP280 errors/restarts) |
Ground test
Pull D0 briefly to GND to step to the next state (PAD → BOOST → … → LANDED). Do this without any igniter connected.
Build and flash
Requires PlatformIO.
Repository layout
| Folder | Part |
|---|---|
| Software/DEEEDSoft 0.2/ | firmware (PlatformIO project: src/, lib/, platformio.ini) |
| Hardware/ | KiCad project (schematic and PCB) |
| Example Flightdata/ | recorded flight data |
The firmware lives in Software/DEEEDSoft 0.2/. Open that folder in VS Code / PlatformIO to build and flash it.
src/main.cpp main loop, serial console, setup
lib/Sensors/ IMU, BMP280, software I2C
lib/StateMachine/ flight phases and detection logic
lib/Actuators/ igniter and buzzer
lib/DataLogger/ RAM buffer, CSV and summary files on SD
hardware/ KiCad project (schematic and PCB)All detection thresholds are named constants at the top of lib/StateMachine/StateMachine.cpp.
Known limitations
- Tuned for small model rockets and tested on only a few flights.
- Barometric altitude can be disturbed by airflow or ejection pressure; hence the plausibility check and the backup timer.
- During a BMP280 outage the last valid altitude is held.
Contributing
Issues and pull requests are welcome – especially flight data and improvements to the apogee detection.
License
Parts
17| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 1KΩ | Custom_Library:Resistor Steckplatz | R2, R4 |
| 2 | 2KΩ | Custom_Library:Resistor Steckplatz | R1, R5 |
| 2 | IRLZ44N | Package_TO_SOT_THT:TO-220-3_Vertical | Q1, Q2 |
| 1 | 100μF | Capacitor_THT:CP_Radial_D8.0mm_P3.50mm | C1 |
| 1 | 10μF | Capacitor_THT:CP_Radial_D5.0mm_P2.00mm | C2 |
| 1 | Buzzer | Buzzer_Beeper:MagneticBuzzer_StarMicronics_TMB | BZ1 |
| 1 | MICROSD_SPI_OR_SDIO_CARD | Custom_Library:MODULE_MICROSD_SPI_OR_SDIO_CARD | U3 |
| 1 | ~ | Custom_Library:Pololu Step-Up Voltage Regulator 5V | U4 |
| 1 | ~ | Custom_Library:BMP-280 Board | U2 |
| 1 | ~ | Custom_Library:XIAO-nRF52840-DIP | U1 |
The 13 most common of 17 parts.
Questions
How big is the DEEED PCB?
It measures 24 × 106 mm and has 2 copper layers, 1.6 mm thick.
What parts does the DEEED use?
17 parts, built around the IRLZ44N. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the DEEED KiCad files?
From the elgspace/DEEED-Open-Source-Flightcomputer repository on GitHub, at the commit this page was made from: the board is Hardware/DEEED KiCad Projekt/DEEED.kicad_pcb and its schematic Hardware/DEEED KiCad Projekt/DEEED.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the DEEED design in my own project?
Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 2 layers304.8 × 170.8 mm

- 2 layers94 × 79 mm

- 2 layers

Morpheus kicad
pscrespo/Morpheus-STM32
A small 3D printer controller board for use with a "blue pill" STM32F1 generic board. Inspired on http://reprap.org/wiki/SinapTec
66 parts80GPL-3.0 - 2 layers100 × 100 mm

- 2 layers157.5 × 97.8 mm

Esp32PrinterController
MitchBradley/Esp32PrinterController
PCB design for 3D printer controller using ESP32 processor
101 parts16MIT - 2 layers99.1 × 99.1 mm

- 2 layers64.8 × 109.2 mm

Dmx ledstrip dimmer-32ch
robinolejnik/dmx-ledstrip-dimmer-32ch
Arduino Mini and TLC5940 based 32 channel 12V PWM dimmer with DMX512 and RDM support.
105 parts14MIT - 2 layers101.6 × 53.3 mm

BatteryAnalyzer MkII
Moragor/BatteryAnalyzer_MkII
Updated Version of the battery analyzer, now with constant current
25 parts12MIT