Main News Doc People Events & timeline pcb-rnd [pcb-rnd logo]

pcb-rnd - the [pcblib] and [pcblib-param] and [fp_fs] patches

The footprint library shipped with mainline pcb is cluttered with special purpose parts. I believe PCB encourages the user from an early stage to build his own library. Thus the purpose of the library shipped with PCB should be to provide a minimal collection of real essential footprints ...
  • ... for the very beginning of the learning curve;
  • ... and to be the core of the user's own library later.

[pcblib] is a replacement of newlib/ and lib/ and the m4 macros with such an essential core library of static footprints ("file elements") and easier-to-use parametric footprints.

There is an online map of the library and an online interface to the parametric footprint generators.

Design decisions

Parts are sorted only in a few directories: smd, thru-hole, connector and parametric. I believe there are so many orthogonal properties of footprints that there's no obvious hierarchy. Also, pcblib contains much fewer footprints than newlib so it should be still easy to navigate.

Parametric footprints are in a separate directory for now, even tho they would fit under smd, thru-hole or connector. The reason is purely historical and the layout may change in the future.


To the right: Footprint selection dialog on pcblib, with the smd directory open. Note how few smd parts are there. Still, smd/ is the most crowded subdirectory!


As of version 1.0.10, the footprint list/search/load of footprints is a plugin. The original code that handles local file system footprint libraries (e.g. pcblib or newlib) is now a plugin. Alternative plugins can be provided that work from databases or from the web. In extreme situations the file system based footprint plugin can even be disabled.

save/load and compatibility

Not affected: elements are embedded in the PCB.


None, the feature is complete.
            [screenshot of footprint select menu, with preview]