![Image 1 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/adzcgwdqdvzg1.png?width=947&format=png&auto=webp&s=5a664be15f6064e5a15a0ea61558c41f069a45b8)
![Image 2 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/l5xmnvdqdvzg1.png?width=595&format=png&auto=webp&s=663896489f3c94c6b16377863085281ca4619888)
![Image 3 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/27cw10eqdvzg1.png?width=544&format=png&auto=webp&s=148b915e4e802a4e58b723c853d5391ef19c96fb)
![Image 4 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/9c9qzudqdvzg1.png?width=620&format=png&auto=webp&s=413dd35e19dc1c8b8b4022a4488ad3f75489b0f1)
![Image 5 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/k7j922eqdvzg1.png?width=582&format=png&auto=webp&s=8b7d489acdc0cd323ccb0ad96e350cf1fac8b855)
![Image 6 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/ff65ixdqdvzg1.png?width=533&format=png&auto=webp&s=9a0fd0248a7dff80105a9320437d157084d36309)
![Image 7 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/kb8lf2eqdvzg1.png?width=505&format=png&auto=webp&s=17cf72706256335a63e4a56893f39d09dc64fb67)
![Image 8 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/l7fqaxdqdvzg1.png?width=509&format=png&auto=webp&s=fb9d726c4e2a3a93e24780d53894f768e098e95f)
![Image 9 — [Review Request] STM32 BLDC driver with FOC](https://preview.redd.it/fp9ce0eqdvzg1.png?width=503&format=png&auto=webp&s=f060da247621b7c373945468bd5dd3b11fa529d6)
[Review Request] STM32 BLDC driver with FOC
Hi everyone, I am designing a compact, high-performance 3-phase motor driver for a robotics project. It uses FOC and is designed to handle high current peaks (approx. 40-60A).
Key Specifications:
MCU: STM32G474RE.
Power Stage: 6x N-Channel MOSFETs HYG011N04LS1TA driven by DRV8301DCAR.
Sensing: 2 Low-side shunt resistors for phases current sensing.
Interfaces: CAN-OPEN CiA402,Modbus RTU RS485, and USB-C for configuration.
PCB: 2-layer board 1oz copper thickness.
Specific concerns I’d like feedback on:
Gate Drive Loops: I’ve tried to keep the Gate-Source return paths as short as possible. Do you see any areas where parasitic inductance might cause ringing or EMI issues?
Grounding Strategy: I have implemented a split ground strategy (PGND for power, AGND/GND for logic) connected at a single net tie by 0R 0805 resistor. Is the placement of this connection optimal for this topology?
DC-Link & Decoupling Strategy: I am looking for guidance on sizing and placing the capacitors for the inverter stage:
Bulk Capacitance: For a peak current of 40A-60A and a PWM frequency of 25-30kHz, what is the recommended methodology to calculate the total bulk capacitance? I want to ensure the voltage ripple stays below 5% and the capacitors can handle the RMS ripple current without overheating.
Local Decoupling: At each half-bridge, I’ve placed a mix of 100nF and 1uF MLCCs. Is there a rule of thumb for the ratio between different capacitor values to suppress high-frequency switching spikes effectively? How do you determine the optimal quantity of these local caps based on the PCB's parasitic inductance?
Regen Chopper (Braking Circuit) Implementation: I am implementing a Regen Chopper using a single Low-side MOSFET to switch an external braking resistor, rather than a full Half-bridge.
Any kind of feedback is welcome. Thank you very much!