

Blower 50w
Open PCB stator motor CAD: spec in, verified axial-flux PCB stator design + manufacture-ready Gerbers out
- Copper layers
- 6
- Thickness
- 1.2 mm
- Parts
- 8
- Nets
- 4
- Pads
- 8
- Tracks, vias
- 8,388, 100
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 2 Jul 2026
- Updated
- 2 Jul 2026
Overview
Blower 50w is an open-source printed circuit board by zetikh, from the zetikh/statorforge repository on GitHub, published under the MIT licence. It is a 6-layer board with 8 parts on 4 nets, routed with 8,388 tracks and 100 vias.
It belongs with the robots and motor control boards of this library.
README
README.mdStatorForge
Open PCB stator motor CAD. Motor requirements in → optimized, verified axial-flux PCB stator design out: performance datasheet + preview + manufacture-ready Gerber/Excellon files you can send to any PCB fab.
Inspired by the commercial "motor-as-software" workflow (ECM's PrintStator); StatorForge is an independent open-source implementation. v0.1 is not pretty — it is built to be correct first.
What it does
- Spec — you give torque, speed, DC bus voltage, envelope (OD, bore, air gap), magnet class, and PCB fab limits (layers, copper weight, trace/space).
- Optimize — searches slot/pole combos (star-of-slots winding theory), layer counts, trace widths and coil radii with a fast analytic model, then fully generates + numerically verifies the best candidates.
- Verify — the winner must pass:
- full DRC (clearances, through-drill checks on every layer, board edge, annular rings) on the actual generated copper;
- connectivity check (one star-connected network, every coil in series);
- numeric-vs-analytic torque-constant cross-check (two independent computations must agree);
- voltage/current/thermal feasibility at the rated point.
- Validate (v0.2) — a built-in 2-D finite-difference magnetostatic solver independently re-computes the air-gap field on every run and reports its deviation from the analytic model; a FEMM script is emitted for external FEA cross-checking.
- Export — Gerber X2 + Excellon drill files (accepted by
JLCPCB/PCBWay/etc.), a native KiCad 7/8
.kicad_pcbproject, SVG preview, JSON + Markdown datasheet with torque-speed and efficiency curves, magnet/rotor BOM.
The physics engine integrates back-EMF and torque with the Lorentz (BLv) method over the real trace geometry — winding factor, coil polarity and field harmonics emerge from the copper, not from assumptions. See docs/theory.md for every formula and its source.
Quickstart
pip install -e ".[dev]"
pytest # verify your install
# design from a spec file
statorforge design examples/blower_50w.yaml -o out/
# or straight from numbers
statorforge quick -t 0.2 -n 2400 -v 48 --od 120 -o out/
# or the local web UI
statorforge serve # http://127.0.0.1:8151
# or build the double-clickable single-file Windows app
build_exe.bat # -> dist\StatorForge.exeOutputs land in out/:
blower_50w-gerbers.zip # send this to a PCB fab (1.2 mm board, 2 oz copper)
blower_50w.kicad_pcb # open/modify/DRC the board in KiCad 7/8
blower_50w_femm.lua # optional external FEA cross-check (FEMM 4.2)
preview.svg # all copper layers + rotor magnet ghost
datasheet.md # human datasheet with plots + field validation
design.json # machine-readable full results
drc_report.txt # proof the design is clean
spec_used.yaml # exact spec incl. chosen design paramsWhat a "design" is
A double-rotor axial-flux PM machine: two rotor discs with NdFeB wedge magnets + steel back iron, and the PCB in between as an ironless stator. Wedge-spiral concentrated coils on every copper layer, connected in series per phase, wye connection, terminals as plated through-hole pads. Zero cogging, no core loss — losses are copper I²R + trace eddy currents.
The datasheet tells you exactly what magnets/rotor to build around the board (pole count, wedge dimensions, thickness, back-iron, air gap).
Honesty / limitations (v0.2)
- Air-gap field: 1-D analytical model, now cross-checked on every run by the built-in 2-D FD solver (which captures inter-pole fringing); both are 2-D idealisations — radial edge effects are not modelled. Kt/Ke accuracy ~10 % expected vs hardware. Prototype before production.
- Inductance is a Mohan current-sheet estimate (±40 %) — fine for drive selection, not for detailed control tuning.
- Trace eddy loss uses the thin-strip approximation (width ≪ skin depth).
- Thermal model is a lumped h·A estimate; no hotspot map.
- 3-phase, wye, one board; parallel paths supported where machine symmetry guarantees equal path EMFs.
Roadmap: halbach rotors, segmented/ring stators, thermal map, delta connection, cost model, multi-stack machines.
License
MIT. Not affiliated with, endorsed by, or derived from ECM / E-Circuit Motors; "PrintStator" is their trademark. This project reimplements publicly known motor engineering from first principles and standard literature.
Parts
8| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | NPTH | statorforge:NPTH | H1, H2, H3, H4 |
| 1 | A | statorforge:PTH_pad | J1 |
| 1 | B | statorforge:PTH_pad | J2 |
| 1 | C | statorforge:PTH_pad | J3 |
| 1 | N | statorforge:PTH_pad | J4 |
Questions
What parts does the Blower 50w use?
8 parts. 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 Blower 50w KiCad files?
From the zetikh/statorforge repository on GitHub, at the commit this page was made from: the board is examples/blower_50w_output/blower_50w.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Blower 50w 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).
Similar boards
- 6 layers20 × 20 mm

- 6 layers120 × 56 mm

Adapter board
Abner0907/imx568_4_pairs_stereo
Four hardware-synchronized stereo pairs (8 × Sony IMX568-AAMJ-C, 5.1 MP mono global shutter):
8 parts - 6 layers90 × 90 mm

SolarDataLogger AddOnBoard Template
brokebit/SolarDataLogger
Firmware for custom data logger for Victron MPPT charge controllers via the Ve.Direct port/protocol.
8 partsCC0-1.0 - 6 layers10.5 × 20.7 mm

Usb adapter
MicroLind-Developers/microlind-hw
Hardware repository for the microlind project
8 partsCERN-OHL-P-2.0 - 6 layers169.7 × 51.9 mm

Kicad new
pale-shadow/badge-2017-bsidesindy
We did this as a workshop during @indybsides in March 2017.
8 parts - 6 layers60 × 135.8 mm

- 6 layers

- 6 layers53 × 36.5 mm

BatteryBoard 10sNp V1
BradleyCanty/Parametric-21700-Battery-System-V1
A do-it-yourself 21700 battery system for use in UAVs or UGVs
7 partsMIT