I designed my first circuit and tried to make it as good as I could. I would be very pleased if you criticize me on the issues that I am lacking and doing wrong.

I made a 2-layer, full bridge brushed DC motor driver that can provide at least 50A current and support voltage up to 20V, and can be driven with at least 10kHz PWM signal. I used STM32F030 as controller. I designed half of the PCB as a developer board and the other half as a driver. I tried to make it as compact as possible. I shared the circuit on OSHWLab, for those who want to examine it in detail, here is the link: Motor Driver


In the H-Bridge circuit, I added a P-channel mosfet to the high side input of the gate drivers in the driving protection section as a precaution against opening the left (Q7-Q5) or right (Q3-Q4) mosfets at the same time and short circuiting. If the low side is high, the high side connection will be closed. (I hope)


Top layer

I have separated the grounds of the power side and the rest of the circuit all along to the ground of the power supply. I don't know if I did good or bad, whether it will be effective or not. I really need your comments on ground separation for this kind of application.

I added VCC text on top layer for easy readability. Since there will be no solder mask where VCC text is located, will not be found in the final product.

Bottom Layer

I removed the solder mask in some places on the top and bottom. I'll fill them with a thick layer of solder later to reduce the resistance.

3D view top layer

3D view bottom layer

Thanks from now

  • 1
    \$\begingroup\$ 50A on your first circuit! That is ambitious. What is the part number of the MOSFETs? \$\endgroup\$
    – Mattman944
    Mar 24, 2023 at 21:47
  • \$\begingroup\$ Shouldn't the 10 ohm R1 and R3 be on the gate drives? \$\endgroup\$
    – PStechPaul
    Mar 24, 2023 at 22:52
  • 1
    \$\begingroup\$ Your use of "open" and "closed" is confusing. When referring to a switch (or a switching element like a MOSFET) it might be better to use "ON" and "OFF". \$\endgroup\$
    – PStechPaul
    Mar 24, 2023 at 23:02
  • 1
    \$\begingroup\$ @PStechPaul Sorry. It will be 6076, not 6067. I wrote it wrong. here is link: AN-6076 \$\endgroup\$
    – Zaido
    Mar 25, 2023 at 0:07
  • 1
    \$\begingroup\$ @Andyaka Yes, now I realize how awful my schematic really is. I'll study on drawing a proper schematic. Thank you for your comment. \$\endgroup\$
    – Zaido
    Mar 25, 2023 at 12:42

1 Answer 1


There is quite a bit you got right - most trace lengths and widths are what they should be, and the layout is quite neat. The power distribution is about as good as it can be on a 2-layer board - well done. I'd give the layout a 95%, and the schematic a 25% grade.

On the PCB, the traces from gate drivers to gates are unnecessarily long. I also don't see any stitching of grounds between front and back plane (if those are both grounds - if not, there's trouble).

If a circuit has discrete mosfets, yet no mosfet symbols are in sight, something is fundamentally wrong. It is a glorified netlist, not a schematic.

On the latter, one could actually follow a signal from e.g. an external input to the CPU, just going along lines, maybe jumping one level in the sheet hierarchy.

Global labels are a fallback and are meant to improve readability, not to be a default way of showing connections. Schematic diagrams are a means of graphically communicating ideas. Sadly, the schematics are barely more readable than a SPICE printout on a line printer from late 60s.

For the schematic, it may be easier to start over, and make it understandable without drawing boxes around trivial stuff. Schematics speak without too many words. They are a graphical language. The words belong in the theory of operation, and even then a good schematic laid out to present basic building blocks in familiar forms goes a long way towards painting a clear mental picture without reading anything just yet. If every trivial thing on a schematic has to be described, then the schematic has failed at its most fundamental job: that of technical communication.

The black boxes are like useless comments in software that explain obvious things for anyone knowing the language, but do nothing to explain the why and what for. Like "analog power filter": anyone who saw a power filter will know what it is. What we won't know is how it figures in the big picture.

Get rid of the boxes, and you're left with disconnected ideas. See the problem now? Make the schematic work without boxes. You'll often find that they are not needed at all. Or, instead of boxes, you can just put headers above sections of the circuit. Just like in a book you know that a chapter heading precedes the text. So on a schematic: a section heading above what it describes does its job perfectly. If the heading text is vertical, it should still usually be above what it describes when the schematic is rotated so that the text is right-side-up.

As is, without doing what amounts to a word search, it's impossible to just glance at the schematic and know where the input power comes from, where it goes, etc. Whereas I have many schematics of systems much more complex than this one, yet the schematic does the job of explaining 90% of it, and the guesses get confirmed when you read the theory of operation section.

Draw all power circuits on one sheet, so that the flow of supply and high currents across the boundary of the PCB (all off-board connections) can be followed. No boxes that interrupt the visual flow.

I have no idea what's the difference between the blue "roadsign" ports and the black symbols with same text on them. Maybe it's some weird "EasyEDA" convention, but that only means they have no idea how to draw schematics. I'd say: don't study their examples too hard. They are bad.

  • \$\begingroup\$ I poured ground plane front and back. I connected the front and back with many vias where the power supply ground connection is. I also connected the ground ends of most components to the ground at the bottom ground with vias. I really tried to shorter the gate traces but 2-layer is restricting. If I make the gate traces wider, will there really be any significant benefit? And I never really thought about drawing a schematic properly. I really just made it so that I could read it myself. Thank you, now I understand the importance of a proper schematic. I'll study more on the schematic. \$\endgroup\$
    – Zaido
    Mar 25, 2023 at 0:44
  • \$\begingroup\$ I got all the symbols and footprints from the LCSC library. That's why the symbols are so weird. Also I will never use EasyEDA again, it's a terrible app. I started using Altium. \$\endgroup\$
    – Zaido
    Mar 25, 2023 at 0:51
  • 1
    \$\begingroup\$ @Zaido Your first job when drawing a schematic that is not trivial is usually adding the symbols that communicate your ideas well to the symbol library. After several years of doing it, you’ll have most of what you need in that library. As a beginner, you have no choice but to start a new library for yourself. As for Altium: I’m glad you can afford it. I’d suggest KiCad if you want something portable and likely to remain in use for a long time. \$\endgroup\$ Mar 25, 2023 at 15:22
  • 1
    \$\begingroup\$ This answer is also relevant: electronics.stackexchange.com/a/657440/10810 \$\endgroup\$ Mar 25, 2023 at 15:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.