Kicad Libraries
I have created a set of Kicad schematic and footprint libraries. The library archive is available here.
These instructions are for Mac users.
After downloading, copy the archive to your user application support directory at /Users/YourAccountName/Library/Application Support/ and unarchive it (double-clicking in the Finder suffices). It will create a folder in the application support directory called kicad. This is the standard directory for Kicad libraries. Some users might wish to put the libraries into the global library directory, /Library/Application Support/kicad.
The kicad work-flow is comprised of two main tasks: making the schematic and laying out the board. Both a components library and a footprints library are necessary for these two tasks. Kicad has plenty of both. Just in case that is not enough, kicad also has the tools necessary to make new ones. Kicad library location mac. Kicad Library Location Written By BixBuz Wednesday, December 31, 1969 Add Comment Edit. Kicad 5 0 Adding New Footprint Libraries Youtube. Kicad Library Management With Git Submodules Youtube Making New Components And Modules Footprints In Kicad.
Inside that directory are the schematic symbol libraries (in library), the footprint libraries (in modules) and any 3D models I might have (in modules/package3d). The scripting directory has some plug-ins, notably the Python scripts which are used to generate footprints.
The plugins directory has some XSL scripts, most notably the bom2csv.xsl script which is used to generate bills of material from EESchema.
The template directory has a couple of default project templates.
The help directory has the PDF-format manuals for all of the Kicad programs.
Setting up EESchema to recognize schematic libraries
You need to tell EESchema where to find the schematic symbol libraries. From EESchema’s main menu, choose Preferences => Component Libraries. A dialog pops up:
Initially it might be populated by Kicad default libraries. (You may have gotten dire warnings from EESchema when you first launched it.) Go through and select and delete each of those default libraries.
Next, make sure that the libraries you unarchived earlier are on one of the paths listed under “Current search path list.” If not, add the path to the search list by hitting the “Add” button next to “User defined search path” and mousing around to that directory (in my case, it’s /Users/andy/Library/Application Support/kicad/library).
Then, hit the “Add” button next to the list of Component library files and selecting each library. Now all of the libraries should be available to use for schematic entry.
Please note: As you add components to the schematic, they will also be added to a file created automagically in your project directory called projectname-cache.lib. DO NOT delete this file! If you do, all of the symbols you added to the design will be lost. (Unlike pcbnew, the current eeschema file format does not embed the symbols in the sheet schematic file, and instead uses this cache. The Kicad developers indicate that they will revise the schematic file format to eliminate this weirdness and embed the symbol in the schematic file.)
Once the library list is set up, you should be able to browse the libraries from within EESchema and place the symbols onto your sheets.
Setting up the Footprint Libraries for use with pcbnew
You tell pcbnew where to find footprints by setting an environment variable and then using that environment variable in a list called a “Library Table.” This sounds complicated but it’s very simple.
First, we’ll set the environment variables. These are mainly useful for those who use Kicad on different machines which might have different library locations, for example working on a Mac and then on a Windows machine. From the Kicad project manager main menu, choose Preferences => Configure Paths. The following dialog pops up:
For our purposes, ignore the KIGITHUB line; that is useful if one wishes to access the community footprint libraries that are served by Github.
The KISYSMOD and KISYS3DMOD paths must be set to the directories where you find the footprints and the 3D models, respectively. You can see that here I’ve set them to the correct locations. If they are not correct, or do not exist, then double-click on an incorrect path and enter the correct one. Click OK to save.
Next, you need to create or modify a library table. This is the file that maps the footprint library locations to a pointer that is used in pcbnew to find the footprints. Again, this is all so that you can store the libraries anywhere in the file system on any computer, and as long as the entries in the file table are correct, pcbnew can find the footprints.
By default, the footprint library table is called fp-lib-table and it lives in the directory /Users/yourname/Library/Preferences/kicad. It is a text file and can be opened and changed by any editor. My current library table file, which references all of my PCB libraries, is here.
Modifying the library table is easy. From the pcbnew main menu, choose Preferences => Footprint Libraries Manager. (You may also prefer the Wizard.) This opens a dialog like this:
Here you the location and the contents of my library table. As of Kicad stable 4.0.0, the footprint library is actually a directory with the suffix “.pretty,” and inside that directory are the individual footprints within that library.
For each library, you give it a “nickname,” which is a short name for the library. I recommend making the nickname the same as the library directory sans the .pretty suffix. (Don’t confuse yourself.) If the nickname is the same on all of your different machines, pcbnew will never have a problem finding the library.
Next, note the library path includes the ${KISYSMOD}/ prefix. This text string invokes the environment variables for the library location, and it’s the hook which lets you put the library anywhere in the filesystem and pcbnew will be able to find it. The environment variables are shown at the bottom, and you can change them as you need.
For the most part, “Plugin Type” will be Kicad, which is the “.pretty” format. “Legacy” libraries are in an ancient format Kicad used to use and is now deprecated. Those libraries can be read but not modified. (If they are modified, they are automatically upgraded to the new format.) You can also directly use, but not modify, EAGLE- and gEDA-format footprint libraries. (Note that you cannot use EAGLE or gEDA symbol libraries in your schematics.)
Ignore the “options” for now. And if you prefer, you can enter a short description of the libraries, in case the name itself is insufficient.
Once the library table is set up, it can be used when importing a netlist generated by EESchema, as long as the symbols in the schematic have proper “footprint” entries (all of mine do). If you create your own symbols, it is not strictly necessary to embed a footprint link in them; you can use the CvPCB program within EESchema through the Tools => Assign Component Footprint” menu option. But I don’t recommend this design flow. Create symbols with reasonable names that somehow indicate footprint, and then marry the footprint to the symbol by making sure that the symbol’s “Footprint” field has a valid entry.
Generating a Bill of Materials
You will note that each of the symbols library has a custom part number field called PN, and that field is always filled. This field holds a key into a master parts list I created. The parts list is here, as a zipped Apple Numbers spreadsheet, and here as a zipped CSV export of that database.
A python script called bomgen.py is used to parse the BOM exported from EESchema and look up the parts against the CSV parts list. Put the script and PartsDatabase.csv into the same directory as the CSV BOM exported by EESchema. Run the script from the Terminal like such:
$ python bomgen.py DesignBOM.csv PartsDatabase.csv
You will see messages as the BOM is parsed, and will be greeted at the end with a success or failure message. The result is a CSV file called FinalBOM.csv.
3D Models
The KiCad 3D model libraries are the individual .3dshapes
directories.These 3d models are best used in combination with the official footprint libs.Each directory directory contains multiple 3D model files, with the following supported file formats.
WRL
WRL files provide support for material properties, allowing superior 3D rendering within KiCad
STEP
STEP files are required for integration with MCAD software.
Updating via Git
Users who wish to keep 3D model libraries up to date can track the https://github.com/kicad/kicad-packages3d GitHub repository.
Contributing
Users who wish to contribute to the 3D model libraries can submit a pull request at https://github.com/kicad/kicad-packages3d.
Source files for 3D models can be found at https://github.com/kicad/kicad-packages3d-source.
Library Releases
The latest complete set of KiCad 3D model libraries can be downloaded from the following link:
Kicad Library Location Mac
Stable releases of the 3D model libraries can be found at:
Kicad Library Location Machine
Library | Description | Models | Download |
---|---|---|---|
Battery | Battery and battery holder footprints | 54 | 696K |
Button_Switch_SMD | Buttons and switches, surface mount | 202 | 3.1M |
Button_Switch_THT | Buttons and switches, through hole | 126 | 1.6M |
Buzzer_Beeper | Audio signalling devices | 32 | 316K |
Capacitor_SMD | Capacitor, surface mount | 180 | 1.3M |
Capacitor_THT | Capacitor, through hole | 750 | 5.0M |
Capacitor_Tantalum_SMD | Tantalum Capacitor, surface mount | 44 | 199K |
Connector | Generic/unsorted connector footprints | 4 | 32K |
Connector_AMASS | AMASS connector footprints | 4 | 74K |
Connector_BarrelJack | (DC) barrel jack connector footprints | 4 | 35K |
Connector_Card | Card and card holder footprints | 2 | 64K |
Connector_Coaxial | Coaxial and RF connector footprints | 10 | 86K |
Connector_Dsub | DSub connector footprints | 224 | 6.7M |
Connector_FFC-FPC | FFC (Flexible Flat Cable) and FPC (Flexible Printed Circuit) connector footprints | 126 | 2.2M |
Connector_IDC | IDC connector footprints | 56 | 2.0M |
Connector_JST | JST connector footprints www.jst.com | 258 | 4.0M |
Connector_Molex | Molex connector footprints www.molex.com | 178 | 9.3M |
Connector_Phoenix_GMSTB | Phoenix GMSTB series (high voltage MSTB) connector footprints | 176 | 1.6M |
Connector_Phoenix_MC | Phoenix MC connector footprints | 360 | 4.1M |
Connector_Phoenix_MC_HighVoltage | Phoenix high voltage (320V, 5.08mm pitch) MC connector footprints | 132 | 1.8M |
Connector_Phoenix_MSTB | Phoenix MSTB connector footprints | 360 | 3.1M |
Connector_Pin | Single (solder) pin conectors | 22 | 37K |
Connector_PinHeader_1.00mm | Pin headers, 1.0mm pitch | 556 | 19M |
Connector_PinHeader_1.27mm | Pin headers, 1.27mm pitch | 556 | 21M |
Connector_PinHeader_2.00mm | Pin headers, 2.0mm pitch | 556 | 20M |
Connector_PinHeader_2.54mm | Pin headers, 2.54mm pitch | 556 | 19M |
Connector_PinSocket_1.00mm | Pin sockets, 1.00mm pitch | 312 | 15M |
Connector_PinSocket_1.27mm | Pin sockets, 1.27mm pitch | 492 | 30M |
Connector_PinSocket_2.00mm | Pin sockets, 2.0mm pitch | 556 | 29M |
Connector_PinSocket_2.54mm | Pin sockets, 2.54mm pitch | 556 | 29M |
Connector_RJ | Registered Jack (RJ) connector footprints (e.g. RJ11, RJ45, ...) | 2 | 41K |
Connector_SATA_SAS | SATA/SAS connector footprints | 2 | 118K |
Connector_Samtec | Samtec connector footprints | 2 | 886K |
Connector_Stocko | Stocko connector footprints | 38 | 1.2M |
Connector_USB | USB connector footprints | 4 | 394K |
Converter_ACDC | AC/DC converter footprints | 26 | 154K |
Converter_DCDC | DC/DC converter footprints | 102 | 588K |
Converters_DCDC_ACDC | 92 | 372K | |
Crystal | Crystal footprints | 198 | 636K |
Diode_SMD | Diode footprints, surface mount | 58 | 181K |
Diode_THT | Diode footprints, through hole | 178 | 515K |
Display | Display modules | 64 | 1.5M |
Display_7Segment | Seven segment Display | 88 | 1.7M |
Ferrite_THT | Ferrite bead, through hole | 2 | 67K |
Filter | Filter footprints | 16 | 62K |
Fuse | Fuse and fuse holder footprints | 54 | 466K |
Fuse_Holders_and_Fuses | 2 | 54K | |
Heatsink | Heatsinks and thermal products | 6 | 84K |
Inductor_SMD | Inductor footprints, surface mount | 82 | 325K |
Inductor_THT | Inductor footprints, through hole | 286 | 12M |
LED_SMD | Light emitting diodes (LED), surface mount | 54 | 184K |
LED_THT | Light emitting diodes (LED), through hole | 154 | 324K |
Module | Footprints for SoM (System on Module) | 2 | 21K |
MountingHole | Mechanical fasteners | 2 | 23K |
Mounting_Wuerth | Mechanical fasteners by wuerth electronics | 434 | 907K |
OptoDevice | Optical devices (light sensors, opto isolators/interrupters, laser diodes, fiber optical components, lightpipes, lenses ...) | 80 | 509K |
Oscillator | Footprints for oscillator devices | 14 | 147K |
Package_BGA | Ball Grid Array (BGA) | 156 | 1.8M |
Package_DFN_QFN | Surface mount IC packages, DFN / LGA / QFN | 440 | 3.7M |
Package_DIP | Through hole IC packages, DIP | 404 | 6.1M |
Package_DirectFET | DirectFET packages from International Rectifier | 26 | 129K |
Package_LGA | Land Grid Array (LGA) | 38 | 205K |
Package_QFP | Quad Flat Package (QFP) | 136 | 15M |
Package_SIP | Single Inline Package(SIP) | 22 | 311K |
Package_SO | Small Outline Integrated Circuits (SOIC, SSOP, xSOP, xSO) | 368 | 6.5M |
Package_SOIC | 24 | 550K | |
Package_SON | Small Outline No-Lead (SON) | 38 | 267K |
Package_SSOP | 112 | 2.4M | |
Package_TO_SOT_SMD | Surface mount transistor packages | 136 | 809K |
Package_TO_SOT_THT | Through hole transistor packages | 194 | 727K |
Potentiometer_SMD | Potentiometer footprints, surface mount (SMD) | 4 | 60K |
Potentiometer_THT | Potentiometer footprints, through hole (THT) | 46 | 221K |
RF_Antenna | Radio-frequency / wireless antenna footprints | 4 | 12K |
RF_Converter | Specialized footprints for RF signal converters (Like Attenuators, Baluns, Mixers, Couplers, etc.) | 4 | 18K |
RF_Module | Radio-frequency / wireless modules | 20 | 1.2M |
Relay_SMD | Surface mount relay packages | 22 | 199K |
Relay_THT | Through hole relay packages | 96 | 442K |
Resistor_SMD | Resistor footprints, surface mount (SMD) | 80 | 583K |
Resistor_THT | Resistor footprints, through hole (THT) | 210 | 626K |
Sensor | Specialized footprints for multi-function sensors | 2 | 54K |
Sensor_Audio | Specialized footprints for audio sensors | 4 | 33K |
Sensor_Current | Specialized footprints for current sensors | 8 | 283K |
Sensor_Distance | Specialized footprints for distance sensors | 2 | 17K |
Sensors | 2 | 20K | |
TerminalBlock_Altech | Altech terminal block footprints | 46 | 2.5M |
TerminalBlock_Phoenix | Phoenix Contact terminal blocks | 172 | 7.7M |
TestPoint | Test points, measurement points, probe connection points | 44 | 331K |
Transformer_SMD | Surface mount transformers | 2 | 97K |
Transformer_THT | Through hole transformers | 58 | 245K |
Valve | Valve | 2 | 32K |
Varistor | Varistor | 200 | 2.5M |
Kicad Library Location Macon
Last updated on 13 May 2021