header module#

The Pin Header Landpattern Generator#

Pin headers are through-hole or surface-mount connectors with pins arranged in rows. This module provides generators for creating header landpatterns.

The Header landpattern has three entry points:

Lead Types:

2x5 through-hole header:

>>> from jitx import Component, Port
>>> from jitxlib.landpatterns.generators.header import Header
>>> from jitxlib.landpatterns.leads import THLead
>>> from jitx.toleranced import Toleranced as T
>>>
>>> class PinHeader2x5(Component):
...     pins = [Port() for _ in range(10)]
...     def __init__(self):
...         self.landpattern = Header(
...             num_leads=10,
...             num_rows=2,
...             lead=THLead(
...                 length=T(3.0, 0.1),  # Pin length
...                 width=T(0.64, 0.05), # Pin diameter
...             ),
...             pitch=2.54,  # Standard 0.1" pitch
...         )

1x6 SMD header:

>>> from jitxlib.landpatterns.leads import SMDLead
>>>
>>> class SMDHeader1x6(Component):
...     pins = [Port() for _ in range(6)]
...     def __init__(self):
...         self.landpattern = Header(
...             num_leads=6,
...             num_rows=1,
...             lead=SMDLead(
...                 length=T(1.5, 0.1),
...                 width=T(0.5, 0.05),
...             ),
...             pitch=2.0,
...         )
class HeaderBase(num_leads: int, num_rows: int, lead: SMDLead | THLead, pitch: float | tuple[float, float])[source]#

Bases: ColumnMajorOrder, DensityLevelMixin, GridPlannerMixin, GridPadShapeGeneratorMixin, LandpatternGenerator

Pin Header Landpattern Generator Base

Parameters:
class HeaderDecorated(*args, **kwargs)[source]#

Bases: SilkscreenOutline, ExcessCourtyard, HeaderBase

class Header(*args, **kwargs)[source]#

Bases: LinearNumbering, HeaderDecorated