
Standalone Mini PC BMS - Rev 1.1
dmcke5/MiniPC_BMS
An all in one power managment solution for powering mini pc's with batteries!

A bidirectional USB-C Power Delivery (PD) power bank built around a software-defined PD stack and an I²C buck-boost charger. This repository holds the KiCad hardware design (schematic, layout, BOM, fabrication outputs).
ESP Smart IoT Power Bank is an open-source printed circuit board by LUntiedt, from the LUntiedt/Smart_IOT_PowerBank_PCB repository on GitHub. It is a 4-layer board of 61.4 × 42.6 mm with 98 parts on 61 nets, routed with 507 tracks and 293 vias.
It is built around the ESP32-C3-WROOM-02-H4, FUSB302B11MPX and TPS54202HDDCR, with the TVS2200DRVR, BQ25792RQMR and CSD17581Q3A among its other parts. Its parts include 47 capacitors, 27 resistors, 6 ICs, 5 connectors and 4 diodes. It belongs with the power and home automation and IoT boards and the ESP32 and RISC-V boards of this library.
A bidirectional USB-C Power Delivery (PD) power bank built around a software-defined PD stack and an I²C buck-boost charger. This repository holds the KiCad hardware design (schematic, layout, BOM, fabrication outputs). The firmware lives in a separate repository.
Firmware:
smart-iot-power-bank-firmware
Smart IoT Power Bank
The board implements a professional power-management architecture comparable to those found in modern laptops. The same USB-C port handles input (sink) and output (source/OTG), limited to a robust 30 W. Energetic characterization (V/I telemetry, efficiency) is done entirely with the internal 16-bit ADCs of the charge controller, avoiding external sense amplifiers.
| Property | Value |
|---|---|
| Topology | Bidirectional USB-C PD (sink + source) |
| Battery | 4S1P Li-ion, 14.8 V nominal (~45 Wh) with integrated protection BMS |
| Max power | 30 W (5 V / 9 V / 12 V / 15 V / 20 V profiles) |
| MCU | ESP32-C3 (Wi-Fi/BLE) |
| Charger | TI BQ25792 I²C buck-boost |
| PD PHY | onsemi FUSB302B |
| Logic rail | TPS54202 buck → 3.3 V |
| EDA tool | KiCad |
| Fab house | Aisler (stackup & design rules tuned to Aisler) |
| Designator | Part | Function | System Role |
|---|---|---|---|
| U3 | BQ25792RQMR (TI) | I²C buck-boost charger | Handles charging (buck) and discharging (OTG/boost) in hardware. Single inductor L1 (2.2 µH). |
| U1 | FUSB302B11MPX (onsemi) | USB Type-C PD PHY | Monitors the CC pins and translates PD signalling into I²C messages for the MCU. |
| U6 | TPS54202HDDCR (TI) | 2 A step-down | Generates a clean 3.3 V logic rail from the fluctuating system voltage. Inductor L2 (10 µH). |
| Q1, Q2 | CSD17581Q3A (TI) | Dual N-channel MOSFETs | Back-to-back FETs for reverse-polarity protection / VBUS load isolation; block reverse current from the USB port into the system. |
| J2 | Würth WR-MPC4 64900311122 | Battery connector | Connects the external 4S1P 18650 pack (14.8 V, ~45 Wh, with internal BMS). |
| Designator | Part | Function | Notes |
|---|---|---|---|
| U2, U4 | TVS2200DRVR (TI) | Flat-clamp surge protection | VBUS TVS — tight clamping on the high-current bus. |
| D2, D4 | TPD4E05U06DQAR (TI) | 4-channel low-cap ESD | Protects CC lines and the differential pairs without loading the high-speed signals. |
| D1 | ZLLS350 (Diodes Inc.) | 40 V Schottky | Power-path / bootstrap diode. |
| Z1 | MMSZ5242B | 12 V Zener | Rail clamp. |
| Designator | Part | Function | Engineering benefit |
|---|---|---|---|
| U5 | ESP32-C3-WROOM-02-H4 (Espressif) | Master MCU | FSM control, software PD stack, I²C master, BLE server. |
| — | BQ25792 (internal) | 16-bit ADC telemetry | Reads V_BUS, I_BUS, V_BAT, I_BAT from the charger — no external current sensors. |
| (TS pin) | 10 k NTC | Thermistor | Cell temperature monitoring via the BQ25792 TS pin. |
| J5 | 1×04 header | OLED / I²C | 0.96" OLED for local PD-profile and efficiency readout. |
| Designator | Part | Function |
|---|---|---|
| J1, J3 | USB-C receptacle (Würth 629722000214) | Two USB-C ports — see differential-pair routing below. |
| J4 | 2×03 header | Programming / debug header. |
| SW1, SW2 | Würth tactile 434121025816 | Boot / reset buttons. |
| D3 | Green LED (Würth) | Status indication. |
Full part list with manufacturer numbers, footprints and datasheets:
ESP_Smart_IoT_Power_Bank.csv.
To avoid system reboots under heavy load, the supply is cascaded:
V_SYS from the 4S pack.V_SYS down to a constant 3.3 V for the logic. The ESP32 therefore always sees a clean rail, independent of current spikes in the power stage.The 4S pack (14.8 V) minimizes conversion losses:
Thanks to the 4S configuration, PCB currents stay below 3 A even at 30 W:
I_bat_max = P_out / (U_bat · η)
I_bat_max = 30 W / (12.0 V · 0.9) ≈ 2.7 A (worst case, empty pack)On overheat (NTC > 60 °C) the ESP32 throttles PD power via software re-negotiation down to 5 W (5 V / 1 A) as a fallback.
4-layer board, built to Aisler's stackup and design rules.
| Layer | Role |
|---|---|
| Top | Power / Signal |
| Inner 1 | GND |
| Inner 2 | GND |
| Bottom | Power / Signal |
The dual inner ground planes give the high-speed pairs a continuous reference and a low-impedance return for the power stage.
Two impedance-controlled 90 Ω differential pairs (USB 2.0 spec):
Both pairs are protected by the low-capacitance TPD4E05U06 ESD arrays so the added capacitance does not degrade signal integrity.
Hardware design in KiCad. See the firmware repository for the FreeRTOS PD stack.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 18 | 10u | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-1206_H1.6 | C13, C14, C15, C16, C21, C22, C23, C24, C25, C27, C28, C29, C31, C32, C36, C42 +2 |
| 10 | 100n | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0402 | C5, C7, C17, C18, C20, C30, C33, C37, C41, C44 |
| 6 | 10k | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R14, R15, R17, R19, R23, R25 |
| 5 | 1u | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-1206_H1.6 | C2, C3, C6, C38, C40 |
| 2 | 100k | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R8, R26 |
| 2 | 1M | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R3, R16 |
| 2 | 1k | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R13, R18 |
| 2 | 1n | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0402 | C1, C35 |
| 2 | 22u | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-1206_H1.6 | C45, C46 |
| 2 | 330p | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0402 | C9, C10 |
| 2 | 434121025816 | 00_PowerBank_FTP:SW_Wurth_WS-TASV_434121025816 | SW1, SW2 |
| 2 | 47n | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0402 | C12, C19 |
| 2 | 4k7 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R11, R12 |
| 2 | 4n7 | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0402 | C11, C39 |
| 2 | 5k1 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R20, R21 |
| 2 | CSD17581Q3A | 00_PowerBank_FTP:CSD17581Q3A_LorenzonF | Q1, Q2 |
| 2 | MountingHole | MountingHole:MountingHole_3.2mm_M3_ISO14580 | H1, H2 |
| 2 | TPD4E05U06DQAR | 00_PowerBank_FTP:DQA_R-PUSON-N10_ | D2, D4 |
| 2 | TVS2200DRVR | 00_PowerBank_FTP:SON65P200X200X80-7N | U2, U4 |
| 2 | USB_C_Receptacle_USB2.0_16P_Wuerth_Lorenzo | 00_PowerBank_FTP:629722000214 | J1, J3 |
| 1 | 10.0 uH | 00_PowerBank_FTP:L_Wurth_WE-LHMI-7050 | L2 |
| 1 | 100 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R5 |
| 1 | 10n | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0402 | C4 |
| 1 | 127k | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R6 |
| 1 | 12V | 00_PowerBank_FTP:SOD3716X145N | Z1 |
| 1 | 2 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R1 |
| 1 | 2.2 uH | 00_PowerBank_FTP:L_Wurth_WE-LHMI-7030 | L1 |
| 1 | 22k1 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R27 |
| 1 | 27k | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R7 |
| 1 | 2k2 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R4 |
| 1 | 301 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R2 |
| 1 | 30k1 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R10 |
| 1 | 40V | 00_PowerBank_FTP:SODFL1608X65N | D1 |
| 1 | 47n | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0603_R | C34 |
| 1 | 49.9 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R24 |
| 1 | 4u7 | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-1206_H1.6 | C26 |
| 1 | 510k | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R22 |
| 1 | 56p | 00_PowerBank_FTP:C_Wurth_WCAP-CSGP-0402 | C47 |
| 1 | 5k23 | 00_PowerBank_FTP:R_Wurth_WRIS-RSKS-0402 | R9 |
| 1 | 64900311122 | 00_PowerBank_FTP:J_Wurth_WR-MPC4_64900311122 | J2 |
| 1 | BQ25792RQMR | 00_PowerBank_FTP:BQ25792RQMR | U3 |
| 1 | Conn_01x04_Pin | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J5 |
| 1 | Conn_02x03_Odd_Even | Connector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_Vertical | J4 |
| 1 | ESP32-C3-WROOM-02-H4 | 00_PowerBank_FTP:ESP32C3WROOM02H4 | U5 |
| 1 | FUSB302B11MPX | 00_PowerBank_FTP:QFN50P250X250X80-15N | U1 |
| 1 | Green | 00_PowerBank_FTP:D_Wurth_WL-SMCW-0603 | D3 |
| 1 | TPS54202HDDCR | 00_PowerBank_FTP:SOT95P280X110-6N | U6 |

dmcke5/MiniPC_BMS
An all in one power managment solution for powering mini pc's with batteries!

8aChristian/-Smart-Multi-Cell-BMS-USB-C-Power-Delivery-Hub-2S-3S-45W-65W-
The Smart Multi-Cell BMS & USB-C Power Delivery Hub is an industrial-grade, high-reliability power management hardware system designed for high-performance multi-cell portable devices, robotics, industrial IoT, and…

dashonigkuchen/embedded-projects
A collection of embedded development projects, experiments, and hardware/software prototypes.



moro696/nixie-clock
here i will post documentation for the nixie clock project.

bismarx-v1/GPS-Compass
The compass that doesnt point to north, but it points to a GPS location, or a list of locations and points to the nearest one

It measures 61.4 × 42.6 mm and has 4 copper layers, 1.64 mm thick.
98 parts, built around the ESP32-C3-WROOM-02-H4, FUSB302B11MPX, TPS54202HDDCR and TVS2200DRVR. 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.
From the LUntiedt/Smart_IOT_PowerBank_PCB repository on GitHub, at the commit this page was made from: the board is ESP_Smart_IoT_Power_Bank.kicad_pcb and its schematic Charge_Controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask LUntiedt before reusing the design.