Skip to content

jsl/landpatterns/two-pin/SMT

Package name: jsl/landpatterns/two-pin/SMT

Summary

Data Types

SMT-Resistor

Constructors

Function Description
SMT-Resistor Constructor for defstruct SMT-Resistor

Functions

Function Description
get-resistor-pkg Create a Resistor SMT Chip Package of a given size

SMT-Chip-Def

SMT Chip Definition Type

Constructors

Function Description
SMT-Chip-Def Constructor for defstruct SMT-Chip-Def

Functions

Function Description
get-chip-def Get the SMT Chip definition from a case size
SMT-Chip Constructor

SMT-Chip

SMT 2-pin Chip Package Type

Methods

Function Description
name Non IPC name - Use derived types for proper naming

Functions

Function Description
get-chip-pkg Create a SMT-Chip Package given a chip size string.
SMT-Chip Constructor

SMT-Capacitor

Constructors

Function Description
SMT-Capacitor Constructor for defstruct SMT-Capacitor

Functions

Function Description
get-capacitor-pkg Create a Capacitor SMT Chip Package of a given size

General Definitions

Function Description
extract-SMT-chips Extract the SMT Dimension Info from the SMT Table
is-known-chip-pkg Check if the passed string is a known chip size - like "0603", "0805", etc
Variable Description
chips SMT Chip Table

Definitions

SMT-Resistor

public defstruct SMT-Resistor <: SMT-Chip

Constructors

SMT-Resistor

Constructor for defstruct SMT-Resistor

public defn SMT-Resistor (chip-def:SMT-Chip-Def -- height:Toleranced = ?, keep-out:KeepoutCreator|False = ?, protrusion:LeadProtrusion = ?, pad-planner:PadPlanner = ?, lead-numbering:Numbering = ?, density-level:DensityLevel = ?)

Functions

get-resistor-pkg

Create a Resistor SMT Chip Package of a given size

public defn get-resistor-pkg (k:String -- keep-out:KeepoutCreator|False = ?, density-level:DensityLevel = ?) -> SMT-Resistor

  • k: String - Standard Package size (eg "0805") or Metric Alias (eg, "2012m")
  • Returns SMT-Resistor - Package with all default configurations

SMT-Chip-Def

SMT Chip Definition Type

public defstruct SMT-Chip-Def
    aliases: Tuple<String>
    lead-length: Toleranced
    lead-width: Toleranced
    length: Toleranced
    name: String
    width: Toleranced

  • aliases: Tuple<String>

  • lead-length: Toleranced

  • lead-width: Toleranced

  • length: Toleranced

  • name: String

  • width: Toleranced

This type encodes the parameters of a chip package such as an 0603, 0805, etc.

Constructors

SMT-Chip-Def

Constructor for defstruct SMT-Chip-Def

public defn SMT-Chip-Def (name:String, aliases:Tuple<String>, length:Toleranced, width:Toleranced, lead-length:Toleranced, lead-width:Toleranced)

Functions

get-chip-def

Get the SMT Chip definition from a case size

public defn get-chip-def (k:String) -> SMT-Chip-Def

  • k: String - Standard Package size (eg "0805") or Metric Alias (eg, "2012m")
  • Returns SMT-Chip-Def - SMT Chip Definition for this chip size if it exists.
  • Throws ValueError - if no chip definition with that name can be found.

SMT-Chip

Constructor

public defn SMT-Chip (chip-def:SMT-Chip-Def -- polarized?:True|False = ?, side-fillet:Double|False = ?, height:Toleranced = ?, keep-out:KeepoutCreator|False = ?, protrusion:LeadProtrusion = ?, pad-planner:PadPlanner = ?, lead-numbering:Numbering = ?, density-level:DensityLevel = ?)

  • chip-def: SMT-Chip-Def - Chip Dimensions
  • polarized?: True|False - Default value is false
  • side-fillet: Double|False - Default value is false
  • height: Toleranced - Default height is 0.4mm
  • protrusion: LeadProtrusion - The default value depends on the size of the package. If the width is greater than 0.8mm, then BigRectangularLeads is the default. Else SmallRectangularLeads is the default.
  • lead-numbering: Numbering - Numbering Scheme - default depends on the polarized? flag.

SMT-Chip

SMT 2-pin Chip Package Type

public defstruct SMT-Chip <: Package
    def: SMT-Chip-Def
    height: Toleranced
    keep-out: KeepoutCreator|False
    polarized?: True|False
    protrusion: LeadProtrusion
    side-fillet: Double|False

  • def: SMT-Chip-Def - Defines the Package dimensions

  • height: Toleranced - Z-dimension Height of the Chip Package.

  • keep-out: KeepoutCreator|False - Construct a Keepout underneath the component. Default is false indicating no keepout is created.

  • polarized?: True|False - Indicates whether to use the Anode/Cathode style pad numbering or standard p[1]/p[2] style numbering.

  • protrusion: LeadProtrusion - Protrusion Type

  • side-fillet: Double|False - Optional excess side fillet area For packages like capacitors where the lead can cover all 5 surfaces of the end of the package, this parameter provides excess pad area to allow the wetted solder to fillet on the side of the contact. This value will be added to both sides of the pad. This will increase its total width by 2.0 * side-fillet. If false, then no excess side-fillet area is added.

This type is used to define the packages for common SMT passive components like resistors, capacitors, etc. These packages are typically named 0603, 0805, etc.

Methods

name

Non IPC name - Use derived types for proper naming

defmethod name (x:SMT-Chip) -> String

  • Returns String

Functions

get-chip-pkg

Create a SMT-Chip Package given a chip size string.

public defn get-chip-pkg (k:String, density-level:DensityLevel = ?) -> SMT-Chip

  • k: String - Standard Package size (eg "0805") or Metric Alias (eg, "2012m")
  • Returns SMT-Chip - SMT Chip Package with all default configurations
  • Throws ValueError - if no chip definition with that name can be found.

SMT-Chip

Constructor

public defn SMT-Chip (chip-def:SMT-Chip-Def -- polarized?:True|False = ?, side-fillet:Double|False = ?, height:Toleranced = ?, keep-out:KeepoutCreator|False = ?, protrusion:LeadProtrusion = ?, pad-planner:PadPlanner = ?, lead-numbering:Numbering = ?, density-level:DensityLevel = ?)

  • chip-def: SMT-Chip-Def - Chip Dimensions
  • polarized?: True|False - Default value is false
  • side-fillet: Double|False - Default value is false
  • height: Toleranced - Default height is 0.4mm
  • protrusion: LeadProtrusion - The default value depends on the size of the package. If the width is greater than 0.8mm, then BigRectangularLeads is the default. Else SmallRectangularLeads is the default.
  • lead-numbering: Numbering - Numbering Scheme - default depends on the polarized? flag.

SMT-Capacitor

public defstruct SMT-Capacitor <: SMT-Chip

Constructors

SMT-Capacitor

Constructor for defstruct SMT-Capacitor

public defn SMT-Capacitor (chip-def:SMT-Chip-Def -- polarized?:True|False = ?, side-fillet:Double|False = ?, height:Toleranced = ?, keep-out:KeepoutCreator|False = ?, protrusion:LeadProtrusion = ?, pad-planner:PadPlanner = ?, lead-numbering:Numbering = ?, density-level:DensityLevel = ?)

Functions

get-capacitor-pkg

Create a Capacitor SMT Chip Package of a given size

public defn get-capacitor-pkg (k:String -- polarized?:True|False = ?, keep-out:KeepoutCreator|False = ?, density-level:DensityLevel = ?) -> SMT-Capacitor

  • k: String - Standard Package size (eg "0805") or Metric Alias (eg, "2012m")
  • Returns SMT-Capacitor - Package with all default configurations

General Definitions

extract-SMT-chips

Extract the SMT Dimension Info from the SMT Table

public defn extract-SMT-chips (rows:Tuple) -> HashTable<String, SMT-Chip-Def>

  • Returns HashTable<String, SMT-Chip-Def>

This function extracts the information in the programmatically generated table in SMT-Table.csv into SMT-Chip definitions

is-known-chip-pkg

Check if the passed string is a known chip size - like "0603", "0805", etc

public defn is-known-chip-pkg (k:String) -> True|False

  • k: String - Standard Package size (eg "0805") or Metric Alias (eg, "2012m")
  • Returns True|False

chips

SMT Chip Table

public val chips

This value contains a lookup table for the different SMT definitions read from the SMT Table. The keys of this table will be in the form 0603 or 1608m where the m suffix indicates the metric variant. There are also Wide * name variants in this table.

Related Packages

Forwarded by packages: jsl/landpatterns/two-pin/generators, jsl/landpatterns/generators, jsl/landpatterns