Pin Pitch#
Code |
CG.006 |
|---|---|
Validator |
|
Applies to |
|
Requirement level |
CONDITIONAL — when meaningful; omit for 2-terminal passives (N/A for |
Tags |
|
Summary#
pcba:component:pinPitchMm (a float, in millimetres) gives the centre-to-centre
spacing between adjacent contacts. It is required when meaningful and is omitted
for 2-terminal passives.
Description#
pcba:component:pinPitchMm is the nominal contact pitch — the distance between
the centres of adjacent pins — in millimetres. For a regular multi-pin package
(QFN, QFP, SOIC, connector), pitch is a well-defined single value that the
pipeline uses to reason about contact spacing, bridging likelihood, and
fine-pitch defect classes.
Pitch is a conditional field: for a 2-terminal passive (a chip resistor or capacitor) there is no meaningful pitch, and the attribute MUST be omitted rather than filled with a placeholder. If the package has an irregular or multi-pitch arrangement where a single value is not representative, omit it and rely on the per-pin geometry (CG.007) and pin-1 position (CG.008) instead.
Fields#
Attribute |
Type |
Req |
Notes |
|---|---|---|---|
|
|
MUST when meaningful |
Centre-to-centre contact spacing in mm; omit for 2-terminal passives |
Why is it required?#
Contact pitch drives fine-pitch defect classes (bridging, insufficient clearance) and lets the pipeline reason about spacing without measuring geometry.
Making it conditional avoids inventing a meaningless value for 2-terminal passives, which would pollute the ground truth.
Example#
def Xform "U7"
{
float pcba:component:pinPitchMm = 0.5
}
How to comply#
Author
pcba:component:pinPitchMmfor regular multi-pin packages.Omit it entirely for 2-terminal passives or where a single pitch is not representative — do not use a placeholder such as
0.
What the checker proves#
PinPitchChecker requires pinPitchMm to be declared whenever pcba:component:pinCount is
greater than 2 (a pcba:prov:pinPitchMm marker downgrades absence to a declared gap); parts with
two or fewer pins, or no declared pinCount, are skipped. It does not check the value against
the pin geometry, and it cannot recognise an irregular multi-pitch part for which omission is
the right answer — declare the gap there.