Skip to the content
PCBKitNew board
4 layers38.4 × 82.8 mmHorizon, the printed circuit board in 3D

Custom Rocket Flight Controller

Size
38.4 × 82.8 mm
Copper layers
4
Thickness
1.6 mm
Parts
99
Nets
94
Pads
406
Tracks, vias
753, 268
Pours
4
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
23 May 2026
Updated
9 Aug 2026

Overview

Horizon is an open-source printed circuit board by ChladpavPy, from the ChladpavPy/Horizon repository on GitHub. It is a 4-layer board of 38.4 × 82.8 mm with 99 parts on 94 nets, routed with 753 tracks and 268 vias.

It is built around the E22-900M22S, BMP580 and MS561101BA03-50, with the TPS54525PWPR, W25Q128JVSIQ TR and ADXL372BCCZ-RL7 among its other parts. Its parts include 36 capacitors, 26 resistors, 8 ICs, 8 diodes and 6 connectors. It belongs with the STM32 boards of this library.

Main components

11

README

README.md

Horizon

Custom Rocket Flight Controller

So first I want to explain, why I started this project. I have always wanted to build my own rocket, but for a long time it was just impossible and senseless. It is generally prohibited to fly with your own custom rockets, there was nowhere to safely test them, and it could be very dangerous. But then I noticed the ČVUT rocketry challenge, where it is actually possible to do it safely and legally.

I also thought about getting some friends or classmates to join this project, which is very likely to happen. We would probably work on the mechanical rocket body together, but I realized that a rocket without a computer is basically just a firework. So it was my idea to design and build my own custom flight computer for this rocket. I also designed the avionics bay to house the electronics.

I am still not exactly sure what the real specifications for this competition will be, because they will probably be published next year in February. But that is actually a big advantage. It means I will have plenty of time to test the flight computer thoroughly and gather a solid team to build the rest of the project. I already did all the hardware and computer work, so we are prepared to fly it.

You might notice that parts like the rocket engine, the main body tube, and the deployable parachute are not included in the bom. The parachute will be deployed by the pyro channels that I designed on the board, but these mechanical parts are missing from the BOM because they will very likely be funded and specified by the ČVUT competition with the proper dimensions. For the avionics bay, it does not really matter what the final dimensions are. Because it is just plastic, I can easily redesign it for different tube dimensions and 3D print it again.

Project Features

  • Microcontroller: STM32F405RGT6 (64-pin, 32-bit ARM Cortex-M4)

  • Stackup: 4-Layer PCB for internal routing and better EMI shielding during flight

  • Sensors: ICM-42688-P 6-axis IMU, ADXL372 high-g (200g) accelerometer for launch and impact detection, and dual barometers (BMP580 & MS5611) for precise altitude tracking

  • Telemetry: LoRa E22-900M22S module for long-range real-time data transmission

  • Power: 2S LiPo main input with high-efficiency TPS54525 step-down regulator

  • Data Logging: Onboard W25Q128 128Mbit SPI Flash memory for high-speed flight data recording

  • Recovery System: Dedicated pyro channels designed for reliable parachute deployment

  • Positioning: Interface for high-precision external GPS (GEPRC GEP-M1025-DQ)

  • And more other...

Gallery

3D PCB Render

PCB 3D

PCB 3D

PCB 3D

PCB 3D

PCB 3D

PCB Routing

PCB 2D

PCB 2D

Schematic

Schematic

Avionics Bay Assembly

Avionics Bay

Avionics Bay

Avionics Bay


Bill of Materials (BOM)

ComponentQtyPurpose / DescriptionPrice (USD)Link / Distributor
Custom PCB Manufacture2The actual circuit board to solder everything on. Ordered via JLCPCB standard 4-layer service.209.53$JLCPCB
2S battery1Power source / The whole pcb and pyros will get power from this.12.77$Allegro
HOTA D6S Charger1Dual-channel AC/DC LiPo charger for safe battery maintenance. Critical for preventing thermal runaway during 2S LiPo charging for the autonomous flight computer drone system. Specifically chosen for its ability to accurately measure internal cell resistance to verify battery health for high current pyro deployments, and its adjustable lab power supply mode for safely bringing up and testing the custom TPS step down converters without the risk of frying the new board. Note: This is the cheapest available local AC option currently on sale. Shipping is $0 as it will be picked up personally.$69.00HobbyDrone.cz
GEPRC GEP-M1025-DQ GPS1High-precision positioning data (u-blox M10) with integrated QMC5883L compass and backup DPS310 barometer.$19.80Banggood

Manual Assembly Components (LCSC.com)

Note: Due to the high complexity and cost of standard PCBA services for LGA-type sensors, these components are ordered separately and will be manually reflow soldered using a stencil and hot plate.

ComponentQtyPurpose / DescriptionPrice (USD)LCSC Part #
ADXL372BCCZ-RL72High-g accelerometer (200g) for impact detection.35.41$C579465
BMP5805Precision barometric pressure sensor.5.96$C22391138
TPS54525PWPR5High-efficiency buck regulator.5.24$C140350
Total LCSC Cost-Including shipping50.46$-

Parts

99
QtyValueFootprintReferences
21100nFCapacitor_SMD:C_0402_1005MetricC2, C35, C47, C48, C49, C50, C51, C52, C53, C56, C57, C59, C60, C61, C62, C63 +5
710KResistor_SMD:R_0402_1005MetricR11, R12, R13, R15, R16, R21, R25
5LEDLED_SMD:LED_0603_1608MetricD2, D3, D6, D7, D8
4MountingHole_PadMountingHole:MountingHole_3.2mm_M3_Pad_ViaH5, H6, H7, H8
310KCapacitor_SMD:C_0402_1005MetricR19, R23, R26
310uFCapacitor_SMD:C_0805_2012MetricC24, C27, C28
310uFCapacitor_SMD:C_0603_1608MetricC8, C25, C26
31KResistor_SMD:R_0402_1005MetricR6, R9, R10
322KCapacitor_SMD:C_0402_1005MetricR20, R22, R30
322uFCapacitor_SMD:C_0805_2012MetricC34, C36, C37
3330RResistor_SMD:R_0402_1005MetricR5, R7, R8
2100RCapacitor_SMD:C_0402_1005MetricR4, R24
22.2uFCapacitor_SMD:C_0603_1608MetricC4, C7
233pFCapacitor_SMD:C_0402_1005MetricC5, C6
24.7KResistor_SMD:R_0402_1005MetricR1, R2
25.1KResistor_SMD:R_0402_1005MetricR14, R17
2AOD4184ARocket:TO-252-2_L6.6-W6.1-P4.57-LS9.9-TL-CWQ1, Q5
2Conn_01x02Connector_Molex:Molex_Micro-Fit_3.0_43045-0212_2x01_P3.00mm_VerticalJ7, J9
2SS34Rocket:SMA_L4.3-W2.6-LS5.2-RDD1, D4
110nFCapacitor_SMD:C_0402_1005MetricC58
11N4148WDiode_SMD:D_SOD-123D5
11uFCapacitor_SMD:C_0402_1005MetricC1
133.2KResistor_SMD:R_0402_1005MetricR3
16.8qHRocket:IND-SMD_L6.0-W6.0_SWPA6045SL1
18MHzCrystal:Crystal_SMD_5032-2Pin_5.0x3.2mmY2
1ADXL372BCCZ-RL7Rocket:LGA-16_L3.3-W3.0-P0.50-TLU9
1BMP580Rocket:LGA-10_L2.0-W2.0-P0.50-TL_BMP580U1
1BuzzerRocket:BUZ-SMD_4P-L8.5-W8.5-P8.50-TLBZ1
1Conn_01x02_PinConnector_AMASS:AMASS_XT30UPB-M_1x02_P5.0mm_VerticalJ2
1Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ6
1Conn_01x06_MountingPinConnector_JST:JST_SH_SM06B-SRSS-TB_1x06-1MP_P1.00mm_HorizontalJ11
1E22-900M22SRocket:WIRELM-SMD_E22-900M22SU2
1FlashButton_Switch_SMD:SW_Push_1P1T_XKB_TS-1187AFlash1
1ICM-42688-PRocket:LGA-14_L3.0-W2.5-P0.50-TLU5
1LOGOLOGOS:JLCG***
1LOGOLOGOS:MADRocketryG***
1LOGOLOGOS:EasyEDANEGATIVEG***
1MMBT2222APackage_TO_SOT_SMD:SOT-23Q2
1MS561101BA03-50Rocket:SENSORS-SMD_MS5611-01BA03U3
1ResetButton_Switch_SMD:SW_Push_1P1T_XKB_TS-1187AReset2
1STM32F405RGTxPackage_QFP:LQFP-64_10x10mm_P0.5mmU6
1TPS54525PWPRRocket:TSSOP-14_L5.0-W4.4-P0.65-LS6.4-BL-EPU14
1USB_C_Receptacle_USB2.0_14PConnector_USB:USB_C_Receptacle_HCTL_HC-TYPE-C-16P-01AJ1
1W25Q128JVSIQTRRocket:SOIC-8_L5.3-W5.3-P1.27-LS8.0-BLU4

Questions

How big is the Horizon PCB?

It measures 38.4 × 82.8 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Horizon use?

99 parts, built around the E22-900M22S, BMP580, MS561101BA03-50 and TPS54525PWPR. 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 Horizon KiCad files?

From the ChladpavPy/Horizon repository on GitHub, at the commit this page was made from: the board is Kicad_Source/Horizon.kicad_pcb and its schematic Kicad_Source/Horizon.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Horizon design in my own project?

Its repository states no licence, so its author keeps all rights: ask ChladpavPy before reusing the design.

Similar boards

  • 4 layers50 × 50 mmMCU Board 0.1, the printed circuit board in 3D

    MCU Board 0.1

    thejamesrhodes/Hyades-Flight-Computer

    Full Hardware and Electronics design, Bare-metal GNC flight software for an actively attitude-controlled high-power rocket

    80 parts1Apache-2.0
  • 6 layers80 × 80 mmV2ultimateflightcomp, the printed circuit board in 3D

    V2ultimateflightcomp

    codinga593/IRIS

    A next generation model rocket focused on a precise propulsive landing on a tower.

    144 parts3
  • 4 layers50 × 60 mmFORTE FlightComputer, the printed circuit board in 3D

    FORTE FlightComputer

    codinga593/Forte

    A Mid powered Rocket with data logging and live telemetry (F32-T)

    67 parts1
  • 2 layersNotahawk, the printed circuit board in 3D

    Notahawk

    bimmui/notahawk

    50 parts
  • 4 layers45 × 30 mmPmd tracker, the printed circuit board in 3D

    Pmd tracker

    ollielarkins/pmd-tracker

    Wearable rugby performance tracker: nRF52840 + Zephyr firmware, React Native companion app

    31 parts
  • 2 layers78.5 × 60 mmPcb revC, the printed circuit board in 3D

    Pcb revC

    almondsun/DynamicSystemsAndControl

    Dynamic Systems and Control coursework: Buck converter modeling, reports, KiCad PCB and STM32 firmware

    52 parts
  • 4 layers44.5 × 44.5 mmQUT Autopilot Pixracer, the printed circuit board in 3D

    QUT Autopilot Pixracer

    Heckus/QUT-OpenFCU

    The primary objective is to create an alternative to the difficult-to-source off-the-shelf Pixhawk 6. This work builds upon a edited pixracer version produced by KAI (Wesley) in 2022.

    145 parts
  • 6 layers40 × 40 mm20x20 fc, the printed circuit board in 3D

    20x20 fc

    lmiez/yecnodF405

    Open source flight controller based on the STM32F405 MCU that runs betaflight.

    120 partsGPL-3.0