[Solved[ Does Pin Orientation Matter on a Symbol?

I have an ATMega6224PA mounted on a breakout board and I am a total noob to KiCad. Watching videos, I notice when they lay the pins out, the pins have a trace and an little round circle ( o— —o pins). The little circle going toward the outside of the part with the traces going to the ‘symbol body’, then draw the symbol body around the end of the traces makes a nice looking IC. The traces become the legs of the IC, the holes are the connection points.

My issue comes when I lay out the pins on my part, the text for pin description, pin number, input/output overlap each other and make it almost impossible to manage or grab and edit a pin after it has been covered up by other text from other pins. IF I flip the direction 180 degrees of the pins, all the text displayed fits nicely around the outside of the symbol body.

At one point I was unable to even lay out a symbol body because, well, it was late, but there was just too much mess to see where the symbol body goes because flipping the direction of the pins to get all the text to layout nicely changes also changes the location of the connection points. Then again, this is just a schematic part and not the real part. Right?

Here are the pins laid out the way I see on videos…

Which is also where I lose it on defining the symbol body.

Unfortunately, I can only attach one picture.

This is what it looks like with the pins reversed. Which looks pretty but the symbol body is too big… ?



You are mixing up 2 different things.

  1. Schematic symbol.
  2. Footprint.

When Schematic symbols are drawn with the pin orientation of the footprint you get into trouble. Either it won’t fit at all, such as in your case, or you end up with incomprehensible schematics because you have to draw wires all over the place to make the connections.

The number of schematic symbols also does not have to be the same as the number of footprints. A single physical IC has one footprint, but can have multiple schematic symbols, which each all present just a part of the part.

For example a simple opamp such as TL074, has 5 parts of the schematic symbol:

Note there are 4 separate opamps, as these can be used in different parts of a circuit and performing different functions, and there is also a part “E”, for the power connections to the opamp.

For your ATmega breakout board it is similar.
For the schematic symbol, you can start with re-using an existing schematic symbol for an ATmega644. For example:

Note that two different parts are shown. The yellow on white background is the schematic symbol, and the pin numbers will not be in order, but sorted to function.
The red pads on black background is the “Footprint”. That is the copper as it looks like on the PCB.
You may have to make such a footprint yourself, and can make them easily in the footprint editor (also part of KiCad).

The matching between the schematic symbol and footprint is done with the pin numbers. So make sure that the pin numbers in the schematic symbol match with the physical pin numbers in the Footprint.

You are Correct :slight_smile:

I create my symbols to be either intuitive (to me) or if there are a lot if pins, I group them by function. i.e. for the µP I keep ports together etc.

I have even moved some pins on the symbol to make a cleaner schematic.

I find that using the pin orientation (or at least the pin order) of the footprint works better in some cases. One example, using something such as a switching regulator chip, when I am checking the layout done by someone else, it can make my job much easier. I see something at U14 pin 11 on the PCB and now I struggle to find it in the schematic diagram. In the broader sense, your example of a quad op amp; the 4 op amp symbols are more “logical” (to a design engineer) drawn the way you did. But switching regulator ICs are an example of IC types which vary like crazy and I usually like to look at a symbol which agrees with the pin layout. It just seems to make my job easier.

I think BobZ hit the nail on the head. I design circuits, the PCB’s are only a portion of my project. I naturally want the schematic to reflect as much of the “circuit flow” as possible.

Others may find different schematic layouts to be beneficial to how they view a design.

There is a lot of room for designer discretion. For some components, the pin orientation doesn’t matter, those multi-unit ICs are good examples. For others grouping related pins, like a bus, makes sense. I try to do that and preserve the orientation as well, but at times something has to give. For example, I will not hesitate to put pins on the right of a package on the left of the symbol if it matches the signal flow better. Fortunately in the symbol editor it’s easy to change locations if you don’t like the provided ones.

Wow thanks all for the time and input.

Mostly @paulvdh … it is still sinking into my head.

I did some looking around and it turns out the breakout board I have is a clone of another board. called Microduino. They publish an Eagle zip file of their bard The cloned board has A4, A5 swapped with D20,D21 for some reason, but that is fixable.

Link to Eagle zip -> Microduino Wiki

By importing an *.SCH file, I am able to get a nice looking schematic. But there are missing objects which prevents a completed PCB. Anyway, it looks like they did just that, used a Mega644p, unless the editor figured it out.? Should I be able to use Eagle files to make a Footprint?

I would not have bothered to search the net for this, although it’s logical that the PCB is some clone of an existing open source project.

KiCad can use Eagle libraries and convert eagle projects to KiCad, but it takes some time and effort to learn how to do that, and the conversion is not perfect (although often quite usable)

Your footprint is quite easy with pads in a simple pattern. I would just re-use an existing schematic symbol of an ATmega644 and draw the footprint myself. Drawing such a footprint is quite easy. You just place the pads on a suitable grid. (I assume 2.54mm here) and fancy it up with a few silkscreen lines.

The most difficult part (for beginners) is the library management. KiCad’s default libraries are read-only (for good reasons). so you should create a new library, and copy a default schematic symbol to it before you do any editing.

Yeaaaa I got it.
It was pretty simple minus the learning curve.

Thank you!

Until the next thing…

Hello again,
I am now getting some errors when updating the netlist when using this part.
Symbol U1 Pad 38 not found in footprint …
Symbol U1 Pad 28 not found in footprint …
Symbol U1 Pad 39 not found in footprint …
Symbol U1 Pad 18 not found in footprint …
Symbol U1 Pad 27 not found in footprint …

How do I make those go away. I think they are extra VCC, GND pins.

Hi Eddiie,

I doubt there are “extra” pins on the part.

Does your footprint have the same number of pads as your symbol has pins?


ahhh I got it, had to remove the pins from the pins from the Pin Table…