How do I change path segment?


I have a .kicad_mod file in a .pretty folder (RixFootprints.pretty) in the folder with all the other .pretty folders

but somehow the path to it is wrong

How do I change the KIPRJMOD address?


KIPRJMOD always points to the project currently open. This is necessary to allow you to add project local libraries via the project local library tables.

You can add the lib either via its full file path or you can add a personal environment variable and use that.

For beginners i suggest not to use environment variables at all. I would not even suggest the use of the library manager. Simply use the footprint library wizard and choose “local lib” in the first dialog. It takes care of most usecases.


That fixed that! :grin: Too simple for me to figure it out. :rofl: Now I have my symbols and footprints working right except for the fact that the pin designations (Power in etc.) get lost in translation and have to be reasserted every time I use a symbol. This current schematic takes an Electrical Rules Check in its stride, then I generate a Netlist, import that Netlist into Pcbnew and the connections are all funny. :confounded:

Why would the traces be all over the place?

I am using 4.0.7. Here are the non-standard bits. (2.3 KB)


What footprint did you choose for your voltage regulator? The AP1117 series are surface mount SOT-223-3 packages. You seem to have associated your 3 pin * surface mount regulator symbol with a two pin, through hole footprint.

Edit The AP1117 does seem to be available as a TO220 through hole package BUT this package is a 3 lead footprint not the two lead one you have used.

(*)Addiionally the AP1117 has a tab but I’m not even starting on that rabbit hole …


KiCad is only doing what you told it…

U1 has the wrong footprint
Your symbol Arduino_Pro_Mini need pins numbers assigned, see point 2) in post Seeking Arduino Pro Mini footprint


Yes John - I caught up with that. We now have

but I still don’t have connection to the Pro Mini.


Your symbol Arduino_Pro_Mini need pins numbers assigned, see point 2) in post Seeking Arduino Pro Mini footprint


Does that mean I arbitrarily number all the pins including the ones named VCC and GND and so on?
Do I just pick a starting point and number them as I go round?


You need to number (or name) them to match the footprint you have assigned.


Maybe a picture helps: Can't connect LM7805 on my board (solved)

Or a reminder about what footprints and symbols represent: What is the difference between footprints and symbols?


Pictures are good :slight_smile:

One small caveat, we talk about pin “numbers”, but actually they can also be a string. e.g. “A1” or “GND” etc.

I also notice an error in the Arduino_Pro_Mini_33 footprint, there is a pad numbered “GND1” which should be “2”.


Not in my footprint!
Arduino_Pro_Mini_33.kicad_mod (3.7 KB)


Thanks Rene - That _What’s the difference …emphasized text page is a help.
The Arduino Pro Mini does not have any defined Pin1
so where do I start numbering? Then, when I have defined a start-point do I number clockwise or anticlockwise? How do I number the four extra pins A4-A7?


Look at any DIP package and you will see the numbering convention. What looks like pin numbers on this though are actually what Kicad would consider pin names. The pins 2,3…etc, are probably more akin to D2, D3…etc. You are free to number them anyway you want. What is important is that the names and pins are in the correct place on the footprint.


The pins are in the correct spatial location and the names correspond to the illustration above. What I am trying to discover which number to apply to which pin. As I said, the breakout itself has no pin named D1 to start from. In point of fact, is D1 a legitimate number? I had the impression that pin numbers should be purely numeral. So the questions now are:
(1) At which pin do I start numbering?
(2) In which rotation do I number?
(3) How do I number pins A4-A7 on the Pro Mini?
(4) Do I use alphabetical characters in a pin number?


You have made this first project much harder than a first project should be.

You are asking a lot of questions that a lot of members are spending a lot of their time to answer. And, sometimes it seems you are not willing to spend your time to learn the advice you were already given.

@hermit already told you,

@bobc already told you,

@Rene_Poschl already gave you the starting point to understanding What is the difference between footprints and symbols?

However, I will give one attempt to further clarify. Look at this datasheet:

These two physical parts, are for the most part (to the extent required to convey the information needed in this thread) electrically identical. However, it is easy to note that the Functions and Package Pin numbers are not the same.

On the TQFP package, Function VCC is Package Pin 4.
On the PDIP package, Function VCC is Package Pin 7,

On the TQFP package, Function PD3 is Package Pin 1.
On the PDIP package, Function PC6 is Package Pin 1,

Your Symbol does not have any apparent pins assigned to the different Functions. If you were using the PDIP part, then you would use a Symbol that has PC6 assigned to Package Pin 1.

But, you did not select a device package to use; instead you chose to use a pre-fabbed module containing the device in one of the packages the module creator decided to use as well as whatever pin configuration they wanted.

In general, I would suspect it would be a good practice to label the lower left corner of the module to be Package Pin 1; and continue incrementing by 1 going around counter-clockwise to the upper left. I’ve never used a module, I don’t know the naming convention of the other pins.

The package gets mounted onto the PCB on what is called a Land Pattern; which KiCad has inside what is called the Footprint. Where the connection between the Package Pin and the Land Pattern is made is called a “Pad”, and the “Pad” is assigned the same number as the Package Pin. For simplicity in this post, the Footprint Pad 1 should be where the physical connection is made to Package Pin 1.

After the physical part is defined the Symbol can be created from that. It appears that D10 of the module Pad 1 (if defined as I mention) would then dictate that the upper left pin on the Symbol, would need to be assigned Pin 1.

This means that you are going to have to edit both the Symbol and the Footprint so that the Symbol Function Pin number is mapped to the Function of the device Package Pin that is also assigned the same Footprint Pad. The Footprint is in the physical world, the pad numbers normally can’t be changed on a physical device, but you selected a module and that changes it up.

If something about this post is not clear let me know.


Yes, that footprint is incorrect.

I give up, you ask for advice then ignore it. It’s like you are deliberately trolling.


I am regularly reluctant to meddle with things I do not fully understand. That’s a habit born of years working with nasty bits of machinery which will cheerfully tear your arm off. It’s a good habit to have in that context. :thinking:

This sentence triggered something. I gave up worrying about ‘where to start numbering’ and just started at bottom left and went anticlockwise. (I also removed the programming header pads because they don’t have anything to do with a working circuit.) I then had

I matched this numbering in the symbol
and remembered to assign the new footprint to the modifed symbol. This gave me

Which appears to be a PCB for

At last things seems to be working. My profound gratitude to those who have assisted along this tortuous path. Your patience IS appreciated.


I am sorry bobc. I am certainly not trolling but I don’t remember any version of my kicad_mod having a pad named GND1. You must have an odd copy with a typo. I just don’t know how that came about. It certainly doesn’t exist now.


I looked at the last one you posted… you can look at it yourself. There is GND1! Why are you posting wrong versions?

You really need to take a step back and work through things more carefully. You are too quick to rush ahead and get in a muddle, then wasting people’s time.