Current configuration does not include the library.. Why should I care?

Sorry, I’m posting so many questions. I’ve been a long time Eagle user, and until now, just used Kicad when my board size got too big for Eagle Light, and to import projects to get a 3d model of the board (for integration into a higher level 3d model).

But, the more I use Kicad, the more I like it! It is much better in many ways than Eagle.

I figure I should understand all the ERC and DRC warnings and errors. I don’t like dismissing warnings unless I understand why they are issued.

I’m getting a lot of warnings about the current configuration not containing libraries. But, everything is found.

Most (maybe all) of the warnings are about footprints or symbols that I’ve used in other projects, or maybe when I follow explicit instructions after downloading models from Digikey or Mouser.

What are the consequences of not having the library “in the current configuration”?

1 Like

It means that the symbol or footprint is only stored locally (in the schematic or board file) and is not linked to an active library, meaning that the “update symbol from library” function will do nothing.

1 Like

As craftyjon already mentioned, starting from KiCad V6 schematic symbols are stored in the schematic, and footprints are stored in the PCB.

For hobby level projects, DRC warnings such as: **Warning: Footprint ‘XXX’ does not match copy in library ‘YYY’ is not very significant. I guess it is mostly important for people who work with database driven libraries, or who have to verify correctness with fully vetted and verified libraries.

Note this is a different warning and is more signifcant!

Not having the library in the configuration just means that the symbol/footprint cannot be updated. This is not very significant, just can point out a possible configuration error.

The warning @paulvdh quoted, on the other hand, means that running the Update from Library command will potentially overwrite changes made locally in the design, which may not be wanted. This warning indicates that either you should update the library version of the symbol/footprint to match your intentions, create a new library symbol/footprint, or acknowledge that the board/schematic has diverged from the library and be very careful when updating other symbols/footprints from the library

Several of the warnings resulted from simply copy/pasting from other projects into the current one. I didn’t bother to get the libraries into the new projects paths, since all seemed to work without bothering to do that.

Nothing will get overwritten if I try updating–the libraries won’t be found.

Mostly they are downloaded CAD files from parts in the design. The instructions for getting into Ki CAD result in a separate library for every part. I haven’t bothered to figure out how to just add parts to an existing library–if it ain’t broke, don’t fix it!

Here’s a typical “how to” for using downloaded Kicad Models:

Thanks!

It’s probably a good time to consider making some Personal Libraries in Kicad, otherwise just imagine what your library system will look like in 3 years: :face_vomiting:

Once you have some Personal Global Libraries your procedure will be to place symbols/footprints from other projects into Personal Global Libraries and then use those symbols/footprints in your projects instead of copy/paste directly into your projects.

Kicad is not shipped with libraries into which you can add parts. You have to create your own libraries: The Personal Global Libraries I mentioned above.
Kicad libraries are read only. To modify a Kicad supplied part, you must first move that part to a Personal Library or place it in a project first.

The real problem with using “modified in a project” Kicad parts or “imported from elsewhere” parts is future use of these parts.
The only way to re-use these parts in a future project is to find the Kicad project in which you originally used them or go back to their source and, in either case, copy/paste again (which results in yet more single item libraries).
How’s your memory, when, in two years and ten projects later, you want to find a part you used previously, for a new project? :slightly_smiling_face:

Populating Personal Libraries is easy.
If you wish to place a Kicad library part into a Personal library you:

  • Highlight the part in the Kicad Library.
  • Right click that part and select “save as”
  • Scroll to and highlight your personal library (change the name if you wish)
  • Click OK and it is done.

If you wish to place a part from elsewhere into a Personal library, you need to:
Extract the content of the download
Open your Symbol or Footprint Editor
Highlight the Personal Library in which you wish to place the part
Right click Import or Paste (whichever is appropriate)
Navigate to the part
OK.

If you wish to move a part from one of your many created single part libraries to a newly created Personal library use the “save as” again.

Note: when you shuffle parts to and fro different libraries, the links to those libraries in the projects will be lost. The parts will stay in the projects but warnings will occur. The only way to remove the warnings is to restore the links to the new libraries. ie. delete symbols and replace with the same symbol but from the new library.

Using your current method of work will eventually result in a big mess. It is better to sooner rather than later change to a more organized library structure. This comments are from my own experience. I started much as you have and very quickly ended in deep excreta with my own libraries :frowning_face:

I wrote FAQ on creating Personal Libraries here..

There is also the official version here and a good article on library manipulation here.

Nice summary. Thank you.

I have some time, so I’m going to undertake the “irksome” task to organize folders for footprints, symbols, and 3d models.

I have about a dozen designs with a few footprints I created in each design. I’m wondering what the best way to go about identifying the symbols and footprints that I need to move/copy to new folders, and editing schematics to relinking symbols to footprints.

The “assign footprints” menu identifies Library:footprint. However, it doesn’t identify the folder that contains the library.

I ended up with the same library name in different folders as I’ve exported projects to do work on when travelling. When I bring them back to my primary workstation, the libraries end up in different folders. Which caused some hassle and confusion.

I can figure it out by using the Preferences->Manage Symbol Libraries and Preferences->Manage Footprint Libraries. Is this the best way?

Also, maybe I’m missing something, but I find it confusing that for footprints, a library is the containing folder. But, for symbols, there’s an actual library container that’s independent of the folder that contains the library.

Why are these different? Or, is there actually something that is a collection of footprints that isn’t the file system folder?

The different organization between symbol and footprint libraries is mostly historical. There are some open issues on gitlab for this, and I think the final intention is to make it symmetrical, so either a “directory” or “file with many items” can be used, and some way to convert between these two. The main bottleneck is the limited time the developers have to work on such issues. And until then, it “works” for now.

Organization of personal libraries is often a mess by hobbyist. When you start, you do not have enough parts so there is not much incentive to organize your libraries. Then it grows unchecked for a few years, until you finally realize you have a lot of symbols and footprints created with your own flesh, blood and tears and can’t find them… :slight_smile:

A method that probably works reasonably well is:

  1. Create a personal library, both for symbols and for footprints. (or multiple libraries if you expect this to be useful).
  2. Make this library global, so it is accessible from all other projects.
  3. Make a list of all your own projects. Put the list in a text file so you can make notes.
  4. One by one, go through your projects, and scan them for symbols and footprints you want to collect in your personal libraries.
  5. If you fond a symbol, load it in the Symbol Editor (Footprint Editor for Footprints) and then use those editors to save the symbol or footprint in your library.
  6. Keep track of which projects you have scanned in the list you made in 3). This allows you to keep track of what you’ve done over days, weeks or months without forgetting to scan projects do scanning projects twice.

As a variant of this method, first makes copies of all your projects, and then you can delete each symbol or footprint from that project when you’ve seen it. This makes it nearly impossible to “forget” symbols or footprints.

1 Like

Thank you for the thoughtful and detailed reply!

2 Likes