My very first ESP32 based PCB Projekt [Mosfet control Board]

First of all, you don’t need labels for GND. That have had dedicated symbol(s) since copper age. You see some kind of ground symbol used practically in every normal schematic. Power lines also often have specific power symbols, named according their voltage. GND symbols should point downwards. But don’t use GND symbol for every GND pin, try to draw some horizontal wires which connect nearby GND pins together and add a GND symbol for each such wire.

Second, you have used global labels for everything. It’s kind of OK to use global labels even with one page schematic if you use them for naming nets. However, there specific purpose is to be global between all sheets of a multipage schematic. They should be used sparingly, for example when it’s easy to guess where else the same label name would be used in the whole schematic when you see it in one subsheet.

Third, you have use labels for almost the sole means of connecting parts. But a good schematic uses wires to show connections visually. Labels within one sheet (local labels) should be used mostly for naming nets with good functional intuitive names, not for connecting parts/pins. A good rule of thumb good be to use a label for connecting only if drawing a wire would be somehow difficult AND following labels is easy and intuitive.

If you look at your schematic so that you can’t read the label texts you may notice that it’s a total mess, you can’t say at all what is connected to what and what is the function of each part.

There’s no perfect schematic, you can start little by little. Here’s an example (just approximating your design):

Instead of 9 global labels this has three and is certainly easier to understand. Power source is up/left, output right, GND down. Notice how also the label “arrow” directions follow input/output logic.

Some people may prefer not to use wires for GND connections:

What’s this mess?

You can mirror symbols horizontally and vertically to swap up/down and left/right. So, positive voltage up and GND down. A tad easier to read, don’t you think?

Different voltages even have their own power symbols in the KiCad library. And they, as the GND symbol, work also as global labels, so you don’t have to give another name to the net. (This would clash with the style in the regulator screenshot where voltages are just global labels, you should choose one or the other.)

This is of course also totally unnecessary and confusing:


Stick to the universally standard GND symbol.


This is kind of beautiful, especially if you like honey bees and their combs. However, unnecessary repetition is bad for readability. Instead:


You don’t even have to draw more than one wire segment through all the pins, no copying or drawing one by one!

If you see several identically functioning pins labeled like X1, X2, X3…X16 next to each other, you know they are screaming for a bus to drive over them, as somebody already said.

Maybe you have been afraid of wires because there just wouldn’t be room for them in your schematic, they would be even more total mess. But using a bus or two could solve the problem.

Talking about not enough room – maybe you also rotated U3 to save space. Please don’t! Use hierarchical schematic or change to A3 page.

Finally, finding good advice using google may be surprisingly easy. I just tried “good schematics”, and look what I found:

1 Like