# PCB-A AGM Battery BMS
## Description
Battery management system PCB-A for an off-grid 12 V AGM lead-acid battery with current sensing, voltage and temperature monitoring, ESP32 control, relay output, split PGND/AGND grounding, and JLCPCB-ready 2-layer layout constraints.
## Project Details
- **Owner:** 01dennisbanda
- **Created:** 3/29/2026
- **Last Updated:** 4/10/2026
- **Visibility:** Public
- **Silk Color:** White
- **Layout Color:** Green
- **Manufacturer Name:** JLCPCB
- **Implementation Details:** 100 mm x 80 mm 2-layer FR4 1.6 mm board, 2 oz copper, green solder mask, white silkscreen, HASL finish, split PGND/AGND with single star point near BAT- connector, high-current path sized for 20 A.
- **System Architecture:** ```mermaid
flowchart TD
A[12V AGM Battery Input] --> B[Fuse and Reverse Protection]
B --> C[TVS and Bulk Filter]
C --> D[High Current Path and ACS712]
D --> E[Relay Switched Load Output]
C --> F[12V to 5V Buck]
F --> G[5V Rail]
G --> H[3.3V LDO]
H --> I[ESP32 WROOM 32D]
C --> J[Battery Voltage Divider]
D --> K[Current Sense Divider Filter]
C --> L[NTC Temperature Sense]
J --> I
K --> I
L --> I
I --> M[I2C OLED Header]
I --> N[UART Programming Header]
I --> O[Relay Driver and Status LED]
P[PGND Star Point Near J1 BAT-] --> D
P --> C
Q[AGND Island] --> J
Q --> K
Q --> L
Q --> I
```
- **Copies:** 1
## Key Components
### D1 — [MBR2045CT_T0_00001](https://www.flux.ai/lcsc/mbr2045ctt000001~tryq.md)
- Manufacturer Part Number: MBR2045CT_T0_00001
- JLCPCB Part Class: Extended Part
- Product Info Url: https://lcsc.com/product-detail/Schottky-Barrier-Diodes-SBD_PANJIT-International-MBR2045CT-T0-00001_C391535.html
- Role Details: Series reverse-polarity protection on battery input high-current path
- Package: TO-220AB-3
- LCSC Part Number: C391535
- Part Type: Schottky Barrier Diodes (SBD)
- Manufacturer Name: PANJIT(强茂)
- Role: Reverse Protection
- Package or Case Code: TO-220AB-3_L10.3-W5.0-P2.54-L
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2009121106_PANJIT-International-MBR2045CT-T0-00001_C391535.pdf
**Pins:**
- A [pin 1]
- A [pin 3]
- C [pin 2]
### D2 — [SMBJ15A-13-F](https://www.flux.ai/lcsc/smbj15a-13-f~8gof.md)
- JLCPCB Part Class: Extended Part
- Product Info Url: https://lcsc.com/product-detail/TVS_DIODES_SMBJ15A-13-F_SMBJ15A-13-F_C135046.html
- Part Type: TVS
- Manufacturer Part Number: SMBJ15A-13-F
- LCSC Part Number: C135046
- Package: SMB
- Manufacturer Name: DIODES(美台)
- Package or Case Code: SMB_L4.6-W3.6-LS5.3-RD
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2304140030_Diodes-Incorporated-SMBJ15A-13-F_C135046.pdf
- Role Details: Transient clamp from protected battery rail to PGND
- Role: TVS Protection
**Pins:**
- A [pin 2]
- K [pin 1]
### D3 — [1N4007G](https://www.flux.ai/lcsc/1n4007g~gy65.md)
- Role: Flyback Protection
- Product Info Url: https://lcsc.com/product-detail/Diodes-General-Purpose_1N4007G-M7_C111122.html
- LCSC Part Number: C111122
- JLCPCB Part Class: Extended Part
- Package: SMA
- Reverse Voltage: 1000V
- Manufacturer Name: SHIKUES(时科)
- Package or Case Code: SMA_L4.4-W2.6-LS5.0-RD
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/1811131720_Shikues-1N4007G_C111122.pdf
- Manufacturer Part Number: 1N4007G
- Diode Type: Rectifier Diode
- Role Details: Flyback diode across 12V relay coil
- Part Type: Diodes - General Purpose
- Forward Voltage: 1.1V
**Pins:**
- A [pin 2]
- C [pin 1]
### F1 — [3557-15](https://www.flux.ai/jecstronic/3557-15~d1.md)
- Package: THT
- Role Details: PCB automotive blade fuse holder for 25A fuse on battery input
- Manufacturer Part Number: 3557-15
- Role: Fuse Holder
- Manufacturer Name: Keystone Electronics
- Current Rating: 30A
- Datasheet URL: https://www.keyelco.com/userAssets/file/M65p41.pdf
- Part Type: Fuse
- License: https://creativecommons.org/licenses/by/4.0/
**Pins:**
- P1 [pin 1_1]
- P2 [pin 2_1]
### J1 — [XY301V-A-5.0-2P](https://www.flux.ai/jharwinbarrozo/xy301v-a-50-2p~u6.md)
- Manufacturer Part Number: XY301V-A-5.0-2P
- Manufacturer Name: Ningbo Xinlaiya Elec.
- Role Details: 12V AGM battery input connector, pin 1 BAT+, pin 2 BAT-
- Role: Battery Input
- Package: THT
**Pins:**
- PIN1 [pin 1]
- PIN2 [pin 2]
### J2 — [XY301V-A-5.0-2P](https://www.flux.ai/jharwinbarrozo/xy301v-a-50-2p~u6.md)
- Role Details: Relay-switched load output connector, pin 1 LOAD+, pin 2 LOAD-
- Manufacturer Part Number: XY301V-A-5.0-2P
- Manufacturer Name: Ningbo Xinlaiya Elec.
- Role: Load Output
- Package: THT
**Pins:**
- PIN1 [pin 1]
- PIN2 [pin 2]
### J3 — [61300411121](https://www.flux.ai/adrian95/61300411121~pw9.md)
- Role Details: OLED header with pin order GND, 3V3, SDA, SCL
- Role: I2C Header
- Package: 1x4 2.54mm THT
- Part Type: Connector
- Manufacturer Name: Wurth Elektronik
- Manufacturer Part Number: 61300411121
- License: https://creativecommons.org/licenses/by/4.0/
- Package or Case Code: HDRV4W95P0X254_1X4_1016X254X854P
- Datasheet URL: https://www.we-online.com/components/products/datasheet/61300411121.pdf
**Pins:**
- 1 [pin 1]
- 2 [pin 2]
- 3 [pin 3]
- 4 [pin 4]
### J4 — [61300411121](https://www.flux.ai/adrian95/61300411121~pw9.md)
- Datasheet URL: https://www.we-online.com/components/products/datasheet/61300411121.pdf
- Package: 1x4 2.54mm THT
- Package or Case Code: HDRV4W95P0X254_1X4_1016X254X854P
- Manufacturer Part Number: 61300411121
- Role Details: Programming/debug header with pin order GND, TX, RX, 3V3
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Name: Wurth Elektronik
- Part Type: Connector
- Role: UART Header
**Pins:**
- 1 [pin 1]
- 2 [pin 2]
- 3 [pin 3]
- 4 [pin 4]
### K1 — [SRD-12VDC-SL-C](https://www.flux.ai/jecstronic/srd-12vdc-sl-c~ofu.md)
- Package: THT Relay
- Manufacturer Name: Ningbo Songle Relay
- Datasheet URL: https://www.lcsc.com/datasheet/lcsc_datasheet_2304140030_Ningbo-Songle-Relay-SRD-12VDC-SL-C_C30431.pdf
- Manufacturer Part Number: SRD-12VDC-SL-C
- License: https://creativecommons.org/licenses/by/4.0/
- Role Details: 12V SPDT relay switching the load positive path
- Role: Relay
- Part Type: Relay
**Pins:**
- COIL1 [pin COIL1]
- COIL2 [pin COIL2]
- COM [pin COM]
- NC [pin NC]
- NO [pin NO]
### LED1 — [WP59EGW](https://www.flux.ai/adrian95/wp59egw~fjr.md)
- Pin Role: ANODE_RED no-connect intentional
- Part Type: LED
- Manufacturer Part Number: WP59EGW
- Datasheet URL: https://www.kingbrightusa.com/images/catalog/SPEC/WP59EGW.pdf
- Package or Case Code: T-1_3/4(5MM)_BI-COLOR_INDICATOR_LAMP_2
- Role: Status LED
- Manufacturer Name: Kingbright
- Package: Radial 5mm
- License: https://creativecommons.org/licenses/by/4.0/
- Implementation Details: ANODE_RED intentionally unused and should be marked NC in KiCad handoff.
- Role Details: Green status indicator driven by ESP32 through series resistor
**Pins:**
- ANODE_GREEN [pin 3]
- ANODE_RED [pin 1]
- COMMON_CATHODE [pin 2]
### NTC1 — [NCP18XH103J03RB](https://www.flux.ai/adrian95/ncp18xh103j03rb~buk.md)
- Datasheet URL: https://www.mouser.com/datasheet/2/281/r44e-522712.pdf
- Part Type: Sensor
- License: https://creativecommons.org/licenses/by/4.0/
- Package: 0603
- Manufacturer Name: Murata Electronics
- Role: NTC Thermistor
- Role Details: 10k NTC thermistor for battery temperature divider and ADC sensing
- Manufacturer Part Number: NCP18XH103J03RB
**Pins:**
- P1 [pin 1]
- P2 [pin 2]
### Q1 — [2N2222A](https://www.flux.ai/lcsc/2n2222a~00rk.md)
- JLCPCB Part Class: Extended Part
- Compliance: RoHS
- Manufacturer Name: ST(先科)
- Part Type: Transistors/Thyristors/Bipolar (BJT)
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/1809200018_ST-Semtech-2N2222A_C118536.pdf
- Role Details: NPN low-side driver for relay coil from ESP32 GPIO
- Transistor Type: NPN
- Frequency: 250MHz
- LCSC Part Number: C118536
- Product Info Url: https://lcsc.com/product-detail/Transistors-NPN-PNP_2N2222_C118536.html
- Package or Case Code: TO-92-3_L4.9-W3.7-P1.27-L
- Role: Relay Driver
- Package: TO-92
- Manufacturer Part Number: 2N2222A
**Pins:**
- B [pin 2]
- C [pin 3]
- E [pin 1]
### SW1 — [6x6mm micro tactile switch](https://www.flux.ai/jecstronic/6x6mm-micro-tactile-switch~igw.md)
- Part Type: Switch
- Package: THT
- Purchase Url: https://shopee.ph/20Pcs-Micro-Tactile-Switch-Momentary-Tact-DIP-Switch-2Pin-6-X-6mm-Micro-Touch-Push-Button-Switch-High-5mm-6mm-7mm-8mm-9mm-i.1018846655.22773354064?sp_atk=2b55ff5c-bbfc-4967-b7e3-adb8c93c34e2&xptdk=2b55ff5c-bbfc-4967-b7e3-adb8c93c34e2&is_from_login=true
- Role: Pushbutton
- Role Details: Momentary reset button pulling EN low
**Pins:**
- P1 [pin 1]
- P2 [pin 2]
### SW2 — [6x6mm micro tactile switch](https://www.flux.ai/jecstronic/6x6mm-micro-tactile-switch~igw.md)
- Role Details: Momentary boot button pulling IO0 low
- Part Type: Switch
- Package: THT
- Role: Pushbutton
- Purchase Url: https://shopee.ph/20Pcs-Micro-Tactile-Switch-Momentary-Tact-DIP-Switch-2Pin-6-X-6mm-Micro-Touch-Push-Button-Switch-High-5mm-6mm-7mm-8mm-9mm-i.1018846655.22773354064?sp_atk=2b55ff5c-bbfc-4967-b7e3-adb8c93c34e2&xptdk=2b55ff5c-bbfc-4967-b7e3-adb8c93c34e2&is_from_login=true
**Pins:**
- P1 [pin 1]
- P2 [pin 2]
### TP1 — [5014](https://www.flux.ai/lcsc/5014~h1e5.md)
- Package: THT Test Point
- Product Info Url: https://lcsc.com/product-detail/Test-Points-Test-Rings_Keystone_5014_Keystone-5014_C238128.html
- Manufacturer Part Number: 5014
- Part Type: Test Points/Test Rings
- Role: Test Point
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302136_Keystone-5014_C238128.pdf
- Package or Case Code: TEST-TH_BD3.17-P1.87
- LCSC Part Number: C238128
- Role Details: Battery positive measurement point
- JLCPCB Part Class: Extended Part
- Manufacturer Name: Keystone
**Pins:**
- 1 [pin 1]
### TP2 — [5014](https://www.flux.ai/lcsc/5014~h1e5.md)
- Package or Case Code: TEST-TH_BD3.17-P1.87
- LCSC Part Number: C238128
- Role: Test Point
- Manufacturer Name: Keystone
- JLCPCB Part Class: Extended Part
- Product Info Url: https://lcsc.com/product-detail/Test-Points-Test-Rings_Keystone_5014_Keystone-5014_C238128.html
- Package: THT Test Point
- Manufacturer Part Number: 5014
- Part Type: Test Points/Test Rings
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302136_Keystone-5014_C238128.pdf
- Role Details: 5V rail measurement point
**Pins:**
- 1 [pin 1]
### TP3 — [5014](https://www.flux.ai/lcsc/5014~h1e5.md)
- Part Type: Test Points/Test Rings
- Manufacturer Part Number: 5014
- Role: Test Point
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302136_Keystone-5014_C238128.pdf
- Package: THT Test Point
- Product Info Url: https://lcsc.com/product-detail/Test-Points-Test-Rings_Keystone_5014_Keystone-5014_C238128.html
- Manufacturer Name: Keystone
- JLCPCB Part Class: Extended Part
- Role Details: 3.3V rail measurement point
- Package or Case Code: TEST-TH_BD3.17-P1.87
- LCSC Part Number: C238128
**Pins:**
- 1 [pin 1]
### TP4 — [5014](https://www.flux.ai/lcsc/5014~h1e5.md)
- Package or Case Code: TEST-TH_BD3.17-P1.87
- LCSC Part Number: C238128
- Role: Test Point
- Manufacturer Name: Keystone
- JLCPCB Part Class: Extended Part
- Role Details: Common ground measurement point
- Product Info Url: https://lcsc.com/product-detail/Test-Points-Test-Rings_Keystone_5014_Keystone-5014_C238128.html
- Manufacturer Part Number: 5014
- Package: THT Test Point
- Part Type: Test Points/Test Rings
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302136_Keystone-5014_C238128.pdf
**Pins:**
- 1 [pin 1]
### TP5 — [5014](https://www.flux.ai/lcsc/5014~h1e5.md)
- Package: THT Test Point
- Product Info Url: https://lcsc.com/product-detail/Test-Points-Test-Rings_Keystone_5014_Keystone-5014_C238128.html
- Role: Test Point
- Part Type: Test Points/Test Rings
- Manufacturer Part Number: 5014
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302136_Keystone-5014_C238128.pdf
- Package or Case Code: TEST-TH_BD3.17-P1.87
- Role Details: Filtered current sense ADC node
- LCSC Part Number: C238128
- JLCPCB Part Class: Extended Part
- Manufacturer Name: Keystone
**Pins:**
- 1 [pin 1]
### TP6 — [5014](https://www.flux.ai/lcsc/5014~h1e5.md)
- JLCPCB Part Class: Extended Part
- Package: THT Test Point
- Manufacturer Name: Keystone
- Package or Case Code: TEST-TH_BD3.17-P1.87
- Role Details: Battery voltage divider ADC node
- Role: Test Point
- LCSC Part Number: C238128
- Manufacturer Part Number: 5014
- Part Type: Test Points/Test Rings
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302136_Keystone-5014_C238128.pdf
- Product Info Url: https://lcsc.com/product-detail/Test-Points-Test-Rings_Keystone_5014_Keystone-5014_C238128.html
**Pins:**
- 1 [pin 1]
### TP7 — [5014](https://www.flux.ai/lcsc/5014~h1e5.md)
- Manufacturer Name: Keystone
- Package: THT Test Point
- JLCPCB Part Class: Extended Part
- Role: Test Point
- Role Details: NTC divider ADC node
- LCSC Part Number: C238128
- Package or Case Code: TEST-TH_BD3.17-P1.87
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2409302136_Keystone-5014_C238128.pdf
- Part Type: Test Points/Test Rings
- Manufacturer Part Number: 5014
- Product Info Url: https://lcsc.com/product-detail/Test-Points-Test-Rings_Keystone_5014_Keystone-5014_C238128.html
**Pins:**
- 1 [pin 1]
### U1 — [MP1584EN Module](https://www.flux.ai/adrian95/mp1584en-module~x1a.md)
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Buck Regulator
- Role Details: Converts protected battery input to 5V rail for logic and peripherals
- Package: Module
- Part Type: Module
**Pins:**
- INPUT- [pin 8]
- INPUT- [pin 7]
- INPUT+ [pin 5]
- INPUT+ [pin 6]
- OUTPUT- [pin 4]
- OUTPUT- [pin 3]
- OUTPUT+ [pin 2]
- OUTPUT+ [pin 1]
### U2 — [AMS1117-3.3](https://www.flux.ai/vasy_skral/ams1117-33~34.md)
- Role Details: Regulates 5V rail down to 3.3V for ESP32 and logic
- Role: LDO Regulator
- Manufacturer Part Number: AMS1117-3.3
- License: https://creativecommons.org/licenses/by/4.0/
- Symbol Style: Parametric
- Datasheet URL: http://www.advanced-monolithic.com/pdf/ds1117.pdf
- Package: SOT-223
- Manufacturer Name: AMS
- Part Type: Integrated Circuit
**Pins:**
- GND [pin 1]
- TAB(VOUT) [pin 4]
- VIN [pin 3]
- VOUT [pin 2]
### U3 — [ACS712ELCTR-30A-T](https://www.flux.ai/vasy_skral/acs712elctr-30a-t~or5.md)
- Part Type: Integrated Circuit
- Manufacturer Part Number: ACS712ELCTR-30A-T
- Symbol Style: Parametric
- Datasheet URL: https://www.allegromicro.com/~/media/Files/Datasheets/ACS712-Datasheet.ashx
- Role Details: 30A Hall-effect current sensor in series with load path
- Package: SOIC-8
- Manufacturer Name: Allegro MicroSystems
- Role: Current Sense
- License: https://creativecommons.org/licenses/by/4.0/
**Pins:**
- FILTER [pin 6]
- GND [pin 5]
- IP- [pin 4]
- IP- [pin 3]
- IP+ [pin 1]
- IP+ [pin 2]
- VCC [pin 8]
- VIOUT [pin 7]
### U4 — [ESP32-WROOM-32D](https://www.flux.ai/vasy_skral/esp32-wroom-32d~o5t.md)
- Part Type: Module
- Pin Role: Unused ESP32 exposed GPIO and module flash pins are intentional no-connects for KiCad handoff; verify NC markers in schematic editor if ERC requires explicit per-pin NC symbols.
- Manufacturer Name: Espressif Systems
- Package: Module
- Role: MCU
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Part Number: ESP32-WROOM-32D
- Implementation Details: Used GPIOs: GPIO34=V_BATT_ADC, GPIO35=CURR_ADC, GPIO32=TEMP_ADC, GPIO25=RELAY_CTRL, GPIO21=SDA, GPIO22=SCL, GPIO26=LED_OUT, GPIO1=UART_TX, GPIO3=UART_RX. All other exposed GPIOs intentionally no-connect.
- Datasheet URL: https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32d_esp32-wroom-32u_datasheet_en.pdf
- Role Details: ESP32 controller for battery monitoring, relay control, telemetry, and I2C interface
**Pins:**
- <=GND [pin 39_2]
- 3V3 [pin 2]
- EN [pin 3]
- GND [pin 39_16]
- GND [pin 39_14]
- GND [pin 1]
- GND [pin 39_17]
- GND [pin 15]
- GND [pin 39_12]
- GND [pin 39_11]
- GND [pin 39_5]
- GND [pin 39_3]
- GND [pin 39_13]
- GND [pin 39_21]
- GND [pin 38]
- GND [pin 39_10]
- GND [pin 39_19]
- GND [pin 39_1]
- GND [pin 39_6]
- GND [pin 39_9]
- GND [pin 39_18]
- GND [pin 39_20]
- GND [pin 39_7]
- GND [pin 39_8]
- GND [pin 39_4]
- GND [pin 39_15]
- IO0 [pin 25]
- IO12 [pin 14]
- IO13 [pin 16]
- IO14 [pin 13]
- IO15 [pin 23]
- IO16 [pin 27]
- IO17 [pin 28]
- IO18 [pin 30]
- IO19 [pin 31]
- IO2 [pin 24]
- IO21 [pin 33]
- IO22 [pin 36]
- IO23 [pin 37]
- IO25 [pin 10]
- IO26 [pin 11]
- IO27 [pin 12]
- IO32 [pin 8]
- IO33 [pin 9]
- IO34 [pin 6]
- IO35 [pin 7]
- IO4 [pin 26]
- IO5 [pin 29]
- RXD0 [pin 34]
- SCK/CLK [pin 20]
- SCS/CMD [pin 19]
- SDI/SD1 [pin 22]
- SDO/SD0 [pin 21]
- SENSOR_VN [pin 5]
- SENSOR_VP [pin 4]
- SHD/SD2 [pin 17]
- SWP/SD3 [pin 18]
- TXD0 [pin 35]
*The full schematic, PCB layout, bill of materials, and interactive design are available at [https://www.flux.ai/01dennisbanda/pcb-a-agm-battery-bms~qa](https://www.flux.ai/01dennisbanda/pcb-a-agm-battery-bms~qa).*
---
*Generated from [https://www.flux.ai/01dennisbanda/pcb-a-agm-battery-bms~qa](https://www.flux.ai/01dennisbanda/pcb-a-agm-battery-bms~qa)*