Seeking Feedback on My Novice BLDC Driver PCB Design - Page 1
Forum section: electronics / projects

author: Sonia_Luo
author_rank: Newbie
timestamp: July 27, 2023, 10:26:33 am
content: Hello everyone,I am Sonia, an electronics enthusiast and novice PCB designer. Recently, I have been working on a BLDC (Brushless DC) motor driver circuit and I would greatly appreciate your expertise in reviewing my PCB design and providing any suggestions or feedback to improve it.The purpose of this PCB is to drive a BLDC motor for a hobby robot project. It is designed for 12V battery and the overall current of motor should be above 2 Amps.In the attached files, you'll find the schematics and layout of my PCB design of Kicad project.I kindly ask for your patient guidance and suggestions. If you could point out any obvious mistakes or areas of improvement, it would be incredibly helpful for me. I am open to any constructive criticism that will help me create a better and more reliable BLDC driver.Thank you so much for considering my request and for your willingness to help a novice like me. Your expertise means a lot, and I truly value any input you can provide.Looking forward to your valuable feedback and insights.Best regards,Sonia

author: Sonia_Luo
author_rank: Newbie
timestamp: July 27, 2023, 10:46:34 am
content: Attach the images.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 27, 2023, 03:22:09 pm
content: What is your intention here?Do you want to build something that "works", or is it more of a learning experience?I'm sorry to write it, but I do not see much "good" in this attempt, and the only thing I like about the design is that it's made in KiCad...The amount of projects around BLDC motor drivers have also exploded in the last few years. If you do a little search like for example below, you already find over 500 projects. And many of those projects are much further developed then your first attempt. A lot of those projects also include a uC and (source code for) firmware, and are also build by more people so it's easier to get very specific answers to questions.https://hackaday.io/search?term=bldc

author: Siwastaja
author_rank: Super Contributor
timestamp: July 27, 2023, 05:00:21 pm
content: 1) Use commercial off-the-shelf bootstrap half bridge gate driver ICs instead of rolling your own gate drive,2) Add current sense, I'd recommend low-side i.e. between the lower MOSFET sources and GND. A small shunt resistor + current sense amplifier.Where is the control coming from? I see you have gate drive wired at "test points" but are you planning to add a microcontroller?

author: Sonia_Luo
author_rank: Newbie
timestamp: July 28, 2023, 12:46:08 am
content: Thank you guys for the helpful sharing. But my original purpose is to see whether there are obvious errors of PCB layout based on the schematics. The circuit was intentionally designed like this.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 28, 2023, 12:05:43 pm
content: Some short notes.first, I have strong reservations for the schematic. Without decent FET drivers, the fets will switch too slow, get verh hot quick and are likely to melt. There are good reasons everybody uses FET drivers.You also may have (partial) shoot through in your mosfets with such a simple homebrew design. I'm not even going to spend time analyzing it. Just use proper MOSfet drivers.For the PCB, it is quite bad.TO220 packages are designed to be screwed or clamped to something. This is very difficult with your part placement which puts them all in different and weird orientations. Just soldering them to the PCB makes them prone to damage both due to vibrations and during handling of the PCB. the TO220 packages are quite high and their pins bend quite easily.PWM motor drivers need bulk capacitance to decouple the motor PWM currents from the power supply input. Without some (relatively big) capacitors between your 12V and GND, you just defer this up to the input wiring and power supply.Your Barrel_Jack connector looks weird. Are you sure it's up to the task and deliver enough current?The motor connector J2 is not rated for your motor current (I assume it's a standard 2.54mm header, which are generally for about 1A.There is no decent GND plane. It took me some while to discover that part of it is the 12V power net (The split is under the track between C1 and J2 on the top left corner. In general it's better to have a GND plane over the whole PCB (and without any tracks cutting though it!) and route the 12V net as (thick) wires.I'm having some doubt the wiring of the high current tracks is adequate You also have a single via for tracks in your high current tracks, which is also barely adequate for your motor current.Add some mounting holes. At the least you can just put some bolts though it so the PCB is not lying naked on your desk and wobbling during testing.You've got a strange mix of mostly THT parts with some SMT resistors and capacitors thrown in. Especially TO92 is a bit of a *&^%$#@! to solder with those pins so close together. KiCad has footprints in which those pins are spread out a little such as the "Package_TO_SOT_THT / TO-92L_Handsolder". However, I still prefer something like SOT23 myself.The signals for driving the MOSfets are routed willy nilly all over the PCB. This is a quite bad practice for MOSfet drivers, normally you want short tracks with little induction and capacitance, although in this case the gate signals are so mucky that it is unlikely to make a difference anyway.For the test points, I prefer THT holes. It's easier to stick a probe in without it slipping. You can also use a 2.54mm print header and use dupont wires for longer time measuring and monitoring.Put your (project) name, date and KiCad logo on the PCB. This helps a lot with identifying the PCB when you find it years into the future. The date also helps if you have different revisions of the PCB.Avoid vias in high current tracks if you can. For example there is no need at all for switching layers in the track between Q2 and Q3.On the south side of the PCB the via's and "hop under" between Q8 and Q7 also cuts through most of the connection for the GND plane.Rotate R6. It's a bit silly that both tracks going to it have to reach the "opposite side".There may be more issues, but the above is a good start.Also, would you care to explain why you want to work on this board instead of adapting one of the many other designs that are "out there"? There are also many "open source hardware" designs of KiCad projects.

author: DavidAlfa
author_rank: Super Contributor
timestamp: July 28, 2023, 12:19:37 pm
content: Just get a H-bridge solution, it'll cost similar to all those discretes and provide much better performance.For example, the DRV8313 (Cheap aliexpress module) for low power or the DRV8332 for more beans.

author: Martinn
author_rank: Frequent Contributor
timestamp: July 28, 2023, 06:16:43 pm
content: Quote from: Sonia_Luo on July 28, 2023, 12:46:08 amThe placement is a total mess. The only component placed in a reasonable position is J1.Place components in a logical order - maybe like they are arranged in the schematic.As others have commented, unless this is a PCB layout exercise, just forget this design.