DIYBMS ESP32 Controller
chipsi·diyBMSv4·ControllerCircuit/ControllerCircuit.kicad_pcb
About the DIYBMS ESP32 Controller PCB
DIYBMS ESP32 Controller is an open source ESP32 PCB design by chipsi, published on GitHub under the CC-BY-NC-4.0 license. It is a 2-layer board measuring 122.5 × 87.6 mm, with 77 components from 42 distinct parts.
Its main chip is the ESP32-DEVKITC-32D, from the ESP32 family. Other key parts include the TJA1057GT/3, EL3H7(B)(TA)-G, TCA6408APWR, SN65HVD75DR and AMS1117-3.3. By type, the board carries 24 resistors, 15 connectors, 10 ICs, 9 capacitors, 8 diodes and 3 transistors.
From the project
This is the latest version of the diyBMS controller
This is the latest version of the diyBMS controller
THIS REPOSITORY CONTAINS THE HARDWARE FOR THE SYSTEM
The latest version of the controller uses an ESP32 and supports CANBUS, RS485, SD CARD logging, relays, SSR outputs, multiple inputs, AVR programmer and much more.
Although the hardware is complete, not all features are usable from the software, this will be developed and improved over time to make use of the hardware.
Main components on the DIYBMS ESP32 Controller
DIYBMS ESP32 Controller bill of materials (BOM)
77 components, 42 distinct parts — part numbers from the project's BOM.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | TJA1057GT/3 | SOIC-8_3.9x4.9mm_P1.27mm | U1 |
| 1 | EL3H7(B)(TA)-G | SOP-4_4.4x2.6mm_P1.27mm | U2 |
| 1 | TCA6408APWR | TSSOP-16_4.4x5mm_P0.65mm | U3 |
| 1 | ESP32-DEVKITC-32D | MODULE_ESP32-DEVKITC-32D | U4 |
| 1 | SN65HVD75DR | SOIC-8_3.9x4.9mm_P1.27mm | U5 |
| 1 | AMS1117-3.3 | SOT-223-3_TabPin2 | U6 |
| 1 | TCA9534A | TSSOP-16_4.4x5mm_P0.65mm | U8 |
| 2 | AQY212GSZ | SO-4_4.4x3.6mm_P2.54mm | U9, U12 |
| 1 | ATTINY841-SSU ATtiny841-SSU | SOIC-14_3.9x8.7mm_P1.27mm | U10 |
| 2 | AO3400A | SOT-23 | Q1, Q2 |
| 1 | AO3401A | SOT-23 | Q3 |
| 6 | ScrewTerminal | Terminal-Block_3.81_4P_LCSC_C395880 | J1, J4, J5, J7, J12, J14 |
| 2 | SCREWTERMINAL3PIN ScrewTerminal3Pin | Terminal-Block_5.0mm_3P-LCSC_C395850 | J2, J3 |
| 1 | AVR-ISP-6 | PinHeader_2x03_P2.54mm_Vertical | J6 |
| 1 | AVR-ISP-6 2x3 2.54mm IDC Connectors | PinHeader_2x03_P2.54mm_Vertical | J8 |
| 1 | CONN_01X06_FEMALE Conn_01x06_Female | PinHeader_1x06_P2.54mm_Vertical | J9 |
| 1 | CONN_01X02_FEMALE Conn_01x02_Female | PinHeader_1x02_P2.54mm_Horizontal | J10 |
| 1 | CONN_01X03_FEMALE Conn_01x03_Female | PinHeader_1x03_P2.54mm_Vertical | J11 |
| 1 | CONN_01X02_FEMALE Conn_01x02_Female | PinHeader_1x02_P2.54mm_Vertical | J13 |
| 1 | 0472192001 Molex 0472192001 | 0472192001 | J15 |
Show 22 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | Fuse, 1.85A | Fuse_2920_7451Metric | F1 |
| 2 | CONN_01X02_FEMALE Conn_01x02_Female | PinHeader_1x02_P2.54mm_Vertical | JP2, JP3 |
| 2 | SRD-05VDC-SL-C | RELAY_SRD-05VDC-SL-C | K1, K2 |
| 1 | LCD | TFTSPI_2_8_240x320_TOUCH | LCD1 |
| 1 | Receive | JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal | RX1 |
| 1 | Transmit | JST_PH_S2B-PH-K_1x02_P2.00mm_Horizontal | TX1 |
| 1 | RGB | LED_RGB_5050-6 | D1 |
| 2 | LL4148 | D_MiniMELF | D2, D5 |
| 3 | YELLOW LED | LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D3, D4, D6 |
| 1 | D_Zener_Small | D_5W_P10.16mm_Horizontal | D7 |
| 1 | NUP2105LT1G | SOT-23 | D8 |
| 5 | 100NF 100nF | C_0805_2012Metric | C1, C2, C5, C6, C8 |
| 2 | 22uF 6.3V | CP_EIA-3216-18_Kemet-A_Pad1.58x1.35mm_HandSolder | C3, C4 |
| 2 | 1UF 1uF | C_0805_2012Metric | C9, C10 |
| 2 | 100R | R_0805_2012Metric | R1, R8 |
| 3 | 2K2 | R_0805_2012Metric | R2, R5, R16 |
| 3 | 180R | R_0805_2012Metric | R3, R21, R22 |
| 2 | 300R | R_0805_2012Metric | R4, R17 |
| 2 | 120R | R_0805_2012Metric | R6, R9 |
| 4 | 220R | R_0805_2012Metric | R10, R14, R18, R25 |
| 6 | 10K | R_0805_2012Metric | R11, R15, R19, R20, R23, R24 |
| 2 | 560R | R_0805_2012Metric | R12, R13 |
DIYBMS ESP32 Controller design files
The KiCad project lives in the chipsi/diyBMSv4 repository on GitHub; these links point at the commit this page was built from.
DIYBMS ESP32 Controller: common questions
What microcontroller does the DIYBMS ESP32 Controller use?
The DIYBMS ESP32 Controller is built around the ESP32-DEVKITC-32D, from the ESP32 family.
How big is the DIYBMS ESP32 Controller PCB?
The DIYBMS ESP32 Controller measures 122.5 × 87.6 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the DIYBMS ESP32 Controller?
77 components, from 42 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.
Where can I download the DIYBMS ESP32 Controller design files?
From the chipsi/diyBMSv4 repository on GitHub, which has the KiCad layout and the BOM; the links under Design files point to each one.
Can I use the DIYBMS ESP32 Controller design in my own project?
It is published under CC-BY-NC-4.0, which limits how it may be reused; read the license before building on it.
Can I test firmware for the DIYBMS ESP32 Controller without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug ESP32 firmware against it before you order a PCB.
More boards in diyBMSv4
Similar boards
ESP32
Open Book Abridged Edition
joeycastillo
85 × 115 mm65 parts2LCC-BY-SA-4.08.1kESP32
Powertrain
byrantech
64 × 45.4 mm171 parts4LMIT4.3kESP32
Esp32 minimal
atopile
36.2 × 26.8 mm20 parts2LMIT4.0kESP32
Badge
atopile
56.3 × 39 mm239 parts4LMIT4.0kESP32
Controller
StuckAtPrototype
29 × 74 mm58 parts4LApache-2.03.8kESP32
Racer
StuckAtPrototype
36 × 50.2 mm70 parts4LApache-2.03.8k