EDA Libraries Are Getting Better

Author: Ben Hest, Senior Applications Engineer, Digi-Key Electronics

What’s the first thing you do when trying out a new EDA tool for designing circuit boards?  If you’re anyone like me, you want to start dropping parts onto a schematic sheet to give it a test drive.  The first stop is the parts library.   It might differ between tools, but there’s a common theme.  Usually, it is a library with a few hundred to a few thousand parts, and few you’d readily want to use.  There’s probably a nice listing of jelly bean BJTs, FETs, and diodes with little more than a placeholder function. 

If you find any parts in the library associated to real part numbers, they are probably along the lines of the Phillips HEF4001B Quad NOR gate or the National Semiconductor LH0063C op amp.  And while there might be lots of in-production part numbers of this type, it’s certainly an indication that the last time people curated this library was prior to Y2K. 

Digi-Key Created Symbols
Figure 1. Digi-Key Created Symbols

Luckily, times have been changing in the EDA landscape and having good libraries is being viewed as more and more important in both the commercial and open source EDA software packages.  KiCad, a GPL-licensed, free and open source EDA tool has made tremendous leaps and bounds in terms of its features and capabilities, as well as with the symbol and footprint libraries that back it.  With the recent release of KiCad 5.0, there’s now thousands of high quality symbols created to a standard set of requirements called the KiCad Library Convention (KLC).  Because of the modern magic of places like GitHub, it’s easier than ever for anyone to contribute and the KiCad project has had plenty of people put hard work into creating, checking, and growing the libraries.

KiCadThe marvel of the modern open source movement along with all the tools has made it possible for anyone to contribute a variety of skills from software development, to bug reporting, to translation, to a project’s website design.  It’s even allowed people like Oliver Walters from Australia and Rene Pöschl from Austria to become niche celebrities for contributing really large amounts of time managing the official KiCad libraries.

Libraries are a tricky venture and there are a couple different thoughts that EDA tool users tend to have on the subject.  Some people would never trust anything created by someone other than themselves, and if they are smart they don’t even trust that.  The other major camp simply wonders why there’s so much duplication of effort in this world, and muses about the utopia where there just be one standard set of libraries that everyone can use.   It turns out libraries are hard and nuanced to a point where making everyone happy is darn near impossible.  The groups of people designing printed circuit boards (PCBs) today are varied in needs and preferences.  This is where Digi-Key comes into this game.

KiCad_DigiKey
Figure 2. Data Added to Each Part

Since it’s hard to please everyone, we’ve decided to cast a net into a niche that has not been well-filled by the official KiCad library.  Digi-Key has created a library of atomic parts, where a schematic symbol corresponds to an exact orderable part number, and consequently, has an assigned footprint.   The Digi-Key KiCad Library is designed for rapid prototyping or for those people who just want to throw down some parts to design and go.  We’ve tried to offer a wide variety of common components that are readily stocked and easily sourced from our vast catalog.  This is not an extensive library with every available part, but we have tried to fill it out with a good assortment of popular and common parts used by engineers, hobbyists, and students around the globe.  Every part in the library has a Digi-Key part number and extra information, like part status, embedded right in the symbols.  For better or worse, it’s even organized with the same taxonomy as our website.  This embedded information makes Bill of Materials (BOM) resolution at the end of the project much less of a hassle as a design is comprised of real orderable part numbers, not abstract series numbers that could come from one of many different manufacturers.

The technicians and engineers working on the library have taken care to design the library for consistency and quality.  We’ve checked and re-checked the library, we’ve collaborated with the open source community on how it should be organized, and we’ve even had the pleasure of having people contribute back to our project hosted on GitHub.  Parts in the library are regularly updated with stocking status, and lifecycle status to make sure people who keep their library up to date can be choosing parts that are actively being stocked at distributors like Digi-Key.

Digi-Key Created Footprints
Figure 3. Digi-Key Created Footprints

Anything open source tends to end up with a discussion around licensing so it’s nice to say that the Digi-Key KiCad Library is licensed under the same CC-BY-SA 4.0 license that governs the official KiCad libraries.  This makes it easy for anyone to use or share the parts in the library as they see fit provided attribution is retained.

We hope to continue expanding and refining the library as time goes on, as new parts become popular, and as we work on things like adding 3D models to make use of KiCad’s awesome raytracing 3D viewer and mechanical .stp file exporting abilities.

Ben Hest, Senior Applications Engineer, Digi-Key Electronics
Ben Hest, Senior Applications Engineer, Digi-Key Electronics

If you have any questions or comments about the Digi-Key KiCad Library or any technical questions drop by theDigiKeyTechForum https://forum.digikey.com, or start up an Issue on the GitHub repo.   The TechForum is a great place to ask any electronics design or application questions.  If you haven’t checked out the new KiCad version 5.0, take a look at the http://kicad-pcb.org website for downloads and more information, or check out our Digi-Key’s YouTube Channel for upcoming KiCad related videos.