Assigning footprint via library browser broken?

When reading the netlist for my project I get many errors of the form:
Error: Component “R1” footprint “_Kicad_GEH_R_0603_HandSoldering” was not found in any libraries in the footprint library table.

I have checked, and the library is in the table, both in the footprint editor and in pcbnew.
The symbol in my library is fully defined, including the 3D view. Here is from EEschema:


And hereis the footprint from the FP editor:

I must be missing something- I have been staring at this for ages. Search on the forum only produced tangential things about defining footprints properly, which I have done.
Using the latest nightly.
Application: kicad
Version: (5.0.0-rc2-dev-632-g76d3b6f04), release build
Libraries:
wxWidgets 3.0.3
libcurl/7.54.1 OpenSSL/1.0.2l zlib/1.2.11 libssh2/1.8.0 nghttp2/1.23.1 librtmp/2.3
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
wxWidgets: 3.0.3 (wchar_t,wx containers,compatible with 2.8)
Boost: 1.60.0
Curl: 7.54.1
Compiler: GCC 7.1.0 with C++ ABI 1011

Build settings:
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=OFF
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_WXPYTHON=ON
KICAD_SCRIPTING_ACTION_MENU=ON
BUILD_GITHUB_PLUGIN=ON
KICAD_USE_OCE=ON
KICAD_SPICE=ON

Win 10 pro 64 bit.

The footprint field is not meant to include a file path. It should have the form of {footprint lib nick name}:{footprint name} (The nick name is defined in the footprint library table, which can be managed using the footprint library manager found in the properties menu of pcb_new)

Maybe reading this might help: How can i assign a footprint to a symbol?

Yes, I read that- I used option 2, and the field was filled in automatically. That included any path. In the latest nightlies there doesn’t seem to be a cvpcb any more (I have never been a fan of it anyway, it is better to create fully defined symbols). How do I get rid of the path? I tried adding it to the paths, but that did not help.
Still stuck!

Could you make a screenshot of the footprint lib manager that shows the row that holds the lib for this footprint?
Or copy the respective line from the fp-lib-table file into a response

Sure:

What does the first line of the footprint file say? (open it in a text editor)

I think it has been simply renamed to “assign footprints” (or something similar) It is still basically the same tool.

This is from the .kicad_mod file:
(module R_0603_HandSoldering (layer F.Cu) (tedit 5A918AE9)
(descr “Resistor SMD 0603, hand soldering”)
(tags “resistor 0603”)
(attr smd)
(fp_text reference REF** (at 0 -1.45) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value R_0603_HandSoldering (at 0 0.254) (layer F.Fab) hide
(effects (font (size 0.2 0.2) (thickness 0.05)))
)
(fp_text user %R (at 0 0) (layer F.Fab)
(effects (font (size 0.4 0.4) (thickness 0.075)))
)
(fp_line (start -0.8 0.4) (end -0.8 -0.4) (layer F.Fab) (width 0.1))
(fp_line (start 0.8 0.4) (end -0.8 0.4) (layer F.Fab) (width 0.1))
(fp_line (start 0.8 -0.4) (end 0.8 0.4) (layer F.Fab) (width 0.1))
(fp_line (start -0.8 -0.4) (end 0.8 -0.4) (layer F.Fab) (width 0.1))
(fp_line (start 0.5 0.68) (end -0.5 0.68) (layer F.SilkS) (width 0.12))
(fp_line (start -0.5 -0.68) (end 0.5 -0.68) (layer F.SilkS) (width 0.12))
(fp_line (start -1.96 -0.7) (end 1.95 -0.7) (layer F.CrtYd) (width 0.05))
(fp_line (start -1.96 -0.7) (end -1.96 0.7) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.95 0.7) (end 1.95 -0.7) (layer F.CrtYd) (width 0.05))
(fp_line (start 1.95 0.7) (end -1.96 0.7) (layer F.CrtYd) (width 0.05))
(pad 1 smd rect (at -1.1 0) (size 1.2 0.9) (layers F.Cu F.Paste F.Mask))
(pad 2 smd rect (at 1.1 0) (size 1.2 0.9) (layers F.Cu F.Paste F.Mask))
(model ${KISYS3DMOD}/Resistors_SMD.3dshapes/R_0603.wrl
(at (xyz 0 0 0))
(scale (xyz 1 1 1))
(rotate (xyz 0 0 0))
)
)

I get the feeling that there is some sort of bug with the assigning a footprint via the lib browser workflow in your kicad version.

Would you care to report this over at the bugtracker?


Now to fix your problem:
Manually enter GEH:R_0603_HandSoldering into the footprint field and try again. This should fix your problem.

It must be something to do with paths or settings. I just completed another board using the exact same components from the same library, and they all passed the check just fine. Both projects using the same V5 nightly now. Maybe if I go through the Preferences carefully I will see it. Weird that the symbols work fine in one project and not in the other.
I have never used “Save project file, Load project file”. I wonder if this would help or make things worse!
Manually changing it would be a pain, I have over 100 of these symbols spread across 6 sheets in a hierarchy.
But thanks for looking at this.

Just to be clear: There is no setting that allows the footprint field to contain the full file path. So if you indeed used the library browser to assign the footprint then something is terribly broken with your kicad version.


Fixing it by hand might be easier than you think. You can use cvpcb (or whatever it is called) to assing a footprint to multiple symbols at once.
As you say you run nightly, you can also use the table editor (or edit symbol fields editor) to change them in a fast manner.
Another option is using a text editor with search/replace.

Yes, I used Notepad++ on “All open documents”, and it was easy. I think I have a bit of a clue. Both projects were moved up from 4.0.7 to V5. It was a helluva process for sure. Took days. I am not sure I selected the same options both times, and both times I spent hours with Notepad++ trying to straighten things out. Apparently I did something different in the second project.
I assume this would not happen if I created all my symbols, footprints, schematics etc. in V5 and then used them.
Thanks again.

That might have been good to add above when i asked how you assigned the footprint.

Yeah, sorry. But even in V4 I have always used fully defined footprints, and that’s the way I remember doing it. It was over a year ago… Didn’t think it was relevant.

No problem. We found a solution for your problem and we know that there is no bug in kicad. (Ok at least we are quite sure that in this instance kicad is not to blame.)

I hope that when V5 gets packaged up as a release (or pre-release) it has a “Migration Plan” that is as well thought out and thoroughly tested as the rest of the software!

Dale

1 Like

I’ve had nearly the same experience as @Gordon_Hardman with older projects.

KiCad V5 simply has to many internal differences from V4 stable.

The “Migration Plan” is likely to be let this forum be the place to ask questions as a way to plot out the means to the next major version.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.