No announcement yet.

Basic/passive components library setup

  • Filter
  • Time
  • Show
Clear All
new posts

  • Basic/passive components library setup

    Hi all,

    Do you have any hints/tips on how to organize basic parts like resistors and capacitors in the library?
    For symbols, it is easy: I have a single resistor symbol that I use for all resistors, also only 1 diode, 1 capacitor, etc. This works fine.

    For footprints it gets messy very quickly:
    • For 'standard' 0603 components, there are three different footprints (IPC Most Material Condiction, Nominal Material Condition, Least Material Condition or levels A, B, C resp.).
    • On top of that, some resistors or capacitors are higher than others, so at the moment I have multiple 3D models for various heights.
    • Also, resistors have a different 3D model than capacitors, so I cannot use a single footprint/3D model combination for both.
    How do you guys deal with this issue. Do you use a single 0603 footprints for 'all' 0603 components, maybe with a 3D model which has the maximum dimensions?
    Do you use separate footprints for each resistor or each capacitor? (which would result in thousands of -almost- identical footprints)
    Or some 'hybrid' solution, e.g. a 'default' footprint for most capacitors, but individual footprints/3D models for capacitors that have slightly larger dimensions?

    My goal is to have as little footprints as possible, so I can maintain them easily, but because of the above mentioned issue the number of footprints in our library is growing fast, even for simple passive components.

  • #2
    A quick overview of how I do libraries.
    First off, I only use schematic and PCB library, no database, no SVN, no integrated...

    95% of the resistors have the same symbol. However, if you have D2PAK package or have/use kelvin connections, you need a different symbol
    For capacitors there are generally two different symbols - polarized and non-polarized.
    Diodes - package, array, zener, Schottky... to many variations!

    For schematic libraries I have:
    Pas - Resistors
    Pas - Capacitors
    Act - Discrete
    Act - MCU
    Act - Power
    Mec - Mounting
    PCB libraries:
    SMD - Actives
    SMD - Passives
    Con - Connectors

    For the footprints I would only go for nominal - see also video if Robert:

    <= 0603 footprint for resistor, capacitor and ferrite bead.
    For bigger footprints the height for capacitors is getting important.


    • #3
      Thanks qdrives , so you use one single 0603 footprint for resistors, capacitors and beads? And of course there will be some minor height differences, but you accept this as it won't matter for 99.99% of the design. It's only important for larger components.
      I think I agree, although I would like to be able to use different 3D models for resistors (black) and capacitors (yellow), so maybe I would need 2 or 3 different models.

      I started with the (great!) video from Robert about footprints, I'll finish it tomorrow. As most of our designs are not ultra-high density and also no hand soldering, it seems to make sense to only use nominal material condition.


      • #4
        Sorry if it was not clear.
        For 0603 there is 1 footprint for resistor, 1 for capacitor and 1 for ferrite bead (color and height), exactly as you would had done.
        You can use PCB library expert ( to create the footprints (including the 3D model).
        For the bigger capacitors the height varies more, so I make multiple footprint. Then again, you choose a bigger package because you want more capacitance / voltage so you kind of automatically get about the biggest (highest) version.


        • #5
          Thanks qdrives for the explanation.


          • #6
            For 0603 there is 1 footprint for resistor, 1 for capacitor and 1 for ferrite bead (color and height), exactly as you would had done.
            - We use the same (with biggest 3D model)

            PS: When a new component is added, footprint and 3d model is checked and if it would be bigger/smaller (than what other components are using), I have two options - e.g. make the universal 3d model bigger or make a special footprint for that specific component


            • #7
              Checking if a new 0603 component is bigger than the current 'generic' 0603 3D model is a good idea (should be standard practice)
              I do think that using different 3D models for capacitors and resistors can be useful, because the 3D view is more accurate. You would immediately notice it in 3D view if you'd forget to place a decoupling capacitor for example, or mix it up with some resistor.