Skip to the content
PCBKitNew board
4 layers100 × 70 mmChainaxe, the printed circuit board in 3D

This directory contains the editable Rev A.1 KiCad baseline.

Size
100 × 70 mm
Copper layers
4
Thickness
1.6 mm
Parts
163
Nets
78
Pads
521
Tracks, vias
0, 0
Pours
1
Routed
Not yet
KiCad
KiCad 7 (file 20221018)
Created
14 Dec 2023
Updated
16 Aug 2026

Overview

Chainaxe is an open-source printed circuit board by johnny9, from the johnny9/chainaxe repository on GitHub, published under the CERN-OHL-S-2.0 licence. It is a 4-layer board of 100 × 70 mm with 163 parts on 78 nets.

It is built around the ESP32-S3-WROOM-1-N16R8, EMC2305-1-AP-TR and TPD4E05U06DQAR. Its parts include 49 resistors, 27 capacitors, 6 ICs, 6 transistors and 6 connectors. It belongs with the ESP32 boards of this library.

Main components

3

README

hardware/chainaxe/README.md

ChainAxe KiCad project

This directory contains the editable Rev A.1 KiCad baseline.

Files

  • chainaxe.kicad_pro — KiCad project settings and provisional net classes.
  • chainaxe.kicad_sch — annotated preliminary schematic.
  • chainaxe.kicad_pcb — 100 × 70 mm unrouted placement baseline.
  • chainaxe.kicad_dru — conservative prototype rules.
  • pin-net-audit.csv — exhaustive expected/actual connection contract for every schematic pin.
  • symbols/ChainAxe.kicad_sym and sym-lib-table — project-local custom symbols.
  • ChainAxe.pretty/ and fp-lib-table — nine pinned project-local manufacturer-derived/audited footprints.

Open chainaxe.kicad_pro in KiCad 9. KiCad may update generated metadata when the project is first saved; review that diff before committing it.

The source package is structurally checked by scripts/validate_design.py. The exhaustive pin-net-audit.csv contract is independently checked against physical symbol-pin endpoints by scripts/validate_schematic_pinmap.py; that validator explicitly converts KiCad library Y-up coordinates to schematic Y-down coordinates. scripts/validate_pcb_geometry.py checks different-net pad intersections, NPTH/copper conflicts, body/courtyard collisions, and undocumented edge overhangs. All three are dependency-free CI checks. This build environment does not include kicad-cli, so a local KiCad 9 ERC/DRC run remains mandatory before any fabrication export; none of the source validators replaces it.

Fan startup is hardware-defined: R105 holds FAN_ARM low, while R106–R109 hold the four EMC2305 PWM inputs to U8 low. This keeps the open-drain fan sinks released (the supported-fan full-speed-safe state) even if firmware asserts FAN_ARM before configuring the EMC2305. J30's audit enumerates every USB4105-GF-A signal/power contact; its A9/B9 VBUS and A12/B12 ground contacts are stacked on their shared logical nets. The official footprint numbers all four conductive shell stakes as S1, so one audited S1 pin owns that common shell net.

C112 is the populated 100 nF USBLC6 VBUS bypass and must sit directly beside U9 pins 5/2. C3, the optional 220 µF 3V3 bulk footprint, is native DNP until AP64501 loop and load-transient validation proves an appropriate bulk value.

Design status

This is an engineering-entry design, not an order-ready board. The schematic and PCB capture the intended architecture, safe startup states, connector map, and major candidate parts. The following remain release blockers:

  • real-mating-part fit and keyed circuit-view checks for J1, J2–J6, J10, and USB-C; J6's exact connector/part remains a stop-order choice;
  • fan current, inrush, reverse-polarity FET, connector, copper, and thermal calculations;
  • AP64501 feedback, compensation, inductor, capacitance, and thermal verification;
  • ESD/TVS clamping analysis and final ordering codes;
  • exact first hashboard SKU/profile, including RESET policy and local voltage-off behavior;
  • KiCad ERC, PCB synchronization, routing, stack-up impedance calculation, and DRC; and
  • JLCPCB assembly preview, BOM/CPL reconciliation, and first-article review.

Do not generate production Gerbers from this baseline without closing the stop-order gates in ../../design-review-checklist.md.

PCB intent

The PCB is intentionally unrouted. The fan-current band stays at the top/right edge, the J10 interface lane stays at the left edge, and the ESP32-S3 antenna faces the bottom board edge with a 15 mm keepout. The USB_90OHM_PLACEHOLDER and FAN_POWER_PROVISIONAL net classes are reminders, not validated geometries.

Parts

163
QtyValueFootprintReferences
74.7kResistor_SMD:R_0402_1005MetricR85, R86, R87, R88, R100, R101, R102
4100k GATE OFFResistor_SMD:R_0402_1005MetricR200, R203, R206, R209
4100nCapacitor_SMD:C_0402_1005MetricC1, C2, C100, C102
4100p TACH FILTER DNPCapacitor_SMD:C_0402_1005MetricC200, C201, C202, C203
410uF 50V X7RCapacitor_SMD:C_1210_3225MetricCIN1, CIN2, CIN3, CIN4
42N7002 OPEN-DRAIN PWMPackage_TO_SOT_SMD:SOT-23Q1, Q2, Q3, Q4
436k TACH PULLUPResistor_SMD:R_0402_1005MetricR201, R204, R207, R210
4M3MountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
30R HIGH OPTION DNPResistor_SMD:R_0402_1005MetricR94, R96, R98
322uF 10V X7RCapacitor_SMD:C_0805_2012MetricCOUT1, COUT2, COUT3
34.7k DEFAULT LOWResistor_SMD:R_0402_1005MetricR93, R95, R97
3SS14 1A 40VDiode_SMD:D_SMAD1, D2, D3
3TPD4E05U06DQARChainAxe:TI_DQA0010A_USON10_2.5x1.0_P0.5U10, U11, U13
23V3TestPoint:TestPoint_Pad_D1.0mmTP5, TP13
2470uF 25V LOW ESRCapacitor_THT:CP_Radial_D10.0mm_P5.00mmC20, C21
2DMP3013SFV-7 PROVISIONALChainAxe:PowerDI3333-8_DMP3013SFVQ5, Q6
110.5k COMP — DS41980 TABLE 1Resistor_SMD:R_0402_1005MetricR65
1100R QOD LINK — PROVISIONALResistor_SMD:R_0402_1005MetricR51
1100kResistor_SMD:R_0402_1005MetricR50
1100k 1%Resistor_SMD:R_0402_1005MetricR70
1100k 1% PWM1 SAFE LOWResistor_SMD:R_0402_1005MetricR106
1100k 1% PWM2 SAFE LOWResistor_SMD:R_0402_1005MetricR107
1100k 1% PWM3 SAFE LOWResistor_SMD:R_0402_1005MetricR108
1100k 1% PWM4 SAFE LOWResistor_SMD:R_0402_1005MetricR109
1100k ARM OFFResistor_SMD:R_0402_1005MetricR105
1100k EN OFFResistor_SMD:R_0402_1005MetricR84
1100k ESP-SIDE PLUG PULLDOWNResistor_SMD:R_0402_1005MetricR83
1100k OE DISABLEResistor_SMD:R_0402_1005MetricR80
1100k RESET BIAS-DN DNPResistor_SMD:R_0402_1005MetricR92
1100k RESET BIAS-UP DNPResistor_SMD:R_0402_1005MetricR91
1100n 25V BOOTSTRAPCapacitor_SMD:C_0402_1005MetricC15
1100n TMUX VDDCapacitor_SMD:C_0402_1005MetricC103
1100n U12 VCCCapacitor_SMD:C_0402_1005MetricC104
1100n U6 VCCACapacitor_SMD:C_0402_1005MetricC80
1100n U6 VCCBCapacitor_SMD:C_0402_1005MetricC81
1100nF 50V X7R — U9 VBUS BYPASSCapacitor_SMD:C_0402_1005MetricC112
110k BOOT pull-upResistor_SMD:R_0402_1005MetricR111
110k EN pull-upResistor_SMD:R_0402_1005MetricR110
110k RESET OE DISABLEResistor_SMD:R_0402_1005MetricR89
110nCapacitor_SMD:C_0402_1005MetricC70
110n SOFT STARTCapacitor_SMD:C_0402_1005MetricC16
112k 1%Resistor_SMD:R_0402_1005MetricR60
11M SHIELDResistor_SMD:R_0402_1005MetricR116
11n 2kV SHIELDCapacitor_SMD:C_0805_2012MetricC111
11n CT TO VIN — PROVISIONALCapacitor_SMD:C_0402_1005MetricC50
11uCapacitor_SMD:C_0805_2012MetricC101
11u EN delayCapacitor_SMD:C_0402_1005MetricC110
11u HB_3V3 LOCALCapacitor_SMD:C_0402_1005MetricC52
11u U5 VIN BYPASSCapacitor_SMD:C_0402_1005MetricC51
12.7n COMP — DS41980 TABLE 1Capacitor_SMD:C_0402_1005MetricC17
122.1k 1% — DS41980 TABLE 1Resistor_SMD:R_0402_1005MetricRFB2
1220uF LOW ESR — DNP POST-LOOP VALIDATIONCapacitor_SMD:CP_Elec_8x10.2C3
122R USB D+Resistor_SMD:R_0402_1005MetricR114
122R USB D-Resistor_SMD:R_0402_1005MetricR115
122k CLK STRAPResistor_SMD:R_0402_1005MetricR103
127k 1%Resistor_SMD:R_0402_1005MetricR71
13.3uH SRP5030T-3R3MInductor_SMD:L_Bourns-SRP5030TA_5.7x5.2mmL1
133R RX PROVISIONALResistor_SMD:R_0402_1005MetricR82
133R TXResistor_SMD:R_0402_1005MetricR81
133k ADDR STRAPResistor_SMD:R_0402_1005MetricR104
15.1k CC1Resistor_SMD:R_0402_1005MetricR112
15.1k CC2Resistor_SMD:R_0402_1005MetricR113
156p COMP POLE DNP — DS41980 TABLE 1 C6Capacitor_SMD:C_0402_1005MetricC18
169.8k 1% — DS41980 TABLE 1Resistor_SMD:R_0402_1005MetricRFB1
1AP64501SP-13 — 3V3 BUCK PROVISIONALChainAxe:AP64501_SO8EPU3
1BITMAIN HASHBOARD DATA 2x9 / 18 POSChainAxe:PM200-2-09-W-4.3_THTJ10
1BOOTButton_Switch_SMD:SW_SPST_CK_RS282G05A3SW1
1BZX84C12LT1G 12V VGS clampPackage_TO_SOT_SMD:SOT-23ZD1
1DBG_RXTestPoint:TestPoint_Pad_D1.0mmTP9
1DBG_TXTestPoint:TestPoint_Pad_D1.0mmTP8
1EMC2305-1-AP-TRChainAxe:EMC2305_QFN16_4x4_P0.65_EP2.2U2
1ESP32-S3-WROOM-1-N16R8ChainAxe:ESP32-S3-WROOM-1_v1.8U1
1EXP_GPIO5TestPoint:TestPoint_Pad_D1.0mmTP10
1EXP_GPIO6TestPoint:TestPoint_Pad_D1.0mmTP11
1FAN 1 — G 12 T PChainAxe:0353180420_THTJ2
1FAN 2 — G 12 T PChainAxe:0353180420_THTJ3
1FAN 3 — G 12 T PChainAxe:0353180420_THTJ4
1FAN 4 — G 12 T PChainAxe:0353180420_THTJ5
1FAN INPUT 12V ONLY — 0455580003ChainAxe:0455580003_THTJ1
1FAN_12VTestPoint:TestPoint_Pad_D1.0mmTP2

The 120 most common of 163 parts.

Questions

How big is the Chainaxe PCB?

It measures 100 × 70 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Chainaxe use?

163 parts, built around the ESP32-S3-WROOM-1-N16R8, EMC2305-1-AP-TR and TPD4E05U06DQAR. 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 Chainaxe KiCad files?

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

Can I use the Chainaxe design in my own project?

Its repository publishes it under the CERN-OHL-S-2.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

  • 4 layers110 × 100 mmBitcart, the printed circuit board in 3D

    Bitcart

    skot/bitcart

    Raspberry Pi CM4 based antminer control board

    134 parts23
  • 4 layers170.2 × 92 mmCM4 JBOD Control Board, the printed circuit board in 3D

    CM4 JBOD Control Board

    ApplePie420/OpenJBOD-CM4

    This project is heavily inspired by the work of TheGuyDanish, specifically his OpenJBOD thingamajig.

    78 parts3
  • 2 layers53.1 × 81.9 mmPTN PumpControlBoard, the printed circuit board in 3D

    PTN PumpControlBoard

    lhr-solar/PS-PumpController

    Controls speed of liquid cooling pump and fans for the main battery pack. Additionally, interprets data from temperature sensors and flowrate sensors for fan/pump control loop

    115 parts1
  • 4 layers60 × 84 mmStratosCore Claude, the printed circuit board in 3D

    StratosCore Claude

    pantojinho/StratosCore

    StratosCore is an open-source portable field, aviation, meteorological, navigation and radio computer based on the ESP32-S3-WROOM-1-N16R8.

    277 parts1
  • 4 layers66 × 142 mmHandset, the printed circuit board in 3D

    Handset

    JeremyLakeyJr/mesh-phone

    OWASSO-1 DIY ESP32-S3 phone KiCad revF PCB project

    146 partsMIT
  • 2 layers24.4 × 35.8 mmRotoPD, the printed circuit board in 3D

    RotoPD

    CentyLab/RotoPD

    Repo for RotoPD hardware and documentation

    44 parts176
  • 4 layers40 × 9 mmUDB S, the printed circuit board in 3D

    UDB S

    Unified-Daughterboard/UDB-S

    Narrow variant unified daughterboards for custom keyboard designers and users

    11 parts82MIT
  • 4 layers20.6 × 51.1 mmPicoPD V1.2, the printed circuit board in 3D

    PicoPD V1.2

    centydev/PicoPD

    Repo for PicoPD hardware/software and documentation

    52 parts67MIT