2026-02-16 10:56 AM - last edited on 2026-03-02 4:33 AM by KDJEM.1
Hello,
I designed a custom control board based on STM32G431CBT6 and before manufacturing the PCB I would like to make sure there are no fundamental hardware mistakes.
My main concern is not firmware but hardware connections.
I would appreciate if you can review especially:
SWD programming interface connections
Power supply and decoupling capacitors
BOOT0 and NRST configuration
VDDA and VREF+ connections
CAN transceiver interface (TJA1051/3 with VIO = 3.3V)
Anything that may prevent programming or startup
The goal is to verify that the MCU can be programmed and start reliably after assembly.
I am attaching the schematic below.
Thank you very much for your time.
MCU: STM32G431CBT6
Supply: 3.3V regulator
Debugger: ST-Link via SWD
Solved! Go to Solution.
2026-02-16 11:05 AM
Otherwise, looks good.
2026-02-16 11:05 AM
Otherwise, looks good.
2026-02-16 11:17 AM - edited 2026-02-26 3:30 AM
For the relays control I suggest a GND isolation/separation using optocouplers to avoid any high-voltage spikes, and noise generated by relays coil and the relay switching, otherwise you may face unwanted resets of the MCU.
2026-02-16 12:00 PM
Include NRST on the programming connector.
If possible, have a UART for diagnostics
2026-02-16 12:20 PM - edited 2026-02-16 12:26 PM
"BOOT0 and NRST configuration"
You don't have a provision to use BOOT0.
Consider moving your CAN_RX to a different pin so that you can utilize BOOT0.
And as Andrew said, "If possible, have a UART for diagnostics" + reprogramming flash with bootloader.
2026-04-10 6:39 AM
@TDK wrote:
- PC13 shouldn't be used to drive an LED.
Indeed.
But it is OK for these pins to sink current; eg, for an LED:
2026-04-10 7:00 AM
@tuncayarda all of your LED series resistors are 220 ohm:
Shouldn't the 12V ones (D2-3, D5-6) be higher ?