Skip to the content
2 layers95 × 85 mmFiberboard logic min, the printed circuit board in 3D

Fiberboard logic min

nguyenduchan/fiberboard

Fiberboard là bo mạch điều khiển logic tích hợp (AIO), không có driver stepper Nema. Cùng chức năng module ESP32 công nghiệp thông dụng: 4 ngõ vào cách ly + 4 relay + RS485.

Size
95 × 85 mm
Copper layers
2
Thickness
1.6 mm
Parts
108
Nets
75
Pads
363
Tracks, vias
0, 0
Pours
2
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
6 Oct 2026
Updated
11 Oct 2026

Overview

Fiberboard logic min is an open-source printed circuit board by nguyenduchan, from the nguyenduchan/fiberboard repository on GitHub. It is a 2-layer board of 95 × 85 mm with 108 parts on 75 nets.

It is built around the CH340C, ESP32-WROOM-32E and XL1509-5.0, with the EL357N-G, SP3485EN-Y and TLV1117-33DCY among its other parts. Its parts include 36 resistors, 20 diodes, 18 capacitors, 13 ICs and 6 transistors. It belongs with the ESP32 boards of this library.

Main components

11

README

README.md

Fiberboard

Fiberboard là bo mạch điều khiển logic tích hợp (AIO), không có driver stepper Nema. Cùng chức năng module ESP32 công nghiệp thông dụng: 4 ngõ vào cách ly + 4 relay + RS485. Dùng cho bơm DC, cấp liệu feeder, báo vật thể lạ và mini filler. Bố trí I/O giống module thương mại: cọc 8P cho 4 ngõ vào (SIG/GND), 4 cọc 3P cho 4 relay, cọc RS485, cọc nguồn.

Trên bo có module ESP32-WROOM-32E hàn thẳng (không còn đế cắm DevKitC) và giắc nạp/debug rời J13 (hàng chân 1×5: GND, TX, RX, IO0, EN) cắm mạch USB-UART 3,3 V hoặc ESP-Prog bên ngoài, kèm nút BOOT/EN. Không còn chip USB-UART và cổng USB trên bo. Nguồn vào 24 VDC. Bốn relay SRD / HF3FF cuộn 24 V (SPDT, COM/NO/NC, mỗi relay cách ly opto khỏi MCU), bốn ngõ vào cách ly PC817 (IN1–IN4) và RS485. Mỗi giắc vào/ra có đèn SMD 0805 sát cọc. Trong cột nguồn có đèn debug: D27 sáng khi +24 V sau bảo vệ còn điện, D6 khi LDO ra 3,3 V. Không có header OLED trên bo.

Kho mã này chỉ chứa thiết kế KiCad và script sinh mạch/layout. Phần mềm nhúng (firmware) không có trong kho.

Ghi chú thiết kế chi tiết: pcb/DESIGN_NOTES.txt

Khối bảo vệ 24 V + buck: pcb/PWR_24V_PROTECT_BUCK_GUIDE.txt


Chức năng các khối

KhốiMô tả
MCUESP32-WROOM-32E (U1) hàn thẳng, ăng-ten sát mép phải bo (vùng ANT_KEEPOUT cấm đồng)
Nạp firmwareGiắc J13 (GND, TX, RX, IO0, EN) → mạch nạp rời; mạch nạp không cấp nguồn cho bo. Nạp tay: giữ SW1 (BOOT), nhấn SW2 (EN). TX/RX ghi theo phía ESP32 (nối chéo với RX/TX của mạch nạp)
NguồnVIN 24 V → F1 (đế 5×20 có nắp) → D7 TVS SMAJ24A → Q12 AO3401A (chống ngược cực) → C4 → XL1509-5.0 → +5V → TLV1117 → 3,3 V. Cuộn relay lấy thẳng +24V. Chỉ một cầu chì F1. Mass sao tại NT1
Đầu vào số4 ngõ cách ly PC817 (EL357N) trên một cọc 8P J3 chỉ có SIG + GND (không cấp 24 V ra cảm biến). Mỗi ngõ nhận áp 9–24 V (PNP / thiết bị tự cấp / công tắc khô có nguồn ngoài) so với GND: R 4,7 kΩ → LED opto, diode ngược chống đảo cực, TVS SMF28A, tụ lọc 100 nF phía MCU (~1 ms chống nhiễu)
Đầu ra4 relay HF3FF/024-1ZS (COM/NO/NC) trên J5/J6/J7/J12. Mỗi relay có opto cách ly EL357N giữa GPIO và tầng cuộn: GPIO → R 1 kΩ → LED opto; phía 24 V opto → đáy MMBT3904 (kéo xuống bằng 10 kΩ) → kéo thấp cuộn; flyback 1N4148W. Tổng cộng 8 opto (4 ngõ vào + 4 relay). Tiếp điểm hở — tải cảm lớn: snubber/diode tại tải

Bảo vệ trên bo (tóm tắt): F1 đế 5×20 có nắp, ống sứ 4 A thay bằng tay; D7, C15, Q12 và C4/C14 ở nguồn vào; mass NT1 (một điểm); ngõ vào hiện trường qua opto; RS485 D9. Lắp tủ: nguồn 24 V ≥ 1,5–2 A, dây xoắn, IEC 61000-6-2; dừng khẩn / SIL — phần cứng an toàn riêng.


Đầu nối ra ngoài (I/O)

Cạnh dài trên (trái → phải): J1 | J3 — nguồn vào 24 V, 4 ngõ vào cách ly IN1–IN4 (cọc 8P).

Cạnh dài dưới (trái → phải): J5 | J6 | J7 | J12 | J8 — relay 1, relay 2, relay 3, relay 4, RS485.

RefTênChânÝ nghĩa
J1VIN1 / 2+24 VDC / mass
J3IN1–IN41…8SIG1 / GND / SIG2 / GND / SIG3 / GND / SIG4 / GND (nhãn in I1 G I2 G I3 G I4 G)
J5, J6, J7, J12RELAY 1–41 / 2 / 3COM / NO / NC
J8RS4851 / 2 / 3A / B / mass logic
J13NẠP1…5GND / TX (IO1) / RX (IO3) / IO0 / EN — hàng chân 2,54 mm trong lòng bo, cạnh nút BOOT/EN

Cọc đấu dây hiện trường — cọc vít 5,08 mm liền khối

Hạng mụcKhuyến nghị
Trên PCBCọc vít liền khối bước 5,08 mm (loại KF128-5.08-xP, chân ngang). Footprint Fiberboard:Terminal_2EDG5.08-… dùng chung bước chân 5,08 mm và lỗ 1,3 mm; kiểm tra bản vẽ cơ khí của cọc đã chọn (độ sâu thân, hướng cắm dây) trước khi đặt hàng
Dây ra hiện trườngSiết dây thẳng vào cọc, không cần đầu đực. Muốn cọc cắm rút thì đổi lại sang 2EDG5.08 cái + đực (đắt hơn ~$4–8 mỗi bo)
J12P · J3 8P (4 ngõ vào) · J5, J6, J7, J8, J12 3P (RS485: cáp xoắn có bọc chắn, nối mass một đầu)

GPIO ESP32-WROOM-32E (tham chiếu firmware)

GPIOTín hiệuHướngGhi chú
IO25IN1VàoNgõ vào 1 (sau opto, kéo lên 10 kΩ, tích cực thấp)
IO26IN2VàoNgõ vào 2
IO32IN3VàoNgõ vào 3
IO33IN4VàoNgõ vào 4
IO27OUT_RLY1RaRelay 1 qua opto (mức cao = hút)
IO13OUT_RLY2RaDriver relay 2
IO18OUT_RLY3RaDriver relay 3
IO19OUT_RLY4RaDriver relay 4
IO16RS485_RXVàoUART RX (SP3485)
IO17RS485_DERaDE và RE# chung (kéo xuống 10 kΩ = nghe)
IO23RS485_TXRaUART TX
IO22LED_RUNRaĐèn RUN, kéo thấp = sáng
IO1 / IO3UART0 TX / RX—Ra giắc J13 để nạp/log
IO0BOOT—Nút SW1 + chân J13

Chưa dùng: IO4, IO21, IO34/35/36/39 (chỉ vào). Tránh dùng chân strapping IO0/2/5/12/15 cho vào/ra.


Thư mục trong kho mã

Đường dẫnVai trò
pcb/fiberboard-logic.kicad_proDự án KiCad 10 (sơ đồ + PCB)
pcb/DESIGN_NOTES.txtGhi chú nguồn, layout, GPIO
pcb/PWR_24V_PROTECT_BUCK_GUIDE.txtKhối bảo vệ 24 V và buck
pcb/BOM.txtBOM đầy đủ + giá VND (sinh bằng pcb/scripts/make_bom.py)
pcb/ASSEMBLY.txtVùng lắp ráp tùy chọn theo giắc (DNP cả nhóm)
pcb/libraries/Symbol và footprint Fiberboard
pcb/scripts/generate_kicad_project.pySinh lại sơ đồ/PCB/thư viện
pcb/scripts/connectivity.pyDanh sách linh kiện, mạng và kết nối
pcb/scripts/pcb_layout.pyVị trí footprint, silk I/O, vùng ăng-ten
pcb/scripts/make_bom.pySinh BOM.txt từ danh sách linh kiện
pcb/scripts/autoroute.pyĐi dây tự động (A* trên lưới 0,1 mm, 2 lớp; lõi tăng tốc bằng numba trong maze_nb.py). Chạy sau generate_kicad_project.py: python pcb/scripts/autoroute.py --passes 7 --png route.png

Bản minimum (giá thấp nhất, chưa có bảo vệ)

Sinh bằng biến thể min, ghi ra file riêng pcb/fiberboard-logic-min.* và pcb/BOM_min.txt (bản đủ bảo vệ giữ nguyên):

bash
FIBER_VARIANT=min python pcb/scripts/generate_kicad_project.py
FIBER_VARIANT=min python pcb/scripts/make_bom.py

Trên PowerShell: $env:FIBER_VARIANT='min'; python pcb/scripts/generate_kicad_project.py.

GiữBỏ
8 opto (4 ngõ vào + 4 cách ly relay), R 4,7 kΩ + diode ngược + tụ lọc ngõ vào, diode flyback relay, đèn nguồn 24 V và 4 đèn relay, mass sao NT1Cầu chì F1, TVS D7 và TVS ngõ vào D39–D42, TVS RS485 D9, P-FET chống ngược Q12 (+R17/R63), C15, đèn ngõ vào / RS485 / 3V3 / RUN

Cắm ngược nguồn hoặc quá dòng sẽ hỏng bo; bảo vệ sẽ đánh giá và thêm lại sau. Giá linh kiện trên PCB khoảng 134 – 306k VND (bản đủ bảo vệ 155 – 361k).

Kích thước: PCB 95 × 85 mm (vừa hộp nhựa PLC 115×90×40 mm, lòng ~95×90; cần xác nhận lại bằng số đo thật). Bố trí:

  • Cạnh trên, trái → phải: J1 nguồn, J3 cọc 8P bốn ngõ vào (SIG/GND), J8 RS485. Cạnh dưới: 4 cọc relay J5/J6/J7/J12.
  • ESP32-WROOM-32E sát mép phải, dải cấm ăng-ten x ≥ 86,5 mm (không đụng 4 relay); buck, nút BOOT/EN và giắc nạp J13 nằm giữa bo.
  • Cần hộp có lỗ cọc ở cả hai cạnh dài (25 chân 5,08 mm không vừa một cạnh 95 mm).
  • Linh kiện chiếm ~55% diện tích bo.

Cách làm việc

BướcViệc cần làm
1Mở pcb/fiberboard-logic.kicad_pro trong KiCad 10
2Sau khi sửa Python: python pcb/scripts/generate_kicad_project.py (cần KiCad 10; đường dẫn KiCad trong script)
3python pcb/scripts/autoroute.py --passes 7 rồi refill pour GND và GND_PWR tại điểm sao NT1
4Chạy DRC trong KiCad; kiểm tra tay vùng ăng-ten (ANT_KEEPOUT) và chân giắc nạp J13
5python pcb/scripts/make_bom.py sinh lại BOM

Kích thước bo và vỏ

Vỏ: hộp PLC 145 × 90 × 40 mm (mã 145T-1D). Giắc nhà máy nằm trên cạnh dài (~20 vị trí, pitch 5 mm). Lòng thân khoảng 125 × 90 mm. PCB 118 × 84 mm.

Hạng mụcGiá trị
PCB118 × 84 mm, 2 lớp FR4, 1,6 mm
VỏHộp PLC ABS 145 × 90 × 40 mm (relay HF3FF cao ~15,5 mm)
GiắcCạnh dài trên: J1 nguồn vào, J3 bốn ngõ vào. Cạnh dài dưới: J5/J6/J7/J12 relay, J8 RS485
Lắp rápSMD ưu tiên; domino, relay HF3FF, đế cầu chì xuyên lỗ hàn tay

Ước giá linh kiện (tham chiếu)

Chi tiết từng mã: pcb/BOM.txt. Tóm tắt (lẻ VN, 1 bo, ±30%):

Hạng mụcKhoảng (k VND)
Linh kiện trên PCB (gồm module ESP32)~155 – 361
PCB 2 lớp 118×84 mm~25 – 120
Lắp đủ một máy~180 – 481 (chưa gồm mạch nạp rời ~25–80k, dùng chung nhiều bo)

Parts

108
QtyValueFootprintReferences
1810kResistor_SMD:R_0805_2012MetricR10, R14, R26, R27, R28, R39, R47, R48, R49, R52, R55, R58, R61, R65, R66, R67 +2
9100nFCapacitor_SMD:C_0805_2012MetricC5, C9, C11, C18, C28, C29, C30, C31, C32
81N4148WDiode_SMD:D_SOD-123D3, D4, D5, D33, D35, D36, D37, D38
8EL357NPackage_SO:SOP-4_3.8x4.1mm_P2.54mmU5, U6, U9, U10, U11, U12, U13, U14
6MMBT3904Package_TO_SOT_SMD:SOT-23Q3, Q4, Q5, Q13, Q14, Q15
51kResistor_SMD:R_0402_1005MetricR24, R25, R29, R59, R62
41kResistor_SMD:R_0805_2012MetricR11, R12, R13, R64
44.7kResistor_SMD:R_1206_3216MetricR7, R8, R57, R60
4HF3FF/024-1ZSRelay_THT:Relay_SPDT_SANYOU_SRD_Series_Form_CK1, K2, K3, K4
4M3MountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
2100nF 50VCapacitor_SMD:C_0805_2012MetricC14, C17
210RResistor_SMD:R_0805_2012MetricR18, R19
210uFCapacitor_SMD:C_0805_2012MetricC7, C8
25.1kResistor_SMD:R_0805_2012MetricR50, R51
110uF 50VCapacitor_SMD:C_1206_3216MetricC16
1120RResistor_SMD:R_0805_2012MetricR15
11uFCapacitor_SMD:C_0805_2012MetricC10
1220uF 10VCapacitor_SMD:CP_Elec_6.3x5.4C2
1220uF 50VCapacitor_SMD:CP_Elec_10x10.5C4
122uFCapacitor_SMD:C_0805_2012MetricC3
124VLED_SMD:LED_0805_2012MetricD27
147uH 6045Inductor_SMD:L_Sunlord_SWPA6045SL1
1485LED_SMD:LED_0603_1608MetricD20
1485+IN1-4Fiberboard:Terminal_2EDG5.08-1x11T_P5.08mm_HorizontalJ3
1BOOTButton_Switch_SMD:SW_Push_1P1T_XKB_TS-1187ASW1
1CH340CPackage_SO:SOIC-16_3.9x9.9mm_P1.27mmU8
1ENButton_Switch_SMD:SW_Push_1P1T_XKB_TS-1187ASW2
1ESP32-WROOM-32ERF_Module:ESP32-WROOM-32EU1
1IN1LED_SMD:LED_0603_1608MetricD15
1IN2LED_SMD:LED_0603_1608MetricD16
1IN3LED_SMD:LED_0603_1608MetricD31
1IN4LED_SMD:LED_0603_1608MetricD32
1RLY1LED_SMD:LED_0805_2012MetricD17
1RLY1-4Fiberboard:Terminal_2EDG5.08-1x12T_P5.08mm_HorizontalJ5
1RLY2LED_SMD:LED_0805_2012MetricD18
1RLY3LED_SMD:LED_0805_2012MetricD19
1RLY4LED_SMD:LED_0805_2012MetricD34
1SP3485ENPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU7
1SS14Diode_SMD:D_SOD-123D44
1SS34Diode_SMD:D_SMAD8
1TLV1117-33Package_TO_SOT_SMD:SOT-223-3_TabPin2U3
1USB-CConnector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12J11
1VINFiberboard:Terminal_2EDG5.08-1x02T_P5.08mm_HorizontalJ1
1XL1509-5.0Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU2

Similar boards

  • 2 layersESP, the printed circuit board in 3D

    ESP

    MurilloHorvath/KiCad

    Projetos utilizando o software KiCad

    72 parts1MIT
  • 2 layers148.3 × 69 mmPlantPartner PCB1.0, the printed circuit board in 3D

    PlantPartner PCB1.0

    aboler/plant-partner

    Plant-Partner repo. for CEN4907c

    86 parts3
  • 2 layers76.8 × 100 mmProject CV, the printed circuit board in 3D

    Project CV

    KazimGL/ESP32-PowerIoT-DevBoard

    ESP32 battery-powered IoT dev board with Li-ion charging, protection, and sensor support — designed in KiCad

    62 parts
  • 2 layers81.3 × 72.9 mmController v4.3, the printed circuit board in 3D

    Controller v4.3

    RT-CUSTOMZ/Illumigon

    WLED-gesteuerte Lichtpanele

    48 parts1
  • 2 layers90 × 60 mmEsp32 control node, the printed circuit board in 3D

    Esp32 control node

    avolk201/RTOS-Demo

    A functioning RTOS project for an ESP32

    48 parts
  • 2 layers84 × 66 mmPomodoro timer v5 routed, the printed circuit board in 3D

    Pomodoro timer v5 routed

    hinewboy/pomodoro-timer

    番茄钟 PCB 项目(KiCad):原理图、布局布线自动化脚本、JLCPCB 打样生产文件

    46 partsMIT
  • 2 layers100 × 85 mmESP32 MediaCarrier routed, the printed circuit board in 3D

    ESP32 MediaCarrier routed

    xmyoot/esp32-media-carrier

    ESP32 multimedia carrier board with 7–24 V DC buck regulator, 3.2 W Class-D I2S audio amp, WS2812 LED ring driver, and SPI TFT display header

    97 partsMIT
  • 2 layers50 × 50 mmEsp32 drone, the printed circuit board in 3D

    Esp32 drone

    saravanan-x/esp32-drone-pcb_design

    61 parts

Questions

How big is the Fiberboard logic min PCB?

It measures 95 × 85 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Fiberboard logic min use?

108 parts, built around the CH340C, ESP32-WROOM-32E, XL1509-5.0 and EL357N-G. 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 Fiberboard logic min KiCad files?

From the nguyenduchan/fiberboard repository on GitHub, at the commit this page was made from: the board is pcb/fiberboard-logic-min.kicad_pcb and its schematic pcb/fiberboard-logic-min.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Fiberboard logic min design in my own project?

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