Difference Between Eeschema Local Library and Git Library

Hi all,

I literally just joined after installing KiCAD for the first time a few days ago. So far so good, but I’m looking to make sense of the difference between Eeschema libraries installed locally and what I find on Git. As I understand it the Eeschema libraries are not used through Git like the footprints are, but I am guessing they are still the most up-to-date even if it’s not an automated link between Eeschema and the online repository.

With that said, I noticed there are some libraries in the Git repository that do not exist locally at all (e.g. the dc-dc library) while there are local libraries that do not appear in the Git repository (e.g. 74xgxx). These are just two examples, one each way, but there are quite a few more. Can anybody let me know if its safe to use the Git libraries as the latest? I have no existing designs so I’m really just looking for the best baseline for symbols to start from.

I installed the Windows version just a few days ago, so my KiCAD version is 4.0.7 for 64-bit Windows if that makes a difference.

Much thanks in advance and I’m looking forward to getting some designs done with KiCAD!
Lenny

Alice, meet the rabbit hole…

The majority of KiCad symbols in the downloaded version for Windoze is pretty good. At the moment, I don’t see any real need to source to GitHub for additional library symbols.

However, it is very easy to create new library symbols once a person learns how.

ON EDIT: Start your design and post the questions you have as you go along.

Just to clear something up.

For symbols:
The locally installed libs are the same as the libs on github. With a specific kicad release the same release number of the libs is shipped. (symbol and 3d models.) This means if you have kicad 4.0.7 you get the commit that is tagged with 4.0.7

For footprints:
For kicad v4 the default setup is to use the github plugin to access the current HEAD of the master branch and download these footprints. (everytime kicad needs footprint information it downloads a zip archive of the complete repo that holds this one lib.)

This has some major drawbacks. If we change something on github you get new footprints. This might be in the middle of your project. So you could end up with different states of the same footprint on one board.

I would suggest you switch the footprint libs over to be local as well. Either follow the tutorial by @bobc on how to setup local footprint libs by using the library wizard

Or even better use the python footprint downloader script and tell it to download the same version number as your kicad release. (The footprint libs are tagged as well. This script allows you to make use of these release tags.)
The download script does not setup kicad such that it uses these libs. You need to do this by using the library wizard. (similarly to the how to linked above but instead of using github as source you use the local libs as source.)

This will change in kicad v5. It has been decided that v5 will use local footprint libs again.

1 Like

Sprig/Rene,

Thanks for the quick and informative replies. It certainly does sound like a rabbit hole! I started a design, a simple one, and I’ll work through it as questions and unknowns come up.

For the symbols, its good to know they are tagged for releases. For the footprints, I took your advice and I downloaded them locally, then pointed to the local copies. Given your description of what can happen mid design, I think this will keep me sane.

I think using Git to manage library changes is a great way to go for both symbols and footprints, though having the working library be static/local until a change is needed (or fed back into the Git community) by the designer is the best combination.

Thanks again!
Lenny