Opinion: Parts and Library Management - Page 1
Forum section: electronics / general

author: homebrew
author_rank: Frequent Contributor
timestamp: August 28, 2015, 07:36:58 am
content: Dear all,how do you organize your parts in your EDA package?I'm using EAGLE (don't bash) and I've been notoriously unsatisfied with the way I managed libraries.I've tried three options:1) Using Standard Library and adding only special components in a separate libs.2) Same as 1 but creating a separate lib for every non-standard component to ease reusability.3) Create a new lib for the project and copy every component in that lib before using it. Hence only one library used for the entire project.What are you doing?

author: nctnico
author_rank: Super Contributor
timestamp: August 28, 2015, 10:21:39 am
content: Many of the smaller (low cost) CAD packages think a symbol is not a component but that is plain wrong. A component consists of a symbol, footprint, part number, price, supplier, etc, etc.The CAD package I'm using can pull components from a database and uses that to create netlists and bill of materials. AFAIK all of the more expensive CAD packages have such a system.

author: Bassman59
author_rank: Super Contributor
timestamp: August 28, 2015, 09:22:25 pm
content: Quote from: homebrew on August 28, 2015, 07:36:58 am4) Create a "company standard" library or libraries. Put all of the components you use into these libraries after they have been completely vetted. This includes checking to see if you can actually buy them. The components should all include the correct footprints and have some kind of part number which can be used for ordering (either directly or after processing the BOM with a spreadsheet or database or script).Use only your "company" standard libraries for all work. Have only one copy of those libraries in existence at any time. (Keeping the libraries in a revision-control system is a good idea.) Do not use tool- or community-provided libraries directly; if those libraries have useful parts, import only those parts you need into your private libraries after vetting as noted above.

author: nctnico
author_rank: Super Contributor
timestamp: August 29, 2015, 09:37:00 am
content: @Bassman59: yes, yes, yes and yes and more yes!I'm doing exactly what you describe!

author: T3sl4co1l
author_rank: Super Contributor
timestamp: August 29, 2015, 02:34:00 pm
content: The scheme I normally use with Altium libraries is:Library part name: type-size-valuee.g. Resistor 0805 10.0k 1%Connector DB9 <MfgPN>etc.The parts are well drawn (I'm picky!), in consistent sizes and styles, using Altium's traditional piss yellow background for ICs (rectangles with pins coming out, or shapes like op-amps), or light blue for "active" discretes (the circles of transistors, etc.). The data includes a recommended Supplier Link (Supplier/PN, Mfg/PN, and additional parameters if ever needed). If the part is a passive (resistor, etc.), it has a Value parameter which is displayed as a label. Otherwise, the Comment field is used, carrying a truncated MfgPN by default (but this is recommended to be changed to something descriptive when needed, e.g. for named connectors).Footprints I'm a bit more lax on naming convention; if it's general, I use the common name, or something descriptive (e.g., CAPAE63X70, SOIC-8, HDR2X10_SMT_50MIL). If it's part-specific, I use MfgPN (e.g., connectors most often).I also try to locate useful, accurate, good looking 3D models (e.g. from 3D ContentCentral, or there's another I can't remember; I suggest creating a slightly bogus login, since they just want to sell you stuff... or your info), and use those in the footprints.I avoid using multiple footprint options for a given component.The advice given above is good; a common library which grows carefully is probably the best. Only add parts when they are consistent with the above rules (or whatever variation of them you might have for your workplace), and try to avoid removing or renaming parts, except also by careful review. (When I'm working alone, I have a sense of which footprints and parts I've already used, and which ones can still be renamed or modified. This decision gets exponentially more complicated for more users, so tread carefully.)Tim

author: T3sl4co1l
author_rank: Super Contributor
timestamp: August 29, 2015, 02:40:46 pm
content: Regarding library management as a project item:It would probably be worthwhile to review all the parts/footprints that have been created for a particular project. When a project is created, it uses two libraries: the existing database, and a new project-specific library. This library is modified freely. When the project is completed, hold a team meeting, get everyone together and review the parts. Make modifications to them as necessary, then vote on which should be admitted to the main library.An alternative is to have one curator who says what's allowed in and out of the library, and who maintains all the information (symbols, footprints, supplier links, parameters, etc.). Requests go into the curator for new parts (perhaps vetted by the above procedure already), and for feedback about any of the parts (like, say manufacturing/DFM determines an existing footprint needs more pad area, or purchasing has or needs other sources), and the curator sends out alerts to the teams using this database concerning exactly which parts have been updated (a change log).Tim