Skip to the content
PCBKitNew board
2 layers70 × 64 mmWindpcb, the printed circuit board in 3D

LINDESTAD simracing wind controller: ESP32-C3 Zephyr firmware, KiCad PCB and SimHub integration

Size
70 × 64 mm
Copper layers
2
Thickness
1.6 mm
Parts
82
Nets
55
Pads
263
Tracks, vias
629, 104
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
22 Sep 2026
Updated
22 Sep 2026

Overview

Windpcb is an open-source printed circuit board by lindestad, from the lindestad/wind-controller repository on GitHub. It is a 2-layer board of 70 × 64 mm with 82 parts on 55 nets, routed with 629 tracks and 104 vias.

It is built around the ESP32-C3-WROOM-02-N4, AP2112K-3.3TRG1 and USBLC6-2SC6, with the SI2312-TP, CC0603KRX7R9BB104 and CL21B105KBFNNNE among its other parts. Its parts include 32 resistors, 11 capacitors, 9 transistors, 6 connectors and 4 ICs. It belongs with the ESP32 and RISC-V boards of this library.

Main components

12

README

hardware/README.md

WindPCB B.3 — editable hardware and manufacturing release

70 × 64 mm, black solder mask, white silkscreen, two-layer 1.6 mm FR-4 / 1 oz copper. ESP32-C3-WROOM-02-N4; four ARCTIC P14 Pro PST headers; native USB-C; protected 12 V input.

Populated PCB CAD rendering Underside CAD rendering

These are CAD renders, not photographs. J1, J2 and U4 have representative visual bodies; their manufacturer drawings and electrical pads govern assembly.

Reproduce the board

  1. Install KiCad 10.0, including its standard symbol, footprint and 3D libraries.
  2. Open windpcb.kicad_pro. All project-specific symbols, footprints and visual models are under libraries/; library tables use ${KIPRJMOD}. Standard STEP models use ${KICAD10_3DMODEL_DIR}. No files from the author's KiCad folder are needed.
  3. Use BOM.csv, schematic PDF and assembly drawing to inspect the release.
  4. Fabrication input: Gerber ZIP, including copper, masks, silkscreens, outline, separate PTH/NPTH drilling and front paste.
  5. Full assembly inputs: PCBA BOM and PCBA CPL: 70 placements, 33 MPNs, 63 SMT + 7 through-hole. Do not use the SMT-only files for full assembly.
  6. Select black mask / white silk, lead-free HASL, top-side assembly, and customer-added tooling holes. Retain individual placement review. Firmware is flashed afterward.

J1 takes a 5.5 × 2.5 mm centre-positive 12 V barrel plug. Use a regulated supply with sufficient startup margin (at least 3 A recommended). Each fan has its own header; leave PST daisy-chain sockets unused. Pin order: 1 GND, 2 +12 V, 3 tach, 4 PWM.

Placement and process review

The included CPL is the original submitted file, with explicit connector/capacitor insertion-origin offsets. JLC subsequently corrected several component orientations in its own assembly system. The final numeric machine placement file was not supplied. This release therefore requires a fresh supplier placement review; uploading the CPL alone does not reproduce that approval. Verify every polarized part/pin 1 against the native CAD and assembly drawing, especially Q1–Q9, U2/U3/U4, J2–J6, D1–D4 and C6/C9. The first assembled board has since operated successfully with the firmware.

U4 TPS25970LRPWR has ten electrical terminals, even when a supplier's generic visual model shows sixteen leads. Its 16 split paste apertures are intentional. Preserve the TI-derived RPW0010A lands and 0.100 mm stencil prescription; ask the assembler to review the eFuse, USB-C, and ESP32 thermal-via soldering process for its selected finish.

H1–H4: 3.2 mm M3 mounting holes, 63 × 57 mm spacing. H5/H6 are 1.152 mm NPTH tooling holes with 0.148 mm mask expansion. Their centres are (10, 3.5) and (60, 60.5) mm from the upper-left corner. The CPL origin is the lower-left corner; X right, Y up.

Regenerate and verify

Run the exporter with KiCad's Python (which provides pcbnew). On Windows:

powershell
& 'C:/Program Files/KiCad/10.0/bin/python.exe' -m pip install --target hardware/tools/vendor -r hardware/tools/requirements.txt
& 'C:/Program Files/KiCad/10.0/bin/python.exe' hardware/tools/export.py

On another installation, put kicad-cli on PATH or set KICAD_CLI and use a Python environment that can import KiCad 10's pcbnew. The exporter runs ERC, full DRC with schematic parity, checks every pad/net, exports manufacturing files/BOM/CPL, PDFs, board-only STEP, pictures and SHA256 hashes. It does not rebuild or reroute the PCB. Historical one-time layout generators were deliberately not included as build steps.

Engineering specifications and revision notes are in docs/. Their pre-order wording and references to historical local reports describe earlier reviews, not the current hardware test status. The root README and docs/validation.md describe current tests. Private supplier order/account records are not part of this public release.

Sources: TI TPS2597, ARCTIC P14 Pro PST, JLC tooling guide.

Parts

82
QtyValueFootprintReferences
8SI2312-TPWind:Package_TO_SOT_SMD_SOT-23Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9
610kWind:Resistor_SMD_R_0603_1608MetricR5, R6, R7, R8, R15, R17
5100Wind:Resistor_SMD_R_0603_1608MetricR20, R25, R30, R35, R40
52.2kWind:Resistor_SMD_R_0603_1608MetricR18, R22, R27, R32, R37
4100kWind:Resistor_SMD_R_0603_1608MetricR21, R26, R31, R36
4M3MountingHole_3.2mm_M3H1, H2, H3, H4
3100nF / 50VWind:Capacitor_SMD_C_0603_1608MetricC4, C8, C11
31kWind:Resistor_SMD_R_0603_1608MetricR9, R14, R19
31uF / 50VWind:Capacitor_SMD_C_0603_1608MetricC1, C2, C5
21uF / 50VWind:Capacitor_SMD_C_0805_2012MetricC7, C10
222Wind:Resistor_SMD_R_0603_1608MetricR3, R4
24.7kWind:Resistor_SMD_R_0603_1608MetricR10, R16
25.1kWind:Resistor_SMD_R_0603_1608MetricR1, R2
2JLC TOOL 1.152 NPTHWind:JLC_Tooling_1.152H5, H6
1+3V3Wind:TestPoint_TestPoint_Pad_D1.5mmTP2
110k 0.1%Wind:Resistor_SMD_R_0603_1608MetricR12
110uF / 50VWind:Capacitor_SMD_C_0805_2012MetricC3
1120R@100MHz / 3.5AWind:Inductor_SMD_L_1206_3216MetricFB1
112V / CENTER +Wind:BarrelJack_XKB_DC-005-5A-2.5J1
12.4k 1%Wind:Resistor_SMD_R_0603_1608MetricR13
13A / 32VWind:Fuse_Fuse_1206_3216MetricF1
1470uF / 25VWind:Capacitor_THT_CP_Radial_D10.0mm_P5.00mmC9
147uF / 50VWind:Capacitor_THT_CP_Radial_D6.3mm_P2.50mmC6
197.6k 0.1%Wind:Resistor_SMD_R_0603_1608MetricR11
1AO3401AWind:Package_TO_SOT_SMD_SOT-23Q1
1AP2112K-3.3Wind:Package_TO_SOT_SMD_SOT-23-5U2
1BOOTWind:Button_Switch_SMD_SW_SPST_TL3342SW1
1BZT52C9V1Wind:Diode_SMD_D_SOD-123D1
1EFUSE_ENWind:TestPoint_TestPoint_Pad_D1.5mmTP6
1ESP32-C3-WROOM-02-N4Wind:RF_Module_ESP32-C3-WROOM-02U1
1FAN_12VWind:TestPoint_TestPoint_Pad_D1.5mmTP3
1FAULT REDWind:LED_SMD_LED_0603_1608MetricD4
1FAULT_NWind:TestPoint_TestPoint_Pad_D1.5mmTP5
1GNDWind:TestPoint_TestPoint_Pad_D1.5mmTP1
1L1Wind:Connector_FanPinHeader_1x04_P2.54mm_VerticalJ3
1L2Wind:Connector_FanPinHeader_1x04_P2.54mm_VerticalJ4
1R1Wind:Connector_FanPinHeader_1x04_P2.54mm_VerticalJ5
1R2Wind:Connector_FanPinHeader_1x04_P2.54mm_VerticalJ6
1RESETWind:Button_Switch_SMD_SW_SPST_TL3342SW2
1SMBJ15A TVSWind:Diode_SMD_D_SMBD2
1STATUS GREENWind:LED_SMD_LED_0805_2012MetricD3
1TPS25970LRPWRWind:TPS25970_RPW0010A_2x2mmU4
1USB-C DATAWind:Connector_USB_USB_C_Receptacle_HRO_TYPE-C-31-M-12J2
1USBLC6-2SC6Wind:Package_TO_SOT_SMD_SOT-23-6U3
1VIN_FILTEREDWind:TestPoint_TestPoint_Pad_D1.5mmTP4

Questions

How big is the Windpcb PCB?

It measures 70 × 64 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Windpcb use?

82 parts, built around the ESP32-C3-WROOM-02-N4, AP2112K-3.3TRG1, USBLC6-2SC6 and SI2312-TP. 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 Windpcb KiCad files?

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

Can I use the Windpcb design in my own project?

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

Similar boards

  • 4 layers70 × 65 mmESP32 FC, the printed circuit board in 3D

    ESP32 FC

    JS2028EE/ESP32_FC

    This is the current editable KiCad 10 project for a 70 x 65 mm, four-layer controller, with an ESP32-S3-WROOM-1-N8R8, BMI088 SPI IMU, BMP280 barometer and a separate 4-in-1 ESC.

    107 parts
  • 2 layers100 × 80 mmSpeakerpcb, the printed circuit board in 3D

    Speakerpcb

    gmaxdragon/Seizo-Noise

    A massive PCB for a speaker for my robotic arm with a microphone built into it and a ton of other GPIO ports.

    52 parts1
  • 2 layers120.1 × 46 mmGeiger EDW, the printed circuit board in 3D

    Geiger EDW

    Sidolux/geiger_counter

    Geiger Counter (STS-5) designed with KiCad

    60 parts1
  • 2 layers150 × 100 mm4hbd base, the printed circuit board in 3D

    4hbd base

    krtkr/4hbd

    4 Halfbridge Driver board schematics and PCB files, KiCAD

    198 partsApache-2.0
  • 4 layers85 × 56 mmPiVI, the printed circuit board in 3D

    PiVI

    kuba2k2/PiVI

    A small Pi-sized single board computer for your car

    289 partsGPL-3.0
  • 4 layers130 × 100 mmUsb controlled debug hub, the printed circuit board in 3D

    Usb controlled debug hub

    misko/prompt2device

    The separate vNext PCB skill and orchestrator package is available alongside the reference workflow below; existing projects keep their accepted toolchain until an explicit migration.

    172 parts3MIT
  • 4 layers59 × 101 mmEnku mainboard r0.1, the printed circuit board in 3D

    Enku mainboard r0.1

    aliaksei-lameyka/ENKU-Base-reader

    Open enku-mainboard-r0.1.kicadpro with KiCad10.0.7. Matching PCB/root schematic and power.kicadsch, mcuio.kicadsch, epdhv.kicadsch, connectors.kicadsch are canonical.

    127 parts1CERN-OHL-W-2.0
  • 4 layers165 × 100 mmUsb scoring platform, the printed circuit board in 3D

    Usb scoring platform

    AndrewCraswell/agency

    Native KiCad engineering prototype, separate from the earlier ESP32/tscircuit board. Open usb-scoring-platform.kicadpro in KiCad 10; schematic and PCB are the editable source, with no generator required.

    224 partsMIT