Library Clean Up Services

In a perfect world, designing a PCB should not have to entail any library work. Every component is readily available. The graphics are kept to a similar "look and feel," and the data is not only consistent but it is also complete. Searching for the right component does not require any internet searches, and bills of materials appear upon completing the schematic.

This Utopian library is far from reality. Why?


  • There are over a billion components on the market. The market is not static; components are introduced and obsoleted each day.
  • There are over 40 component types. Different components have different purposes and, thus, have different parameters.
  • Unlike the mechanical engineers who enjoy a universal standard for mechanical 3D known as STEP, the EDA industry does not have a standard for symbols and footprints.
  • Most libraries start as individual efforts. Unfortunately, these individual efforts are not structured for easy integration with other individual libraries.
  • Libraries are like vegetable gardens. They must be maintained by someone who has a vested interest in it.

Philosophies are a good starting point, but where does one start when all one has is an eclectic pile of components?

At Nine Dot Connects, we have helped many customers organize and clean up their libraries. We use a two-fold approach: Establish a good library with the existing components and then set up a workflow so future components will be consistent with existing components.

That is the key word: consistent.

What does a consistent library look like? There are two aspects to consider.

  • Individual Component - The component should be complete with its appropriate formatted parameters, symbolic, graphical representation, and corresponding footprint.
  • Continuity of Components - The same set of parameters represents each component type, and their names and descriptions are consistent. The symbol graphics use the same fonts, colors, and orientations. The footprints use the same mechanical layer sets.

Consider a few examples:

EXAMPLE 1: In a library, there are lists of component names and descriptions, and then there are GOOD component names and descriptions. Consider the following list of components:

On the surface, this looks like a reasonable list of components. However, to the designer, it is woefully incomplete. None of the names or descriptions contain enough information to know the components' characteristics. Granted, there are libraries out there that allow the designer to figure out the component manufacturer's name and part number on the schematic level; however, none of that information finds its way back into the library. The user must also carefully review the footprint to ensure it is appropriate for the selected component.

This is a bit of an exaggerated case, but the user can determine a bit from both the name and description. It is sort-able and uses a trickle-down naming convention that starts with general information and progresses to specific details. (Note - In a database library, a name isn't even needed, just a good description format!)

EXAMPLE 2: Parametric Data. Consistent data in the libraries will lead to a complete Bill of Materials upon completing the schematics.

In this real example, the information for part procurement is also woefully inadequate. Some of it can be found from a supplier; in a few cases, the manufacturer is disclosed. No manufacturer number was provided; the most pertinent information is simply missing. This puts a heavy burden on both the purchaser and the designer.

A good library will create a good Bill of Materials:

EXAMPLE 3: Consistency in discrete components. When one sees different graphical representations for the same component, it's an eyesore, especially when searching through a list of components.

In the example shown, all the resistors are valid; however, a library should standardize on just one graphical representation.

EXAMPLE 4: Footprints. As good parametric data in the symbols will lead to a good bill of material, complete footprints will ensure good placement and documentation.

EXAMPLE 5: In this example, we have a viable footprint. However, its mechanical information is not apparent or complete. What exactly is Mechanical 1? Is there a courtyard? Is there an assembly layer? It is not visible, nor does the mechanical layer give any indications.

A complete footprint has well-defined mechanical layer names. In this example, it is clear that there is a courtyard layer, and the .designator is there for the assembly layer. The only silk marking is for orientation purposes. (In Altium Designer, the silk layer's designator is added when the part is placed in the layout editor.)

In this video, you will see :

  • The general structure of a library management system
  • What it takes to scrub a library
  • The time commitment required to scrub a library
  • The effort to maintain it thereafter

There are libraries, and then there are libraries that provide the designer with everything they need to make a good design.

At Nine Dot Connects, we can help. If you want to 'scrub' the data by checking and filling in blanks, creating symbols or footprints or want us to take what you have and turn it into something extraordinary, we have done it for others, and we can do it for you.

Scrubbing a Library Document
Tell me more