# 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)*