Power boards

battery-power-input — AruviX robot battery power board

Main-line board (not a PMOD module). This is the robot-power foundation named (Phase B): a 2S/3S hobby LiPo comes in, gets fused, reverse-protected, clamped, and metered, then feeds a raw motor rail plus independent 5 V and 3.3 V buck rails. All battery telemetry leaves the board on I2C (Qwiic + pin header).

ERC clean No layout No fab package 48 components

Circuit review & bench-test guide →

Components#

Every placed component, with the reason it is on the board. Extracted directly from the schematic, so this cannot drift from the design.

RefValueWhat it does on this boardPart numberFootprint
C1 22uF 25V X7R Battery-rail bulk reservoir not selected
Murata
C_1210_3225Metric
C2 22uF 25V X7R Battery-rail bulk reservoir not selected
Murata
C_1210_3225Metric
C3 100nF 50V X7R Battery-rail high-frequency decoupling GRM188R71H104KA93D
Murata
C_0603_1608Metric
C4 100nF 16V X7R U1 VS decoupling GRM188R71C104KA01D
Murata
C_0603_1608Metric
C5 10uF 25V X5R U2 input capacitor GRM21BR61E106KA73L
Murata
C_0805_2012Metric
C6 100nF 50V X7R U2 input high-frequency decoupling GRM188R71H104KA93D
Murata
C_0603_1608Metric
C7 22uF 25V X7R U2 output capacitor not selected
Murata
C_1210_3225Metric
C8 22uF 25V X7R U2 output capacitor not selected
Murata
C_1210_3225Metric
C9 100nF 50V X7R Bootstrap capacitor (datasheet section 13) GRM188R71H104KA93D
Murata
C_0603_1608Metric
C10 10uF 25V X5R U3 input capacitor GRM21BR61E106KA73L
Murata
C_0805_2012Metric
C11 100nF 50V X7R U3 input high-frequency decoupling GRM188R71H104KA93D
Murata
C_0603_1608Metric
C12 22uF 25V X7R U3 output capacitor not selected
Murata
C_1210_3225Metric
C13 22uF 25V X7R U3 output capacitor not selected
Murata
C_1210_3225Metric
C14 100nF 50V X7R Bootstrap capacitor (datasheet section 13) GRM188R71H104KA93D
Murata
C_0603_1608Metric
D1 SMBJ16A 16 V standoff unidirectional TVS across the protected rail (pin 1 = cathode = VBAT_P) SMBJ16A
Littelfuse
D_SMB
D2 BZT52H-C10 10 V gate-source clamp for Q1 (cathode to source) BZT52H-C10,115
Nexperia
D_SOD-123F
D3 5V GREEN 5 V rail indicator (AP632xx has no PG pin) APT1608SGC
Kingbright
LED_0603_1608Metric
D4 3V3 GREEN 3.3 V rail indicator (AP632xx has no PG pin) APT1608SGC
Kingbright
LED_0603_1608Metric
F1 5A FAST 5x20 Main battery fuse in 5x20 clip holder (2x Keystone 3517 clips) not selected
Littelfuse + Keystone
Fuseholder_Clip-5x20mm_Keystone_3517_Inline_P23.11x6.76mm_D1.70mm_Horizontal
J1 BATT IN 2S/3S LIPO Battery input: 1 BATT+ (6.4-12.6 V), 2 GND. XT60 pigtail lands here. MKDS 3/2-5,08 (1711022)
Phoenix Contact
TerminalBlock_Phoenix_MKDS-3-2-5.08_1x02_P5.08mm_Horizontal
J2 VBAT OUT (MOTOR RAIL) Metered raw battery out: 1 VBAT_OUT, 2 GND. Live below buck UVLO. MKDS 3/2-5,08 (1711022)
Phoenix Contact
TerminalBlock_Phoenix_MKDS-3-2-5.08_1x02_P5.08mm_Horizontal
J3 5V OUT 5 V / 2 A output: 1 5V_OUT, 2 GND MKDS 1,5/2-5,08 (1715022)
Phoenix Contact
TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal
J4 3V3 OUT 3.3 V / 2 A output: 1 3V3_OUT, 2 GND MKDS 1,5/2-5,08 (1715022)
Phoenix Contact
TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal
J5 QWIIC I2C OUT Qwiic/STEMMA QT telemetry out: 1 GND, 2 3V3, 3 SDA, 4 SCL SM04B-SRSS-TB(LF)(SN)
JST
Datasheet ↗
JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_Horizontal
J6 TELEMETRY HEADER DNP Optional telemetry header: 1 GND, 2 3V3, 3 SDA, 4 SCL, 5 ALERT not selected
generic
PinHeader_1x05_P2.54mm_Vertical
JP1 SDA PULL-UP Cut to remove the SDA pull-up when the host bus already has them SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm
JP2 SCL PULL-UP Cut to remove the SCL pull-up when the host bus already has them SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm
JP3 3S UVLO 9V Bridge for 3S packs: parallels R8 into the divider, trip ON 9.00 V / OFF 8.20 V SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm
JP4 3S UVLO 9V Bridge for 3S packs: parallels R11 into the divider, trip ON 9.00 V / OFF 8.20 V SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm
L1 4.7uH XAL7030 4.7 uH 10.1 A Isat shielded power inductor XAL7030-472MEC
Coilcraft
Datasheet ↗
L_Coilcraft_XAL7030-472
L2 3.3uH XAL7030 3.3 uH 12.3 A Isat shielded power inductor XAL7030-332MEC
Coilcraft
Datasheet ↗
L_Coilcraft_XAL7030-332
Q1 DMP4015SSS-13 Reverse-polarity ideal-diode P-FET: drain to battery, source to load, gate to GND DMP4015SSS-13
Diodes Incorporated
Datasheet ↗
SO-8_3.9x4.9mm_P1.27mm
R1 10mR 1% 3W INA226 current shunt, 2512 3 W metal strip not selected
Vishay
R_2512_6332Metric
R2 100k Q1 gate pull-down: enhances the FET on correct polarity RC0603FR-07100KL
Yageo
Datasheet ↗
R_0603_1608Metric
R3 10k INA226 ALERT open-drain pull-up RC0603FR-0710KL
Yageo
Datasheet ↗
R_0603_1608Metric
R4 4.7k I2C SDA pull-up RC0603FR-074K7L
Yageo
Datasheet ↗
R_0603_1608Metric
R5 4.7k I2C SCL pull-up RC0603FR-074K7L
Yageo
Datasheet ↗
R_0603_1608Metric
R6 46.4k 1% UVLO divider top (R5 in datasheet Fig.22) RC0603FR-0746K4L
Yageo
Datasheet ↗
R_0603_1608Metric
R7 11.3k 1% UVLO divider bottom: 2S trip ON 5.96 V / OFF 5.36 V RC0603FR-0711K3L
Yageo
Datasheet ↗
R_0603_1608Metric
R8 18k 1% 3S UVLO parallel resistor (behind JP3) RC0603FR-0718KL
Yageo
Datasheet ↗
R_0603_1608Metric
R9 46.4k 1% UVLO divider top (R5 in datasheet Fig.22) RC0603FR-0746K4L
Yageo
Datasheet ↗
R_0603_1608Metric
R10 11.3k 1% UVLO divider bottom: 2S trip ON 5.96 V / OFF 5.36 V RC0603FR-0711K3L
Yageo
Datasheet ↗
R_0603_1608Metric
R11 18k 1% 3S UVLO parallel resistor (behind JP4) RC0603FR-0718KL
Yageo
Datasheet ↗
R_0603_1608Metric
R12 1k 5 V power-good LED resistor (~3 mA) RC0603FR-071KL
Yageo
Datasheet ↗
R_0603_1608Metric
R13 470R 3.3 V power-good LED resistor (~2.5 mA) RC0603FR-07470RL
Yageo
Datasheet ↗
R_0603_1608Metric
U1 INA226 36 V high-side current/power monitor, I2C, alert INA226AIDGSR
Texas Instruments
Datasheet ↗
TSSOP-10_3x3mm_P0.5mm
U2 AP63205WU-7 3.8-32 V in, 5 V / 2 A synchronous buck AP63205WU-7
Diodes Incorporated
Datasheet ↗
TSOT-23-6
U3 AP63203WU-7 3.8-32 V in, 3.3 V / 2 A synchronous buck AP63203WU-7
Diodes Incorporated
Datasheet ↗
TSOT-23-6

Signals#

Net labels used in the schematic, which are also the names the HDL top level should use.

3V3_OUT 5V_OUT BATT_P BST_3V3 BST_5V EN3_3S EN5_3S EN_3V3 EN_5V GND I2C_ALERT LED3_A LED5_A Q1_GATE SCL SCL_PU SDA SDA_PU SW_3V3 SW_5V VBAT_FUSED VBAT_OUT VBAT_P

Production status#

Schematic ERC0 violations
PCB layoutnot started
DRCnot run
Fab packagenot exported
Fabricatedno — design stage only

Source: boards/battery-power-input


Main-line board (not a PMOD module). This is the robot-power foundation named in ../actuator-modules/README.md (Phase B): a 2S/3S hobby LiPo comes in, gets fused, reverse-protected, clamped, and metered, then feeds a raw motor rail plus independent 5 V and 3.3 V buck rails. All battery telemetry leaves the board on I2C (Qwiic + pin header).

Status: schematic capture complete — ERC 0 errors / 0 warnings (--severity-all), netlist-membership verified (23 nets / 123 pin memberships exact). PCB layout not started.

Regenerate and verify:

python3 generate_design.py
/Applications/KiCad/KiCad.app/Contents/MacOS/kicad-cli sch erc \
  --severity-all --format report --output reports/erc.rpt battery-power-input.kicad_sch

Requirements#

Architecture (power chain)#

J1 (screw terminal) -> F1 5A 5x20 fuse -> Q1 DMP4015SSS ideal-diode P-FET -> VBAT_P
VBAT_P: D1 SMBJ16A TVS, 2x22uF + 100nF bulk, UVLO dividers
VBAT_P -> R1 10 mOhm shunt (INA226) -> VBAT_OUT
VBAT_OUT -> J2 raw motor rail
VBAT_OUT -> U2 AP63205WU -> 5V_OUT (J3)
VBAT_OUT -> U3 AP63203WU -> 3V3_OUT (J4)

Input connector#

Phoenix MKDS 3/2-5,08 screw terminal (stock KiCad footprint TerminalBlock_Phoenix_MKDS-3-2-5.08). XT60 has no stock footprint; use an XT60 pigtail into the terminal, or add a custom XT60 footprint in a later rev (open decision).

Reverse-polarity ideal diode — documented deviation#

The task spec pinned "source toward battery". That orientation does not block: with the battery reversed, the P-FET body diode (anode = drain, cathode = source) would be forward-biased from the load node into the reversed pack. Implemented the electrically correct orientation instead:

Surge clamp and bulk#

Telemetry — INA226 high-side on the main feed#

Everything downstream of the protection (motor rail and both bucks) flows through the shunt, so the INA226 meters the whole robot.

Bucks — AP63205WU (5 V) and AP63203WU (3.3 V), fed from VBAT_OUT#

Two independent Diodes TSOT-23-6 synchronous bucks, 2 A each, fed from the post-INA226 net so their current is metered. Values from the Diodes AP63200/01/03/05 datasheet DS41326 Rev. 3-2 (fetched 2026-07-14):

Item5 V (U2, AP63205WU-7)3.3 V (U3, AP63203WU-7)Source
f_SW1.1 MHz1.1 MHzDS41326 EC table
L4.7 µH — Coilcraft XAL7030-472MEC (Isat 10.1 A)3.3 µH — XAL7030-332MEC (Isat 12.3 A)Tables 3/2 + Coilcraft Doc 863
CIN10 µF (GRM21BR61E106KA73L) + 100 nFsameTables 3/2, §11
COUT2×22 µF2×22 µFTables 3/2, §12
CBST100 nF BST→SWsame§13
FBtied to VOUT (fixed-output version)same§9
Ripple ΔI_L at 12.6 V in5·(12.6−5)/(12.6·1.1M·4.7µ) = 0.58 A (29 %)3.3·(12.6−3.3)/(12.6·1.1M·3.3µ) = 0.67 A (34 %)Eq. 7

Deviations, with reasons:

Input-UVLO via the EN dividers#

Each buck has its own divider from VBAT_P to EN (EN abs max 35 V, so a direct divider is fine). Design per DS41326 §3 "Enable", Figure 22 and Eq. 1/Eq. 2: EN threshold 1.18 V rising / 1.10 V falling (the task pin said 1.14 V — the datasheet EC table says otherwise; datasheet used), EN pull-up current 1.5 µA disabled → 5.5 µA enabled.

Model (equivalent to Eq. 1/Eq. 2): V_ON = (1.18/(Rtop∥Rbot) − 1.5 µA)·Rtop, V_OFF = (1.10/(Rtop∥Rbot) − 5.5 µA)·Rtop.

PositionRtopRbotTrip ON (rising)Trip OFF (falling)
2S (JP3/JP4 open, default)46.4k11.3k5.96 V5.36 V
3S (JP3/JP4 bridged)46.4k11.3k ∥ 18k = 6.94k9.00 V8.20 V

Check against Eq. 1: R5 = (0.932·5.96 − 5.36)/4.1 µA = 47.5k ≈ 46.4k ✓; Eq. 2: R6 = 1.1·46.4k/(5.36 − 1.1 + 5.5 µA·46.4k) = 11.3k ✓.

Notes:

Fuse#

F1 5×20 fast fuse in clip holder, stock footprint Fuse:Fuseholder_Clip-5x20mm_Keystone_3517_Inline (2× Keystone 3517 clips per position). Fuse MPN TBD: Littelfuse 0217005.MXP (5 A fast) or equivalent. The fuse protects the wiring, not the loads.

Safety boundary — THIS BOARD IS NOT A BMS#

Datasheets used (application values, fetched 2026-07-14)#

Open decisions#

Release checklist#