jitxlib.landpatterns.leads package#

class SMDLead(length, width, lead_type)[source]#

Surface Mount Lead Descriptor

Parameters:
length: Toleranced#

Length of the SMT lead in mm

This is typically the “foot length” of a lead. In JEDEC drawings this dimension is typically identified as ‘L’.

width: Toleranced#

Width of the SMT lead in mm

In JEDEC drawings this dimension is typically identified as ‘b’.

lead_type: LeadProtrusion#

Lead Protrusion Type

This type captures typical features for this kind of lead.

compute_constraints(lead_span, density_level)[source]#

Compute the IPC-7351B-based pad constraints for this lead type

Parameters:
  • lead_span (Toleranced) – the lead span for the package

  • density_level (DensityLevel) – the density level for the package

Return type:

IPCRequirements

Returns:

the IPC computation results for this lead type and density level

pad_size(density_level)[source]#

Compute the pad size for this lead type

Parameters:

density_level (DensityLevel) – the density level for the package

Return type:

tuple[float, float]

Returns:

the pad size (width, height) for this lead type and density level

class THLead(length, width)[source]#

Through Hole Lead Descriptor This type of lead is typically used for axial through-hole resistors, radial through-hole capacitors, or DIP style ICs.

Parameters:
length: Toleranced#

Length of the through-hole lead in mm

The length of the lead is measured from the body of the component to the end of the lead.

For components where the lead lengths are different (for example, with electrolytic capacitors), this length describes the minimum common length.

width: Toleranced#

Width of the through-hole lead Usually the diameter of the lead, for rectangular leads this is the diagonal measurement of the lead.

class LeadPlacement(pad_size, center, pitch)[source]#

This class encapsultes the data necessary to place the pads associated with a LeadProfile

Parameters:
pad_size: tuple[float, float]#

Pad Size as a (width, height) tuple where - width is aligned to the X-axis in mm - height is aligned to the Y-axis in mm

center: float#

Center to center distance in the lead-span direction. Value in mm.

pitch: float#

Center to Center distance between adjacent pads on one edge side. Value in mm.

class LeadProfile(span, pitch, type)[source]#

Lead Profile Package Pad Descriptor

This class describes the dimensions for a set of opposing pads on a package. For many IC packages, like dual packages (SOICs, SSOPs, etc) or quad packages (QFNs, QFPs, etc), there are one or more “lead profiles”.

In a dual package, there is typically one lead profile across the width of the dual row package. The lead profile describes:

  1. Lead Span - this distance from the edge of the leads on one side to the edge of the leads on the other side of the component

  2. Pitch - Distance between adjacent leads on the same side of the package.

  3. Lead Type - the type of lead protrusions found on either side of the component.

TODO - Diagram Here

In a quad package, there are potentially two different lead profiles, one for left/right edges of the package and one for the top/bottom edges of the package.

See also

IPC-7351B Figure 3-3

Parameters:
span: Toleranced#

Lead Span - the distance from the edge of the leads on one side to the edge of the leads on the other side of the component, from outside edge of the lead to outside edge of the opposite lead.

pitch: float#

Pitch - the distance between adjacent leads on the same side of the package

type: SMDLead#

The lead type for this profile

compute_placements(density_level)[source]#

Compute the lead placements for this lead profile

Parameters:

density_level (DensityLevel) – the density level for the package

Return type:

LeadPlacement

Returns:

the lead placements for this lead profile

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

Bases: DensityLevelMixin

lead_profile(pitch, span=0, length=0, width=0, protrusion=None, *additional_profiles)[source]#
Return type:

Self

Parameters:

Submodules#