AirWires not showing in pcbnew

Hi,
I am new to kicad and am importing net lists into pcbnew. However, I noticed that for a lot of my components, air wires were missing.

I get an error message saying, “Pin IC1 pad A9 not found in library SHEILD ARDUINO NANO” .

I get many similar messages as well. Do you know why this is? I am on MacOS and my kicad version is 10.16.

Thank you for any help you can offer on this!

Welcome to the community :slight_smile:

Not enough info to be specific, but I would look first at the schematic. Have you performed a rules check?
Have you looked at the schematic where a message was generated for and seen anything “out of place”?
You will also have to look at the library “Shield Arduino Nano”. Does it actually exist? When you placed it on the schematic does is “look” like you expect?

I am using a different version of Kicad but I’ve not seen a library with that name. Is it possible the library is not correctly installed?

BTW generally the “air wires” are called “rats nest” in the forum. Doesn’t matter much but a reply might use a different name.

1 Like

10.16? Maybe you mean 5.1.10-16?

BTW you don’t need to go through export then import of netlist between eeschema and pcbnew. Use Update PCB from the dropdown or F8. Even for the initial import. This in fact is the correct and faster way.

I would not expect the rats nest to be complete until you have footprints assigned to every symbol. The update will give you the errors you need to fix.

As others already wrote, the version number you posted is incomprehensible, and for several years already it’s not needed to first generate a netlist and than load it into Pcbnew. The recommended way is Eeschema / Tools / Update PCB from Schematic [F8].

I am guessing that you have a mismatch in pin numbers between the schematic symbol and the footprint. The arduino nano is in “DIP” format, and the Footprint (for on the PCB) may have pin numbers ranging from 1 to 40 (if that is the max of that thing) while the schematic apparently uses the arduino names such as “A9”.

Pin numbers in the schematic have to match with the pin numbers in the PCB Footprint.

If you update the PCB from the schematic with [F8] then you get the dialog from the screenshot below. If you save the text it generates into a test (report) file, and post that text here, then it’s much easier to diagnose what is actually going wrong.

image

1 Like

When I run the electricity rules checker it gives me a bunch of errors because apparently I haven’t assigned the correct pin types yet.
The Arduino nano footprint looks good. I also noticed that some of the components with missing air wires don’t give me an error message, do you know why? Also I do see some air wires connected to the arduino nano, about half of the ones that should be connected.

Here is the screenshot of my netlist report file.

I have forced a KiCad project to give similar errors as in your “Update PCB from Schematic Dialog”:

Notice that there are 8 errors in my example, from “pad 1” through “pad 8” (The’re not printed in order).

All the errors are for “J1”. This is an 8-pin connector in the schematic:

image

The first error complains about “pad 6” not found.
This is because KiCad tries to match the pin number “6” with pad number “6” in the footprint, but the footprint does not have a pad number “6” because I assigned a BGA package to the connector.

The full name of the assigned BGA package is:

Package_BGA:BGA-9_1.6x1.6mm_Layout3x3_P0.5mm

In the Library Browser, you can see the pad numbers of this package. All pads “numbers” have two characters. A letter (“a”, “b”, or “c” and a digit “1”, “2” or “3”)

So there is no match for the single digit pin numbers in the schematic with the two character pad numbers of the Footprint, and therefore KiCad prints them as errors and you have to fix this first.

In KiCad any schematic symbol can be linked with any PCB Footprint, and when they do not match, then you get errors like these. “Pin numbers” are not just numbers in KiCad, they can be any alphanumeric string (at least upto 4 characters in length).

To fix this, you have to either change the schematic symbol (In the schematic symbol editor), or the PCB Footprint (In the Footprint editor) to make the pin numbers match with the pad numbers. To do this properly, you also have to learn a bit of library management.

The FAQ part of this forum has a lot of good articles about different parts of KiCad.

Here is a beginners tutorial:

And here are notes on library management:

I found this out myself and did what you suggested, this fixed about half of the missing air wires but there are still a good amount of them missing.
Thanks for the beginners tutorial by the way.

It also looks like there is a problem with the schematic symbol for U6.

If I look for example at a resistor in the Symbol Editor, then the Pin Name is a tilde, but the pin number is just a regular number. The tilde has a sort of meaning that the pin name does not have a sensible meaning (for a resistor).

I do not know what these others are:

and can not help without more info from your side, but the way to solve it is probably similar to the already solved issues.

I also noticed that a lot of parts that are connected in the schematic are not shown to be connected in pcbnew and they have no error message.

There is not any advise anyone can give for posts like that.
Read this:
http://www.catb.org/~esr/faqs/smart-questions.html
Then try again.

1 Like

Thanks for the tip!

I noticed that a lot of the components in my layout have no air wires connected to them and give no error message. Other forum archives mentioned that it might be a rendering issue. I experimented with changing the orientation and location of some of the parts and discovered that, specifically when I rotate an object, it shows that all the pins are connected to the location that the object used to be in. But, after I place the object in a new location, the extra air wires disappear. This also happens for pins that are not connected in the schematic. Has anyone else encountered stuff like this and do you know what it means? And does anyone have strategies that might help with the missing air wires?

Thanks!

Screenshot of missing air wires

I’ll just mention a useful feature of KiCad which you may find useful for debugging this and in future, the Highlight Net tool, second from the top on the RHS vertical icon menu in both eeschema and pcbnew. This will show all connected wires or traces respectively when clicked on a wire or copper area. If both windows are open then highlighting a net in the schematic will do the same on the board, and vice versa.

If the pads that are should be connected are indeed highlighted but there is no rats nest line, that would suggest a rendering issue.

The usual name for those “airwires” is “ratsnest”.

It’s not just a rendering issue. Pad 2 of the resistor is connected to the net “3.3V”, while pad 1 of the resistor has no net name on it.

A common mistake that beginners make is to fiddle with the grid in Eeschema. Eeschema depends on perfect alignment between the pins and the start points for wires, and this depends on a coarse grid such as the “50” that is the default. If your pins and wires show little circles and squares as in Newbie Snap to Grid Zoom then they are not connected.

What is the output of Eeschema / Inspect / Electrical Rules Checker?

Also, the easiest way to diagnose problems is if you zip the whole project and upload it here.

Hi,
I zipped y project in the kicad home page and tried uploading it here but I always get a message saying “Sorry, new users cannot upload attachments”
But however I can still upload screenshots. Any ideas?
]

."

Never mind I was able to save it to drive here is the link.
https://drive.google.com/drive/folders/1lvQ-cARC-DEEiq-KkR_49eEIF5KFaAJU?usp=sharing

I’m looking at your project now.
Does the schematic look reasonable on your side?
Here it looks like:

This looks very alarming at first sight, but usually it is fixable. It just indicates there is a problem with the library setup.

When I look at: Eeschema / Edit Symbol Library References, then I see references to a lot of libraries with very weird names:

For U6 I see a reference to a schematic Symbol Name with MICROSDSLOT-i_dunno and for U5 there is a schematic Library Name with “idunno”.

This strongly suggests that you do not know (yet) what you’re doing, and messed up quite some things by clicking on a lot of buttons.

I had a look at the arduino thing (ABX00028-ABX00028) in your “Data-recorder-rescue” library, and it is as I suspected and already told you twice.

The Schematic symbols uses “arduino names” for the pin numbers, such as “A4”

And the Footprint on the PCB uses just numbers 1 through 30 (without letters) for the pin numbers.

And where does the idea come from to give a pin a pin number A4, and a pin name A0 at the same time ???

To me it looks like you’d better start over from scratch with a beginner tutorial, and then make sure you understand each step before you execute it.
Unfortunately the official “Getting started Guide for KiCad” documentation is a bit … neglected.

The FAQ part of this forum though has some nice tutorials.
Here is a beginners tutorial:

And this one (again):

Thanks a lot for the helpful advice!
I was wondering if airwires are that necessary to designing a PCB. Other sources state that they only provide the shortest possible connection not actual connections. I do see about 60 to 70 percent of the air wires and was wondering if that is enough to skip getting the last of the air wires?
Thanks for your help!

For years I have understood ratsnest as the set of all the airwires.
When we had to invent a word in Spanish for airwire we chose the same word as airline thinking no one would get misled.

Great idea for a Project Name! Here is one of mine:

It is now broken as well…