3
\$\begingroup\$

Most CAD packages use a "symbol" and "footprint" library approach when it comes to designing schematics and PCBs. Some (like recent versions of Altium) have "component" libraries where symbols and footprints can be assigned to a component which is then stored in a library.

Furthermore, a designer can use global libraries or local libraries specific to a project.

All of the above presents a challenge in component management. Therefore, I am interested in what the best practices for library management are like, namely:

  • When is it better to use global vs local libraries?
  • How to deal with footprints of the same type (e.g. QFN64) but with slightly varying dimensions as a result of manufacturer guidelines?
  • How to keep track of 3D models of the components?

I am also interested in hearing about general best practices for library & component management.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ This is a very important topic, but likely to attract criticism as opinion-based. Many designers maintain library-per-project or similar, and import from the public libraries only infrequently. For my designs, it's imperative that upstream library changes don't trigger PCB changes. I want to able to choose, for example, a family of parts and decide on the best footprint for my project's circumstance. Make no mistake: it's a lot of work, but a vital part of a design. It is also of course very related to stock maintenance: where will you get your parts from. \$\endgroup\$
    – jonathanjo
    Commented Sep 28, 2023 at 14:41
  • \$\begingroup\$ @jonathanjo Yes indeed it's bound to attract opinion-based answers but I can't find a better way to phrase it. How do you prevent PCB changes from library changes? \$\endgroup\$
    – Mu3
    Commented Sep 28, 2023 at 14:44
  • \$\begingroup\$ Maintain your own personal library. IF you are working in a team, use github to share libraries. \$\endgroup\$
    – Prashant
    Commented Sep 28, 2023 at 16:16

1 Answer 1

2
\$\begingroup\$

When is it better to use global vs local libraries?

When you are on a team, or if you have someone on your team that is specifically in charge of libaries.

How to deal with footprints of the same type (e.g. QFN64) but with slightly varying dimensions as a result of manufacturer guidelines?

It's really up to you, it also depends on what type of manufacturing you are doing. If you are sending the designs to a high volume manufacturer it's likely that you may need to adjust certain footprints to avoid reflow issues. I think it's best to have a footprint per part on most things. On passives it's probably better to have a footprint for all.

How to keep track of 3D models of the components?

Hopefully the PCBCAD will also track these and goes with part creation, if not then store them in a folder structure on a network drive.

The biggest problems that deals with part\library creation are these:

  • Library consistency
    There needs to be a set of rules that everyone on a team (or one person) follows to make sure the library is consistent in part parameters and mechanical layers as well as other things like part text and how pin 1 notation is represented (this is a short list). The real problem is if one is importing parts from manufactures, as this is quicker but all the parts will be different. So much care will be needed to edit these manufacturer parts/footprints so they share the same look in text and also other mechanical layers such as text on assembly mechanical layers

  • Part Parameters and BOM generation
    Make sure that if parameters such as temp range, votlage, height or other parameters are consistent and checked before adding to library. The manufactures may also require other BOM fields and parameters (such as alternate parts) Make sure these parts are entered correctly into the library

  • Inventory
    Many PCB teams/companies will track inventory of R&D parts or manufacturing parts, sometimes this means internal part numbers and these need to go into the BOM. It is a real pain to change this later so make sure it is set up correctly from the start. Typically these numbers are listed in the BOM and tracked with each part.

The biggest favor you can do for yourself/team is make sure library creation is setup and you have a process in place for creating parts. Feedback from assemblers/PCB manufactures needs to be rolled back into the part creation process to avoid spending time answering many questions from the CM.

\$\endgroup\$
4
  • \$\begingroup\$ There appears to be consensus that the published library is really the starting point for your design. Most designers appear to create a "palette" of parts they like to work with, with good diagram symbol/footprints/3D-model. You might add to this answer something about making silkscreen printing consistent, as library designers have very different ideas about what is suitable. And also appropriate courtyards etc. \$\endgroup\$
    – jonathanjo
    Commented Sep 29, 2023 at 6:58
  • \$\begingroup\$ **The biggest favor you can do for yourself/team is make sure library creation is setup and you have a process in place for creating parts. ** Yes yes yes! \$\endgroup\$
    – jonathanjo
    Commented Sep 29, 2023 at 6:59
  • \$\begingroup\$ Good answer, thanks. Any tips for setting up library creation? Are there software packages that do this or should this be more of a manual process with e.g. checklists that people should follow? \$\endgroup\$
    – Mu3
    Commented Sep 29, 2023 at 12:53
  • \$\begingroup\$ @Mu3 That library creation topic is dependent on which software you use and to what depth they track different items such as footprints, 3d models and parameters as well as BOM generation. \$\endgroup\$
    – Voltage Spike
    Commented Sep 29, 2023 at 15:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.