← Back to team overview

kicad-developers team mailing list archive

Re: library structure


On Thu, 23 Sep 2010, Dick Hollenbeck wrote:

Inheritance.  hmmm.  Why not just *copy* symbol by symbol and make each
copied symbol into a part-specific component in a new project specific

I agree. More simple to use and less complex to implement, can't be
a bad thing :D

But we are moving in the right direction by really thinking about what
we do.   The heavy library is a wish, I don't think anybody will ever be
able to keep up with the new stuff hitting the market.  It is way too

It simply can't exist, not even the big vendor can do this (well, maybe
a vendor which lives selling libraries). And anyway (excluding stuff
with more than 80 pins) you draw a part in 15 minutes when you need it.

Given the 'thinking time' I need to properly use some component, drawing
the symbol is a small period of time (exercise: design a power supply
and tell me what % of the time you lost drawing the switcher IC:D)

For footprints (packages) that's another thing, but, excluding some
exotic component (like DirectFETs and PowerSOs) these are JEDECed anyway
and can be dynamically generated.

A simpler set of ambitions/goals is to simply get the parts correct that
you intend to use on a specific board.  And I even struggle with that.

I'm curious, why are you struggling?

Is there any value in having a project specific library that is more
tightly bound to the project?  Or is a personal library good enough?  I

For me no... When I need a component that's not already in a library
I simply draw it and put in the right system library. So in the next
board I can use it: I never encountered a component *only* for a board,
and since my assembly facility have to stock it for production it's
better to reuse it for the next projects too, if possible.

actually think it might be worth discussing putting a project specific
library *within* the project, say for example within the schematic.
This fully embraces the use case behavior.  It also centralizes the
place where you might fill in the things needed to make a good BOM.
Each unique part is in there, and then each unique part can be
instantiated from there into the schematic and it's reference designator
changed, nothing more.

Technically there would be no need for 'libraries' since anyway they're
searched in order. You could just build a big database with *all* the
stuff inside (and a good search facility): that's what orcad's CIM does
IIRC. Libraries are for browsing, not searching IMHO.

Lorenzo Marcantonio
Logos Srl

Follow ups