vishay_crcw module#

Vishay CRCW e3 standard thick-film chip resistor family (parameterized).

Models Vishay’s CRCW e3 standard thick-film chip resistor series (datasheet 20035) as a single parameterized jitx.Component. Choose a case size, resistance, tolerance, and temperature coefficient and the component builds the matching land pattern, resistor symbol, and Vishay (Dale) part number with no parts-database or online lookup. It is a drop-in alternative to jitxlib.parts.Resistor and provides a matching VishayCRCW.insert().

Case sizes: 0402, 0603, 0805, 1206, 1210, 1218, 2010, 2512. Tolerances +/-1% (F) and +/-5% (J); temperature coefficient +/-100 ppm/K (K, 1% only) or +/-200 ppm/K (N).

Note on dimensions: datasheet 20035 specifies each case by its standard EIA/IEC size code (e.g. RR1608M = 1.6 x 0.8 mm for 0603), so the land pattern takes JITX’s standard chip dimensions for the size rather than vendor-specific overrides. That is a deliberate choice, not an absence of data – the datasheet’s DIMENSIONS AND MASS table (doc page 11) is transcribed below as CRCW_DIMENSIONS and asserted against the standard table per size in tests/test_js1_vishay_crcw.py, which is how the one size that disagrees (2512) was found and overridden.

Datasheet (doc 20035): https://www.vishay.com/docs/20035/dcrcwe3.pdf

Land-pattern construction, two-pin .insert(), and the E-series check are shared with the other chip-resistor families via chip_smt.

format_value_code(ohms)[source]#

Encode a resistance as Vishay’s fixed 4-character value code.

Three significant figures with the multiplier letter (R = x1, K = x1e3, M = x1e6) standing in for the decimal point.

Return type:

str

Parameters:

ohms (float)

>>> format_value_code(562)
'562R'
>>> format_value_code(10_000)
'10K0'
>>> format_value_code(1_000_000)
'1M00'
class VishayCRCW(*, resistance: float, size: str = '0402', tolerance: float = 0.01, tcr_ppm: int | None = None, packaging: str | None = None, check_eseries: bool = False)[source]#

Bases: Component

A Vishay CRCW e3 thick-film chip resistor, built from datasheet data.

Parameters:
  • resistance (float) – Resistance in ohms (1 to the size’s maximum).

  • size (str) – Imperial case code, e.g. "0603". One of 0402 .. 2512.

  • tolerance (float) – Tolerance as a fraction: 0.01 (+/-1%, F) or 0.05 (+/-5%, J).

  • tcr_ppm (int) – Temperature coefficient in ppm/K (100 or 200). None picks the default for the tolerance (100 for 1%, 200 for 5%). +/-5% parts are +/-200 ppm/K only.

  • packaging (str | None) – Packaging-field code (e.g. "EA"). None uses the size’s datasheet default.

  • check_eseries (bool) – If true, validate resistance against the E24/E96 grid.

datasheet: str#
case: str#
tolerance: float#
tcr_ppm: int#
power: float#
max_voltage: int#
symbol: Symbol#
landpattern: Landpattern#
p1: Port#
p2: Port#
insert(pin_a, pin_b, *, short_trace=False)[source]#

Place this resistor between two pins/nets of the active circuit.

Mirrors jitxlib.parts.Resistor.insert(); see chip_smt.insert_two_pin().

Return type:

Self

Parameters:
Device#

alias of VishayCRCW