.claude/skills/manufacturers/onsemi/SKILL.md
ON Semiconductor (onsemi) MPN encoding patterns, package codes, and handler guidance. Use when working with onsemi MOSFETs, diodes, transistors, voltage regulators, or OnSemiHandler.
npx skillsauth add Cantara/lib-electronic-components onsemiInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
ON Semiconductor (onsemi) is a major semiconductor manufacturer that acquired Fairchild Semiconductor in 2016. The company inherited multiple part numbering conventions from various acquisitions including Fairchild, Motorola Semiconductor Products Sector, and others.
NT[PKG][VOLTAGE][CURRENT/RDS][CHANNEL][SUFFIX]
| | | | | |
| | | | | +-- L=Logic level, blank=standard
| | | | +-- N=N-channel (may be embedded)
| | | +-- Current capability or RDS identifier
| | +-- Voltage class
| +-- Package: D=DPAK, B=D2PAK, S=SO-8, R=SOT-23
+-- NT = ON Semiconductor power MOSFET
Examples:
FQ[PKG][CURRENT][CHANNEL][VOLTAGE][SUFFIX]
| | | | | |
| | | | | +-- L=Logic level, blank=standard
| | | | +-- Voltage / 10 (e.g., 06=60V, 20=200V)
| | | +-- N=N-channel, P=P-channel
| | +-- Current rating (A)
| +-- Package: P=TO-220, D=DPAK, B=D2PAK, A=TO-3P
+-- FQ = Fairchild QFET series
Examples:
FD[PKG][CURRENT/CODE][RDS][VOLTAGE][SUFFIX]
| | | | | |
| | | | | +-- Technology suffix (optional)
| | | | +-- Voltage class
| | | +-- RDS identifier (mOhm related)
| | +-- Device code or current
| +-- Package: P=TO-220, B=D2PAK, D=DPAK
+-- FD = Fairchild PowerTrench MOSFET
Examples:
2N[SEQUENCE][SUFFIX]
| | |
| | +-- A/B/C = grade improvement
| +-- JEDEC registration number (no encoded meaning)
+-- 2N = JEDEC transistor prefix
Examples:
MMBT[BASE][SUFFIX]
| | |
| | +-- Grade suffix (L=low, T1=tape & reel)
| +-- Equivalent 2N or base number
+-- MMBT = Motorola Miniature Bipolar Transistor (SOT-23)
Examples:
MPS[A][CODE]
| | |
| | +-- Device code
| +-- A = variant designation
+-- MPS = Motorola Plastic Small (signal transistor)
Examples:
MC78[VOLTAGE][GRADE][PACKAGE]
| | | |
| | | +-- Package suffix (CT=TO-220, CD=DPAK, etc.)
| | +-- Grade: blank=std, A/B/C=improved
| +-- Output voltage (05=5V, 12=12V, 15=15V, etc.)
+-- MC78 = Motorola positive regulator / MC79 = negative regulator
Examples:
MC33[CODE][VARIANT][PACKAGE]
| | | |
| | | +-- Package designator
| | +-- Variant/feature code
| +-- Device code
+-- MC33 = Motorola switching regulator family
Examples:
NCP[CODE][VARIANT][PACKAGE]
| | | |
| | | +-- Package designator
| | +-- Feature/variant code
| +-- Device family code
+-- NCP = ON Semiconductor power IC
Examples:
RL20[VOLTAGE CODE]
| |
| +-- 1=50V, 2=100V, 3=200V, 4=400V, 5=600V, 6=800V, 7=1000V
+-- RL20 = 2A standard recovery rectifier series
Examples:
MUR[CURRENT][VOLTAGE]
| | |
| | +-- Voltage rating / 10 (e.g., 20=200V)
| +-- Current rating in Amps
+-- MUR = Motorola Ultra-fast Recovery
Examples:
MBR[S][CURRENT][VOLTAGE]
| | | |
| | | +-- Voltage rating / 10
| | +-- Current rating
| +-- S = Surface mount version
+-- MBR = Motorola Barrier Rectifier (Schottky)
Examples:
1N[SERIES][CODE][SUFFIX]
| | | |
| | | +-- Grade suffix (A, B, C, etc.)
| | +-- Voltage code within series
| +-- 47=1W Zener, 52=0.5W Zener
+-- 1N = JEDEC diode prefix
Examples:
MC[BASE][VARIANT][PACKAGE]
| | | |
| | | +-- Package code
| | +-- Grade variant
| +-- Device base number
+-- MC = Motorola integrated circuit
Examples:
| Code | Package | Current | Notes | |------|---------|---------|-------| | CT | TO-220 | 1A+ | Standard power | | T | TO-220 | 1A+ | Alternate code | | ACP | TO-92 | 100mA | Plastic small | | P | DIP | - | Dual in-line | | N | DIP | - | Alternate for DIP |
| Code | Package | Notes | |------|---------|-------| | D | SOIC | Standard SOIC-8/14/16 | | DT | DPAK (TO-252) | Power SMD | | BD | D2PAK (TO-263) | High power SMD | | DW | SOIC-Wide | Wide body | | PW | TSSOP | Thin shrink SOP | | DGK | MSOP | Mini SOP | | DBV | SOT-23 | Small outline | | T3G | SOT-23 Tape | SOT-23 with T&R |
| Code | Package | Notes | |------|---------|-------| | RL | DO-41 | Standard axial | | G | DO-35 | Small signal | | T | TO-220 | Power diode | | FP | TO-220F | Fully isolated | | SMB | DO-214AA | Surface mount | | SMC | DO-214AB | Larger SMD |
NCV[BASE PART NUMBER]
|
+-- Automotive grade, AEC-Q100/Q101 qualified
Temperature: -40C to +125C
PPAP capable
Examples:
| Suffix | Range | Application | |--------|-------|-------------| | (none) | 0C to +70C | Commercial | | I | -40C to +85C | Industrial | | E | -40C to +125C | Extended |
| Suffix | Meaning | |--------|---------| | A | Improved tolerance/specs | | B | Further improved | | C | Premium grade | | L | Logic level (MOSFETs) | | G | Green/RoHS compliant | | T1 | Tape & reel (SOT-23) | | T3G | Tape & reel + Green |
| Part Number | Type | Vds | Id | Package | |-------------|------|-----|-----|---------| | FQP50N06L | N-ch Logic | 60V | 50A | TO-220 | | FQP27P06 | P-ch | 60V | 27A | TO-220 | | NTD20N06L | N-ch Logic | 60V | 20A | DPAK | | NTD2955 | P-ch | 60V | 12A | DPAK | | 2N7000 | N-ch | 60V | 200mA | TO-92 | | 2N7002 | N-ch | 60V | 115mA | SOT-23 | | FDB3632 | N-ch | 100V | 73A | D2PAK |
| Part Number | Type | Vceo | Ic | Package | |-------------|------|------|-----|---------| | 2N2222A | NPN | 40V | 600mA | TO-18/TO-92 | | 2N3904 | NPN | 40V | 200mA | TO-92 | | 2N3906 | PNP | 40V | 200mA | TO-92 | | MMBT2222A | NPN | 40V | 600mA | SOT-23 | | MMBT3904 | NPN | 40V | 200mA | SOT-23 | | MMBT3906 | PNP | 40V | 200mA | SOT-23 | | MPSA42 | NPN | 300V | 500mA | TO-92 |
| Part Number | Output | Current | Package | |-------------|--------|---------|---------| | MC7805CT | +5V | 1A | TO-220 | | MC7812CT | +12V | 1A | TO-220 | | MC78L05ACP | +5V | 100mA | TO-92 | | MC7905CT | -5V | 1A | TO-220 | | NCP1117ST33T3G | +3.3V | 1A | SOT-223 | | MC33063AD | Variable | 1.5A | SOIC-8 |
| Part Number | Type | Vrrm | If | Package | |-------------|------|------|-----|---------| | RL207 | Rectifier | 1000V | 2A | DO-41 | | MUR460 | Ultra-fast | 600V | 4A | TO-220 | | MBR1045 | Schottky | 45V | 10A | TO-220 | | MBRS340 | Schottky | 40V | 3A | SMC | | 1N4733A | Zener | 5.1V | 1W | DO-41 | | 1N4742A | Zener | 12V | 1W | DO-41 |
HashSet instead of Set.of() or EnumSet for immutability// MOSFETs - ON Semi native
registry.addPattern(ComponentType.MOSFET, "^NT[DBSR][0-9]+.*");
registry.addPattern(ComponentType.MOSFET_ONSEMI, "^NT[DBSR][0-9]+.*");
// MOSFETs - Fairchild legacy
registry.addPattern(ComponentType.MOSFET, "^FQ[PDBA][0-9]+.*");
registry.addPattern(ComponentType.MOSFET_ONSEMI, "^FQ[PDBA][0-9]+.*");
registry.addPattern(ComponentType.MOSFET, "^FD[PDB][0-9]+.*");
registry.addPattern(ComponentType.MOSFET_ONSEMI, "^FD[PDB][0-9]+.*");
// Small signal MOSFETs
registry.addPattern(ComponentType.MOSFET, "^2N7[0-9]{3}.*");
registry.addPattern(ComponentType.MOSFET_ONSEMI, "^2N7[0-9]{3}.*");
registry.addPattern(ComponentType.MOSFET, "^BSS[0-9]+.*");
registry.addPattern(ComponentType.MOSFET_ONSEMI, "^BSS[0-9]+.*");
// Transistors
registry.addPattern(ComponentType.TRANSISTOR, "^2N[0-9]{4}.*");
registry.addPattern(ComponentType.TRANSISTOR, "^MMBT[0-9]+.*");
registry.addPattern(ComponentType.TRANSISTOR, "^MPS[A]?[0-9]+.*");
registry.addPattern(ComponentType.TRANSISTOR, "^BC[0-9]{3}.*");
// NCP voltage regulators
registry.addPattern(ComponentType.VOLTAGE_REGULATOR, "^NCP[0-9]+.*");
registry.addPattern(ComponentType.VOLTAGE_REGULATOR_LINEAR_ON, "^NCP[0-9]+.*");
// MOSFET package extraction
if (upperMpn.startsWith("FQP") || upperMpn.endsWith("CT")) return "TO-220";
if (upperMpn.startsWith("FQD") || upperMpn.matches(".*DT$")) return "DPAK";
if (upperMpn.startsWith("FQB") || upperMpn.matches(".*BD$")) return "D2PAK";
if (upperMpn.startsWith("NTD")) return "DPAK";
if (upperMpn.startsWith("NTB")) return "D2PAK";
// Transistor package extraction
if (upperMpn.startsWith("MMBT") || upperMpn.matches(".*T1$")) return "SOT-23";
if (upperMpn.startsWith("2N") && !upperMpn.startsWith("2N7")) return "TO-92";
if (upperMpn.startsWith("MPS")) return "TO-92";
// MOSFET series
if (mpn.matches("(?i)^NTD.*")) return "NTD";
if (mpn.matches("(?i)^NTB.*")) return "NTB";
if (mpn.matches("(?i)^FQP.*")) return "FQP";
if (mpn.matches("(?i)^FQD.*")) return "FQD";
if (mpn.matches("(?i)^FDP.*")) return "FDP";
if (mpn.matches("(?i)^FDD.*")) return "FDD";
if (mpn.matches("(?i)^FDB.*")) return "FDB";
// Transistor series
if (mpn.matches("(?i)^MMBT.*")) return "MMBT";
if (mpn.matches("(?i)^2N[0-9]+.*")) return "2N";
if (mpn.matches("(?i)^MPS[A]?.*")) return "MPS";
// Regulator series
if (mpn.matches("(?i)^NCP[0-9]+.*")) return "NCP";
manufacturers/OnSemiHandler.javaMOSFET_ONSEMI, IGBT_ONSEMI, VOLTAGE_REGULATOR_LINEAR_ON, VOLTAGE_REGULATOR_SWITCHING_ON, LED_DRIVER_ONSEMI, MOTOR_DRIVER_ONSEMI, OPAMP_ON, DIODE_ONdata-ai
Cost-effective task delegation strategy using Haiku model for straightforward work. Use when planning how to approach simple, pattern-following tasks to minimize costs.
tools
Use when working with component similarity calculations - comparing MPNs, finding equivalent parts, implementing new similarity calculators, or understanding how component matching works.
testing
Use when working with transistor similarity calculations - comparing BJT MPNs, understanding NPN/PNP polarity matching, equivalent groups like 2N2222/PN2222, or transistor-specific similarity logic.
testing
Use when working with sensor similarity calculations - comparing temperature/accelerometer/humidity sensor MPNs, understanding sensor families, equivalent parts, or sensor-specific similarity logic.