

OpenFans
4 Channel PC Fan Controller
- Size
- 81.5 × 57 mm
- Copper layers
- 4
- Thickness
- 1.61 mm
- Parts
- 55
- Nets
- 47
- Pads
- 223
- Tracks, vias
- 709, 127
- Pours
- 6
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 25 Jul 2026
- Updated
- 25 Jul 2026
Overview
OpenFans is an open-source printed circuit board by samomat05, from the samomat05/OpenFans repository on GitHub. It is a 4-layer board of 81.5 × 57 mm with 55 parts on 47 nets, routed with 709 tracks and 127 vias.
It is built around the ESP32-C6-WROOM-1-N8, AMS1117 and BSS138. Its parts include 24 resistors, 11 capacitors, 5 connectors, 4 transistors and 3 ICs. It belongs with the ESP32 and RISC-V boards of this library.
Main components
3ESP32-C6-WROOM-1-N8
SMD,25.5x18mm-40℃~+85℃ -99.2dBm 2.4GHz 20.5dBm 382mA 3V~3.6V 78mA ESP32-C6 On-board PCB Antenna UART、SPI、I2C、I2S、USB SMD,25.5x18mm WiFi Modules ROHSEspressif SystemsWiFi ModulesAMS1117
1.0 A Low-Dropout Fixed RegulatorAdvanced Monolithic SystemsUncategorisedBSS138
SOT-23-55℃~+150℃ 1 N-channel 1.1Ω@10V、1.2Ω@4.5V 1.2V 1.7nC@10V 17.5pF 340mA 350mW 50V 6.5pF N-Channel SOT-23 MOSFETs ROHShongjiachengMOSFETs
README
README.mdOpenFans
This is my first functional PCB design that works as intended. This is a 4 channel PC fan controller which can be controlled via home assistant or custom firmware. This has a 2 pin header for a thermistor as well as a manual override in the form of a potentiometer. This is all powered by a single PD USB-C. Please beware of the footprint of your K7805 as the one I initially downloaded was incorrect for some reason. P.S. in the BOM the fan headers are labeled as DNP, I suggest you re-create the production files as I made a label change as well.
Schematic

Routing/Trace Layout

3D Render

Parts
55| Qty | Value | Footprint | References |
|---|---|---|---|
| 13 | 10kΩ | PCM_JLCPCB:R_0603 | R1, R3, R6, R7, R8, R9, R12, R13, R15, R16, R18, R19, R20 |
| 6 | 1kΩ | PCM_JLCPCB:R_0603 | R10, R11, R14, R17, R21, R24 |
| 4 | 1uF | PCM_JLCPCB:C_0603 | C2, C7, C8, C9 |
| 4 | BSS138 | PCM_JLCPCB:Q_SOT-23 | Q1, Q2, Q3, Q4 |
| 4 | ~ | Molex 470531000:CONN-TH_47053-1000 | CN1, CN2, CN3, CN4 |
| 3 | 10uF | PCM_JLCPCB:C_0805 | C1, C3, C5 |
| 2 | 4.7kΩ | PCM_JLCPCB:R_0603 | R4, R5 |
| 1 | 100uF | PCM_JLCPCB:C_1206 | C6 |
| 1 | 10kΩ | RK09K113004U:RES-TH_RK09K113004U | R22 |
| 1 | 1uF | PCM_JLCPCB:C_0402 | C10 |
| 1 | 1Ω | PCM_JLCPCB:R_0603 | R23 |
| 1 | 22.6k | Resistor_SMD:R_0201_0603Metric_Pad0.64x0.40mm_HandSolder | R2 |
| 1 | 22uF | PCM_JLCPCB:C_0805 | C4 |
| 1 | 330uF | KM337M025F12RR0VH2FP0:CAP-TH_BD8.0-P3.50-D0.6-FD | C11 |
| 1 | AMS1117 | PCM_JLCPCB:SOT-223-3_L6.5-W3.4-P2.30-LS7.0-BR | U2 |
| 1 | BOOT | PCM_JLCPCB:SW_TS-1088-AR02016 | S2 |
| 1 | Connector, USB-TYPE-C-16P | PCM_JLCPCB:TYPE-C-SMD_HX-TYPE-C-16PIN | USBC1 |
| 1 | EN | PCM_JLCPCB:SW_TS-1088-AR02016 | S1 |
| 1 | ESP32-C6-WROOM-1-N8 | ESP32_C6_WROOM_1_N8:XCVR_ESP32-C6-WROOM-1-N8 | U1 |
| 1 | ~ | K7805-1000R3:PWRM-TH_K78XX-2000 | U4-K7805-1000R3 |
| 1 | ~ | B2B-XH-A(LF)(SN):CONN-TH_B2B-XH-A-LF-SN | CN5 |
| 1 | ~ | KH-2.54PH180-1X9P-L11.5:HDR-TH_9P-P2.54-V-M | H1 |
| 1 | ~ | ProLib_pcs_2026-05-18:DFN-10_L3.0-W3.0-P0.50-BL-EP2.5 | HUSB238_002DD1 |
| 1 | ~ | Connector_PinHeader_2.54mm:PinHeader_1x09_P2.54mm_Vertical | H3 |
The 53 most common of 55 parts.
Questions
How big is the OpenFans PCB?
It measures 81.5 × 57 mm and has 4 copper layers, 1.61 mm thick.
What parts does the OpenFans use?
55 parts, built around the ESP32-C6-WROOM-1-N8, AMS1117 and BSS138. 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 OpenFans KiCad files?
From the samomat05/OpenFans repository on GitHub, at the commit this page was made from: the board is OpenFans.kicad_pcb and its schematic OpenFans.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the OpenFans design in my own project?
Its repository states no licence, so its author keeps all rights: ask samomat05 before reusing the design.
Similar boards
- 2 layers25.4 × 36.8 mm

- 2 layers61.7 × 108 mm

Panel pcb
knonyks/onyks-iot-zigbee-panel-sterujacy-z-wyswietlaczem
Panel sterujący z wyświetlaczem
40 parts - 6 layers34.7 × 43 mm

MitsubishiSC
loozhengyuan/MitsubishiSC
Smart controller for Mitsubishi Electric HVAC systems.
66 partsMIT - 4 layers100 × 50 mm

- 4 layers150 × 100 mm

Zpn devboard
CRImier/MyKiCad
My KiCad boards. Can't be bothered uploading individually anymore, so here you go.
168 parts253GPL-3.0 - 4 layers50 × 111 mm

- 4 layers48.3 × 52.9 mm

DynaButton
manhoosbilli1/dynaboard-button-controller
Dynaboard - large button/control interface board (102 syms, 590 tracks)
68 parts - 2 layers90 × 70 mm
