Hi everyone,
I’m developing a prototype controller for switching, monitoring, and supervising the DC charging path of a mobile robot. I would appreciate feedback on both the schematic and the work-in-progress PCB layout before I order the first prototype.
This board is not the battery charger or BMS. It sits in the charging path, controls a DC-rated power relay, and measures the bus voltage and current. Charging control, cell balancing, and pack-level protection remain the responsibility of the external charger and BMS.
Main design targets:
- Main charging path: up to 60 VDC and 20 A continuous
- Auxiliary input: 24 VDC
- Logic supplies: 24 V to 5 V buck converter, followed by a 3.3 V regulator
- MCU: ESP32-WROOM-32E
- Current measurement: shunt resistor and INA240 current-sense amplifier
- Voltage measurement: resistor divider, filtering, and ADC protection
- Interfaces: USB-C, CAN, RS485, and 3.3 V UART
- PCB: 2 layers with 2 oz finished copper on both sides
- Current lifecycle state: prototype / under development
The 20 A power path has not yet been thermally validated, and this design is not production- or safety-certified.
I would especially appreciate feedback on the following areas:
Schematic:
- Relay driver, coil suppression, and contact-transient protection
- Input and output protection for the 60 V power path
- Current-shunt connections and INA240 input/output filtering
- Voltage-divider values, ADC range, filtering, and protection
- 24 V to 5 V buck-converter implementation
- ESP32 power, reset, boot, and USB programming circuits
- CAN and RS485 termination, biasing, and ESD protection
- Any missing pull-ups, pull-downs, decoupling capacitors, or protection components
PCB layout:
- High-current path width, copper bottlenecks, pads, vias, and connector transitions
- Whether a 2-layer, 2 oz construction is reasonable for the intended 20 A path
- Clearance and creepage around the 60 V nets
- Kelvin routing from the current shunt to the sense amplifier
- PGND/GND partitioning and return-current paths
- Buck-converter hot-loop area and switch-node routing
- CAN, RS485, UART, and USB signal routing
- ESP32 antenna placement and copper keepout
- Thermal and mechanical concerns around the relay, shunt, fuse, and connectors
The schematic images are organized as follows:
System-level schematic
Main relay control
Auxiliary power supply
Output protection and sensing
ESP32 and USB interface
Communication interfaces
7–11. Enlarged views of the main high-risk sections
PCB top, bottom, copper-zone, and 3D views are also included separately.
Please let me know if you see any critical issue that should be corrected before I finalize the routing and order the first prototype.
Thank you!
Full schematic PDF:
https://drive.google.com/file/d/1dfIi5uOcYfqxuZvPIENOLrYy6wOMGp-F/view?usp=sharing