← Back to team overview

kicad-developers team mailing list archive

Library Convention

 

Hi developers,

First, I apologize for emailing you here about the library convention, but
I'm under the impression it doesn't generate much interest on the
librarians mailing list. For those who have read the original conversation,
the only thing I added is the rule for extra pads to packages (SMD rule 3).
I specifically wanted to get further advice on two details. Kerusey Kayru
has brought up two points in the discussion on the library mailing list,
but I would like to know more.

1. Is a device that's made by many manufacturers and sold in tubes, tapes
or trays always in the same orientation?
2. For automatic insertion of THT components, where should the origin point
be put? Jean-Paul Louis was saying to me it should be on pad 1, so is it
always the case?

This is what I have now:

> General Rules:
>
> 1. Writing uses C-style naming with the first letter of each word being
capitalized. Ex: "Socket_Strip_Straight_2x06"
> 2. Every acronym has all of its letters capitalized.
> 3. Manufacturer name is capitalized as usual. Ex: NEC, Microchip
> 4. Component name must match its filename
> 5. When dimensions are used in part name, they are in millimeters and
unit is not capitalized. Ex: "Cap_10x13mm_RM5"
> 6. Filename is the same as the part name
>
> Symbols:
>
> 1. A pin length of 4mm is used, except for components without pin numbers
which use 2.5mm.
> 2. Usual symbol is used if there is one
> 3. Black-box components group pins logically, for example by function
set, and ports in counter-clockwise position. Ex:
>
>
> Footprints:
>
> 1. Follows datasheet recommendation unless intentional variation, for
example longer pads for hand soldering
> 2. Pad 1 is placed at the top left corner
> 3. For through-hole components, origin is set on pad 1.
> 4. For surface-mount devices, origin is placed in the middle of the chip.
>
> Names for Surface-Mount Devices (SMD):
>
>
> 1. Specific package feature first, not separated by anything.
> 2. Package name, numbers separated from letters using hyphen Ex: "SOT-89"
> 3. Pin number is expanded with '+' sign for extra pads to package, with
acronym for type of pad. Ex: Exposed pad under QFP: "QFP-48+1EP"
> 4. Variation of package, separated by another hyphen. Ex: "SOT-23-5"
> 5. If it's a manufacturer-specific package, name can be appended,
separated by an underscore.
> 6. Any modification to the original footprint, indicated by appending the
reason. Ex: longer pads are used to facilitate hand soldering of a QFN
component: "QFN-52_HandSoldering"
>
> Names for common devices, such as resistors, capacitors, etc:
>
> 1. Name of part, may be shortened for common components. ex: "Cap",
"Socket_Strip", etc.
> 2. Dimension, which may include at its end the positioning. Ex:
"TO-220_Horiz", "1x02_Angled"
> 3. Pad distance, in the form of an RM rating.
> 4. Any modification to the original footprint, indicated by appending the
reason.
>
> Names for devices that have their own footprint
>
> 1. Name of part.
> 2. Part number. Ex: "Oscillator_SI570"
> 4. Any modification to the original footprint, indicated by appending the
reason.

I think I have most cases covered. If we can settle down on that basis,
then we'll adjust as we go for special cases. Thanks to all of you for the
constructive comments.

Regards,

Carl Poirier

Follow ups