Skip to content

Supported Components

Reemuson edited this page Dec 27, 2025 · 2 revisions

This page documents the supported component types in PARTS and the exact JSON fields used to define them.

All component rendering is driven by JSON configuration. Invalid fields or unsupported subtype strings may result in fallback behaviour or errors.


Common Structure

Each component entry appears inside the labels array of a configuration file.

Example:

{
  "kind": "diode",
  "part_number": "1N4148",
  "subtype": "signal",
  "package": "DO-35",
  "spec": { ... }
}

Resistor

JSON Structure

{
  "kind": "resistor",
  "value_ohms": 4700
}

Fields

  • kind (required): "resistor"
  • value_ohms (required): Resistance value in ohms

Diode

JSON Structure

{
  "kind": "diode",
  "part_number": "1N4148",
  "subtype": "diode",
  "package": "DO-35",
  "spec": { ... }
}

Fields

  • kind (required): "diode"
  • part_number (required): Manufacturer or generic part number
  • subtype (optional): Diode subtype selector
  • package (optional): Physical package identifier
  • spec (optional): Electrical specification object

If subtype is omitted, "diode" is used.


Supported Diode Subtypes

The following subtype strings are recognised:

"diode"
"standard"
"rectifier"
"zener"
"schottky"
"led"
"photodiode"
"photo"
"tvs"
"tvs-bi"
"tvs-uni"
"tunnel"
"varicap"
"varactor"

Multiple aliases may map to the same symbol. For example:

  • "diode", "standard" and "rectifier" use the standard diode symbol
  • "varicap" and "varactor" are equivalent
  • "tvs-uni" uses the zener-style symbol
  • "tvs-bi" uses the bidirectional TVS symbol

Transistor

JSON Structure

{
  "kind": "transistor",
  "part_number": "BC547",
  "subtype": "npn",
  "package": "TO-92",
  "spec": { ... }
}

Fields

  • kind (required): "transistor"
  • part_number (required): Manufacturer or generic part number
  • subtype (required): Transistor subtype selector
  • package (optional): Physical package identifier
  • spec (optional): Electrical specification object

Supported Transistor Subtypes

Bipolar Junction Transistors (BJT)

"npn"
"pnp"
"bjt_npn"
"bjt_pnp"
"darlington_npn"
"darlington_pnp"

MOSFETs

"nmos"
"pmos"
"nmos_enh"
"pmos_enh"
"nmos_dep"
"pmos_dep"

JFETs

"jfet_n"
"jfet_p"

IGBTs

"igbt_n"
"igbt_p"

Thyristors

"scr"
"triac"

If an unknown subtype is provided, PARTS falls back to an NPN BJT symbol.


Notes

  • Field names are case-sensitive
  • Subtype strings must match exactly
  • Aliases are provided for convenience but should be standardised where possible
  • Package identifiers are resolved independently of subtype

For physical package support, see the Supported Packages page.

Clone this wiki locally