Skip to the content
4 layers57 × 27 mmAltlog, the printed circuit board in 3D

4-layer flight data recorder. Open altlog.kicadpro in KiCad 10.

Size
57 × 27 mm
Copper layers
4
Thickness
1.6 mm
Parts
47
Nets
60
Pads
221
Tracks, vias
504, 87
Pours
4
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
15 Jun 2026
Updated
15 Jun 2026

Overview

Altlog is an open-source printed circuit board by alexdortiz, from the alexdortiz/flight-data-recorder repository on GitHub, published under the MIT licence. It is a 4-layer board of 57 × 27 mm with 47 parts on 60 nets, routed with 504 tracks and 87 vias.

It is built around the STM32F411CEU6, MS5611-01BA03 and W25Q128JVSIQ, with the AP2112K-3.3, LSM6DSO32 and MCP73831 among its other parts. Its parts include 21 capacitors, 8 resistors, 7 ICs, 3 diodes and 3 connectors. It belongs with the STM32 boards of this library.

Main components

7

README

hardware/README.md

AltLog — KiCad project (hardware/)

4-layer flight data recorder. Open altlog.kicad_pro in KiCad 10.

Files

FileWhat it is
altlog.kicad_proProject: design rules (min track 0.15 mm), USB/Power/Default net classes
altlog.kicad_schSchematic — auto-generated, ERC-clean (0 errors), all 47 parts wired
altlog.kicad_pcb4-layer board scaffold — 50×22 mm rounded outline + 2× M2 holes (empty, ready for placement)
altlog.kicad_symProject symbol library — the custom TPD2E001 symbol (U7)
sym-lib-tableRegisters the altlog symbol library with the project
altlog.pretty/Project footprint library — MS5611 (U2) land pattern (buzzer now uses a stock footprint)
fp-lib-tableRegisters the altlog footprint library with the project
gen/schgen.pyGenerates the schematic + altlog.kicad_sym
gen/genfp.pyGenerates the altlog.pretty footprints (from datasheet land patterns)

Schematic notes (read before editing)

  • Style: netlist-style capture — parts sit on a grid and are joined by global labels, not hand-drawn wires. It is electrically complete and ERC-clean; for a portfolio drawing you may want to re-arrange and wire it conventionally.
  • On first open: accept "Update symbols from library" (clears 5 lib_symbol_mismatch warnings from the generated symbol cache).
  • U3 LSM6DSO32 uses the pin-compatible Sensor_Motion:LSM6DS3 library symbol (the part is LSM6DSO32 — same LGA-14 pinout). U7 TPD2E001 uses the custom symbol in altlog.kicad_sym (pinout 1=IO1, 2=GND, 3=NC, 4=VCC, 5=IO2, per the TI datasheet). Both are fully wired.
  • Remaining ERC warnings are benign: 5 symbol-cache mismatches (cleared by the symbol-update above) + 2 power/IO notices (flash /WP+/HOLD pulled to +3V3).
  • All 47 footprints assigned. U2 (MS5611) uses a project land pattern in altlog.pretty/; LS1 = Murata PKMCS0909E (9×9 piezo, stock footprint — swapped from the 16×16 CMT-1603 so it fits the board). LS1 is piezo, so D3 (flyback) is OPTIONAL/DNP.
  • Placement done: all 47 parts are auto-placed on the board (no overlaps) via gen/place.py over the KiCad IPC API. Refine interactively, then route.

Workflow from here

  1. Open project → accept Update symbols from library. Footprints are already assigned (incl. the altlog.pretty ones via fp-lib-table).
  2. ERC to zero (Week-2 exit).
  3. Open PCB Editor (the 4-layer board scaffold with outline + holes is ready) → Tools ▸ Update PCB from Schematic (loads all 47 footprints + ratsnest) → place per ../docs/layout-plan.md → add copper zones: In1.Cu = GND, In2.Cu = +3V3 → route.
  4. DRC to zero (Week-3 exit) → Gerbers + drill → order.

⚠ altlog.kicad_pcb is now owned by the KiCad GUI. Unlike the schematic, do not regenerate it (gen/genpcb.py is one-time and refuses to overwrite).

See ../docs/schematic-plan.md (net-by-net), ../docs/layout-plan.md, and ../docs/verification.md.

Regenerate the schematic

text
cd gen && python schgen.py ../altlog.kicad_sch

Parts

47
QtyValueFootprintReferences
120.1uFCapacitor_SMD:C_0402_1005MetricC1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12
310uFCapacitor_SMD:C_0805_2012MetricC13, C14, C15
21kResistor_SMD:R_0402_1005MetricR5, R6
21uFCapacitor_SMD:C_0402_1005MetricC18, C19
227pFCapacitor_SMD:C_0402_1005MetricC20, C21
25.1kResistor_SMD:R_0402_1005MetricR1, R2
1100RResistor_SMD:R_0402_1005MetricR7
1100kResistor_SMD:R_0402_1005MetricR8
110kResistor_SMD:R_0402_1005MetricR3
12.2uFCapacitor_SMD:C_0603_1608MetricC17
125MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
12N7002Package_TO_SOT_SMD:SOT-23Q1
14.7kResistor_SMD:R_0402_1005MetricR4
14.7uFCapacitor_SMD:C_0603_1608MetricC16
1AP2112K-3.3Package_TO_SOT_SMD:SOT-23-5U5
1Arm/EraseButton_Switch_SMD:SW_SPST_B3U-1000PSW1
1FerriteInductor_SMD:L_0603_1608MetricFB1
1JST-PHConnector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_VerticalJ2
1LED greenLED_SMD:LED_0603_1608MetricD1
1LED redLED_SMD:LED_0603_1608MetricD2
1LSM6DSO32Package_LGA:LGA-14_3x2.5mm_P0.5mm_LayoutBorder3x4yU3
1MCP73831Package_TO_SOT_SMD:SOT-23-5U6
1MS5611-01BA03altlog:MS5611-01BA_QFN-8_5x3mmU2
1PKMCS0909EBuzzer_Beeper:Buzzer_Murata_PKMCS0909ELS1
1STM32F411CEU6Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mmU1
1SWDConnector_PinHeader_1.27mm:PinHeader_2x05_P1.27mm_VerticalJ3
1Schottky 20VDiode_SMD:D_SOD-123D3
1TPD2E001Package_TO_SOT_SMD:SOT-553U7
1USB-CConnector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_HorizontalJ1
1W25Q128JVSIQPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU4

Similar boards

  • 4 layers35.1 × 77 mmEuroc controller, the printed circuit board in 3D

    Euroc controller

    aesirkth/fjalar_flight_controller

    A simpler flight controller

    94 parts1
  • 4 layers40 × 100 mmNNCpro, the printed circuit board in 3D

    NNCpro

    PlanAndBuild/NoNameComputer-2.0

    The NoNameComputer 2.0 AKA NNCpro is being designed for mid-high power rockets and other flying vehicle. It will be equipped with various sensors like barometers, IMUs, magnetometer, current sensing etc.

    263 parts2
  • 4 layers88 × 58 mmBIOCHEST ECG EMG, the printed circuit board in 3D

    BIOCHEST ECG EMG

    8aChristian/BIOCHEST-ECG-EMG

    Figure 1: Full 4-Layer High-Density Medical PCBA with Galvanic Isolation Barrier & Routed Copper Tracks.

    29 parts
  • 4 layers70 × 100 mmSkylink fc, the printed circuit board in 3D

    Skylink fc

    ajisrawi/5g-3d-printed-drone

    3D-printed quadcopter with a custom F405 flight controller, 4G/5G companion connectivity, and phone control

    136 parts
  • 4 layers50.8 × 106.6 mmM.I.A., the printed circuit board in 3D

    M.I.A.

    landodoughty/Mission-Independent-Avionics-M.I.A.-

    My Custom Rocket Avionics System

    186 parts
  • 4 layers50.8 × 87 mmAFSElec, the printed circuit board in 3D

    AFSElec

    rice-eclipse/AFSElec

    ECLIPSE: AFS

    148 parts
  • 2 layersAvionics, the printed circuit board in 3D

    Avionics

    MSOE-Rocket-Team/2021-Avionics

    68 parts
  • 4 layers82 × 34 mmFiber phantom, the printed circuit board in 3D

    Fiber phantom

    jayis1/hacker-devices

    Full-cycle hardware designs for security research devices — each device is a subfolder with its own README, schematics, PCB layout, and software stack

    17 parts2

Questions

How big is the Altlog PCB?

It measures 57 × 27 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Altlog use?

47 parts, built around the STM32F411CEU6, MS5611-01BA03, W25Q128JVSIQ and AP2112K-3.3. 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 Altlog KiCad files?

From the alexdortiz/flight-data-recorder repository on GitHub, at the commit this page was made from: the board is hardware/altlog.kicad_pcb and its schematic hardware/altlog.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Altlog design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).