Component 'MC1' pad '30' not found in footprint '.pretty:Teensy3_2'

I remember a similar issue with a 6 pin optoisolator with a 5 pin symbol. An invisible NC pin was the solution

Did you click “Exchange footprint = Change” ? The default sticks at Keep, so apart from a message buried in the log, you might not notice.

KiCad has way too many unnecessary prompts already, but in this case a prompt to tell you there is an unresolved mismatch would be useful.

1 Like

That makes sense as a default, but the naming could be cleaned up
“exchange footprint” is probably better as “Update Footprints from NET”, which makes the action of the NO choice more obvious.

Also implicit and not mentioned clearly, is that new footprints are added, and values are always updated.
Maybe “Update Values from NET” is another needed tickbox, default on, and again, the action is clear both ways.

Given the NETLIST is a significant design operation, the Message area is ok for details, but I"d like a summary too, along the lines of below summary (would result from Update Values = Off and Update Footprint = Off)
(Update count includes additions, and changes)

Reading : " c:\file\path.NET"  FileDate: mm/dd/yy 18:36 
          InPCB   InSCH    Updates   NewTotal
NETS      63      65       2         65
Values    12      13       0         12
Footprint 12      12       0         12
1 Like

To clarify, was the error message tagging the wrong component, or did you just have more than one part that did not update, when you hoped it would ?

That was a separate problem from the original, but it had the same effect in that Pcbnew import of the net would not pick the correct footprint after the footprint was corrected in CvPcb. Pcbnew always went to the old footprint when importing the net.

Terry

Yes, I clicked “Exchange footprint”. That’s what I thought it was supposed to do, but it didn’t.

Terry

I tested this, and it seems to work as expected ? With Exchange ticked, messages says this after I change 2 FPs in PCB & then NET import.

Replacing component “C2:/57783641” footprint “Capacitors_SMD:C_1206” with “Capacitors_SMD:C_0805”
Replacing component “U1:/575E3019” footprint “Power_Integrations:SO-8” with "TO_SOT_Packages_SMD:SOT-23-5

What do your messages say around the footprint change ?

After running cvpcb, you then need to regenerate the netlist. cvpcb updates only the schematic.

I clicked on the regenerate netlist so many times it’s starting to fall off.

Terry

Mine always stated that two pins were missing and the footprint it mentioned was the original one, not the one that was swapped out.

Terry

Well, I have done the sort of operation you describe many times and I’ve never found anything that I would call a bug, but it’s easy to press the wrong buttons.

The only really confusing thing I found was that kiCad caches stuff, so if you change files outside of KiCad they can get out of sync, and it is necessary to close KiCad and restart it.

Can you post an example ? - revised SCH and PCB needing the update, after confirming you can repeat it with a fresh kiCad start.
Also include what your messages say, and others can compare to see if this is a bug that needs attention.

I tried that many times too.

Terry

-------- Original message --------
From: Bobc
Date:07/07/2016 2:26 PM (GMT-06:00)
To: tgneckar@gmail.com
Subject: [KiCad.info Forums] [Layout] Component 'MC1' pad '30' not found in footprint '.pretty:Teensy3_2'
bobc July 7 Well, I have done the sort of operation you describe many times and I've never found anything that I would call a bug, but it's easy to press the wrong buttons.

The only really confusing thing I found was that kiCad caches stuff, so if you change files outside of KiCad they can get out of sync, and it is necessary to close KiCad and restart it.

Visit Topic or reply to this email to respond.

In Reply To

tcoder               

July 7
I clicked on the regenerate netlist so many times it’s starting to fall off. Terry
Visit Topic or reply to this email to respond.

To unsubscribe from these emails, click here.

I’m not sure I’d call it a cache, but I do have a strange effect right now in KiCad -

I have imported an Eagle design, (works fine) and the top line in NewPcb shows the expected directory/name and .kicad_pcb, just fine and as-expected, but save button is greyed out, and explorer cannot see the file.

Make any small change, and save, and voila, file now appears. Strange,

When pcbnew reads in the netlist, where does it get the footprint library? I’m asking because I’m having the same problem again:
Error: Component ‘U7’ pad ‘39’ not found in footprint ‘MyFootprints:DIP-6_W7.62mm’

The footprint it mentions is wrong. I looked at the netlist and there is no “MyFootprints:DIP-6_W7.62mm” for U7. What I did find is an .xml file which has the information that appears to be exactly what pcbnew is reading, not the netlist file. As a test, I renamed the file and then tried to have pcbnew read in the netlist and it said it could not find the file. My question is, how does that file get created? That file is several months old and it is what is causing my problem. I again had the schematic editor save the netlist and nothing I do will create that xml file which is really what pcbnew reads, not the netlist file.

Terry

Pay attention to the options in the “Netlist” dialog: “Footprint Selection by Reference” versus “Footprint Selection by Timestamp”; and “Keep (existing) Footprints” versus “Change Footprints”. Running the Netlist importer in the “Dry Run” mode is a God-send. (Why didn’t other EDA tools think of this decades ago?) You need to wade through a lot of information in the “Messages” panel, but it will tell you where KiCAD would like to get a revised footprint from.

The “Exchange Footprints” dialog can also be very helpful for determining the origin of a placed footprint, and changing it if necessary.

Dale

I’ve tried all of those. As an example, here is an error:
Error: Component ‘U7’ pad ‘33’ not found in footprint 'MyFootprints:DIP-6_W7.62mm

If I look in the netlist file that was just generated, and I search for U7 I get:
(comp (ref U7)
(value RPi)
(footprint MyFootprints:RPi_Zero)
(libsource (lib MyLibrary) (part RPi))
(sheetpath (names /) (tstamps /))
(tstamp 579E7E58))

Where is pcbnew getting it’s information?

Does U7 currently have MyFootprints:DIP-6_W7.62mm, in the PCB side, in which case it suggests the footprint is not being updated.

or, could you possibly be reading an old/incorrect net file ?
If you search files for ‘MyFootprints:DIP-6_W7.62mm’, what does that find ?

From the netlist file, there is nothing else.

The XML file is created by BOM export in eeschema, pcbnew does not read it.

Then why does the error in pcbnew not compare to the netlist file? I will zip up my project to anyone that can fix this problem.

Terry