Newbie: Libraries - KiCad vs. SnapEDA vs. others?

I am just starting to learn KiCad (today) and have zero experience with EDA/PCB software.
I can see that KiCad offers their own symbol & footprint libraries, and that third parties like
SnapEDA also offer these libraries. I tried “googling”, but can’t find the difference.
What is the main difference between the native KiCad libraries and the other third party ones
like SnapEDA? And do people install more than one at the same time, or do you pick ONE set
of libraries?



In general KiCad’s own libraries better guaranteed working in KiCad. Not all of them are bug free but most of them are pretty good. I have usually taken components from these libraries if there happens to exist a proper symbol and/or footprint. If it’s not found, I have downloaded from SnapEDA. They have some useful parts but not all. They generate KiCad library components from some generic format (I guess) and it happens every now and then that they have bugs or at least they need to be adjusted. Copper is mostly in the right place in the footprints, and often that’s the most critical part of it anyway. It’s easier to replace or fix other layers.

I copy SnapEDA parts to my personal libraries and if a KiCad part needs modifying, I copy it, too.

I am using only my own libraries. They contains only symbols of elements I have used so they are much, much smaller then KiCad or any other libraries. If I need a footprint I have never used I copy one from KiCad lib, give it my name and modify it a little.
Each my symbol has assigned footprint I never change (I don’t have any generic symbol needing to assign the footprint to it during PCB design). That way I protect myself against an error of assigning the wrong footprint (for example with different pin numbering than assumed in symbol) during PCB design. Elements in my library are checked once and than I know that when i use them I can’t do mistake. If I want to use new element (even the same microcontroller but in different case) I add new symbol for it.
Editing symbols and footprints are simpler tasks than designing PCB.

I generally start by taking as much from KiCad’s native libraries as it will give me, except for the DIP packages, IDC headers and similar with 2.54mm spacing. I find the normal footprints have very tiny pads which are not so nice for hand soldering, and I find the “longpads” version too wide because I can’t route a “normal” track with between such spins. Therefore I use KiCads footprint generator wizards for these footprints.

I’m also a bit old school, and have a tendency to make all footprints that I need and are not in KiCad’s libraries myself. Those online sites that distribute footprints may be worth looking at. They seem to take their business serious and are ever improving in quality. I’m just not in a habit of using them.

I do find it an important skill to be able to make your own schematic symbols and footprints. There have allways been and ever will be schematic symbols and footprints for which there is no other choice then to make them yourself. KiCad’s editors for schematic symbols and footprints are quite good and easy to use. I consider it an essential skill to be able to use them. These editors were an important part during evaluation before I started using KiCad.

As advise to a beginner, I recommend to just start with KiCad’s native libraries. At some point you will need a schematic symbol or footprint that is not in KiCad (yet). If that part is something “regular”, then you can search the 'net to try to find something suitable. If it’s a “weird” thing, then just open the schematic symbol editor or footprint editor and start designing your own parts.
After you’ve done both, then you have gained the experience to know what suits you best in your situation.

I do not see much usefulness in trying to install many different libraries. It’s likely you end up with multiple copies of the “regular” parts, and still can’t find the “special” part you need.

Hello and welcome @nealix

I share much the same story as the other posters.
I use my personal libraries, both symbol and footprint, exclusively for designs. I’ve never been really happy with any library set, including Kicads’, available anywhere on the www.
Kicad libraries are good in that they come with the installation and consequently are very easy to modify. Anything outside Kicad may or may not: be correct, import correctly, take an hour of surfing to find.

It is my belief that the first things needing to be mastered by newcomers to the program are: personal library management, symbol editing and footprint editing. Until people are proficient with these, drawing schematics and making PCBs is just too frustrating and difficult.
An additional bonus for mastering those three subjects is you no longer need any external libraries… just some data sheets. :slightly_smiling_face:

In commercial companies it is quite common to maintain a database with vetted parts.
Each and every combination of schematic symbol is vetted carefully for any mistake, and only gets into the database after a thorough verification. In the bigger companies, this is often done by other people then the PCB designers. Their sole task is to maintain the libraries, order parts, and things like that.

For a hobby level, The minimum you should verify is if the parts are actually available in the package you want (There are big and moving shortages of IC’s in the last few years), and preferably have all the parts in house before your order the PCB’s.

Some time ago I made a little writeup of how I test footprints by just printing the PCB on paper, and physically checking if everything fits. It’s not a perfect method, but it’s easy to do, and it does catch a bunch of common errors.

Disclaimer: I’m just a hobbyist. I do simple designs for myself and my maker space.

I tend to use KiCad libraries unless I have a specific reason not to. The two main reasons for me not to are:

  1. The part I want to use isn’t in the library.
  2. Due to long standing habit and ease of documentation of changes, I insist on pin 1 shown or indicated on all components (including non-polarized parts like resistors). But I just copy the KiCad symbols to my libraries and turn on the pin numbers. For footprints I modify all pin1 pads to square/rectangular as my in-copper pin-1 indicator where I can. This is generally easy to do on THT footprints, but has become easier for SMT footprints now that the KiCad defaults are rounded rectangle.

When I’m drawing my own symbols and footprints I try to follow KLC as much as I can where it doesn’t conflict with my pin-1 indication requirements. I follow KLC mostly for visual style consistency for line widths and character sizes. Yes, I know KLC for KiCad v6 hasn’t been published yet, so I’m still using KLC for KiCad v5 hoping things don’t change too much.

1 Like

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