No announcement yet.

What is the correct approach to creating library of similar parts?

  • Time
  • Show
Clear All
new posts

  • What is the correct approach to creating library of similar parts?

    When coming to components like LEDs, resistors, capacitors e.t.c there are throngs of manufacturers and suppliers that provide parts that are very similar from PCB design perspective i.e the schematic symbol and footprint. What approach then does one take when designing parts libraries?

    Lets take an example, lets say I have a 0805 SMD resistor. Its schematic symbol will be the same regardless of the actual resistor resistance value. There are throngs of manufacturers that manufacture this type of resistor and the physical dimensions of the part and the pad to solder it onto, are going to be almost identical or be so similar that a single footprint can be used for all the parts regardless of who manufactures it.

    Now from library design perspective, do we create a different schematic symbol for each manufacturer part number which can change based on the value of resistance and then also create a whole lot of foot prints to match the dimensions of every single manufacturer, or take a simpler approach? If so, what is the simpler approach going to be?

    Here are some LEDs that I need to put into my Altium library for the project. They are all in 1206 package. How do I go about creating the library for these?

    1. LED AMBER CLEAR 1206 SMD (IN-S126ATA)
    2. LED GREEN CLEAR 1206 SMD (IN-S126ATG)
    3. LED RED CLEAR 1206 SMD (IN-S126ATR)

    2. LED RED CLEAR 1206 SMD (CMD11-21VRC-TR8)

    1. LED RED CLEAR 1206 SMD (SML-LX1206SIC-TR)

    2. LED GREEN CLEAR 1206 SMD (SM1206GC-IL)

    This question is specific about Altium but it is general enough to be applicable to any PCB CAD program.

  • #2
    We have graphics symbol, component parameters (including links, supplier data, footprints and simulation) and footprints.
    For a lot of components the graphical symbol is the same, like resistors, capacitors (well two types - (non)polarized), inductors, diodes (do think of zener and schottky, etc.) etc.

    Most footprints ar very forgiving - a 0805 resistor footprint can handle just about all 0805 resistors without much problems.
    With capacitors it may get a bit more problematic as the height varies more and that affects the pads size a bit.
    The other question if to what extend you want the perfect footprint

    The big question is now on what parameters you add to a component.
    Let me show you the data I have for a simple 0402 10k resistor.

    Click image for larger version

Name:	Capture resistor parameters.png
Views:	125
Size:	92.7 KB
ID:	19668

    As you can see, a lot of the parameters (and other data) is very specific to the manufacturer and type used.

    First have a library just for resistors (Pas - Resistors). One for capacitors (Pas - Capacitors), I have one for discretes (Act - Discrete), and power/regulators (Act - Power), etc.
    In this case you create a Act - Opto library.
    This will make it much easier to find the components and manage them. For instance with the parameter manager

    To create a new component, copy one that matches the most.
    Adjust the parameters, links, supplier data, footprint, simulation as needed.
    If a lot of these are the same, you can have a new component in 1 minute.

    Tip for resistors (and capacitors if possible) - select a manufacturer and type (family) that meets the specs, price and availability.

    Footprints - I do create a new footprint if it is a better match.

    What is simple? During part creation or management, production, support, DfM, etc.? The way I do it, may be more work beforehand, but saves time when production is needed (BoM, etc.)
    I want to be able to simply place a schematic symbol and know that everything is correct already.


    • #3
      qdrives explained a lot!

      There are number of ways to create libraries.

      The "simple" way: is to have one symbol, one footprint for similar components

      The "complicated" way: Basically, a component is created from couple of elements - for example a specific version of symbol, a specific version of footprint, parameters (such manufacturer, supplier, part number, ...), replacement / alternatives, lifecycle (if that component was checked, out of life, ....) ...

      The "simple" way is terrible for component management. Maybe it is fast to create, but you can spend a lot of time and you can make costly mistakes when creating bill of materials. The "complicated" way is used in bigger companies where number of people are working on the projects. It takes more time, but it prevents mistakes and problems.

      Often, something between is used. You can have individual component for each component type - but people don't go to extremes such specific versions for symbols or footprints, and, when they are creating very similar components to an existing one, they often copy and paste existing symbols or link existing footprints. It doesn't take very long to create a new component similar to an existing one.