npx agentspec-cli install 5ee82368-8e1c-4206-82ae-71c29c49ff22 --framework ClaudeCode→ .claude/skills/ic/SKILL.md
# Integrated Circuit Skill Guidance for working with ICs (microcontrollers, op-amps, voltage regulators, logic) in the lib-electronic-components library. ## Microcontrollers ### Supported Manufacturers & Patterns | Manufacturer | Handler | MPN Patterns | Example | |--------------|---------|--------------|---------| | Microchip | `MicrochipHandler` | `PIC#`, `dsPIC#`, `ATmega#`, `ATtiny#` | `PIC16F877A`, `ATmega328P` | | ST | `STHandler` | `STM32#`, `STM8#` | `STM32F103C8T6` | | TI | `TIHandler` | `MSP430#`, `CC####` | `MSP430G2553` | | NXP | `NXPHandler` | `LPC#`, `MK#`, `IMX#`, `S32K#` | `LPC1768` | | Espressif | `EspressifHandler` | `ESP32#`, `ESP8266` | `ESP32-WROOM-32` | | Renesas | `RenesasHandler` | `RX#`, `RA#`, `R5F#` | `RX651` | | Infineon | `InfineonHandler` | `XMC#` | `XMC4500` | | Cypress | `CypressHandler` | `CY#`, `PSoC#` | `CY8C5888` | ### ComponentTypes ```java // Base types ComponentType.MICROCONTROLLER ComponentType.IC // Manufacturer-specific ComponentType.MICROCONTROLLER_MICROCHIP ComponentType.MICROCONTROLLER_ST ComponentType.MICROCONTROLLER_TI ComponentType.MICROCONTROLLER_NXP ComponentType.MICROCONTROLLER_ESPRESSIF ComponentType.MICROCONTROLLER_RENESAS ComponentType.MICROCONTROLLER_INFINEON ComponentType.MICROCONTROLLER_ATMEL // Architecture-specific ComponentType.PIC_MCU ComponentType.AVR_MCU ComponentType.MSP430_MCU ComponentType.ESP32_SOC ComponentType.ESP8266_SOC ComponentType.KINETIS_MCU ComponentType.LPC_MCU ``` ### MPN Structure - STM32 ``` STM32 F 103 C 8 T 6 │ │ │ │ │ │ │ │ │ │ │ │ │ └── Temperature (-40 to +85°C) │ │ │ │ │ └──── Package (T=LQFP) │ │ │ │ └────── Flash size (8=64KB) │ │ │ └──────── Pin count (C=48 pins) │ │ └──────────── Performance line (103) │ └────────────── Family (F=Foundation) └──────────────────── Series ``` ## Op-Amps ### Supported Manufacturers & Patterns | Manufacturer | Handler | MPN Patterns | Example | |--------------|---------|--------------|---------| | TI | `TIHandler` | `LM###`, `TL0##`, `OPA###` | `LM358`, `TL072`, `OPA2134` | | Analog Devices | `AnalogDevicesHandler` | `AD###`, `ADA###`, `OP##` | `AD8605`, `OP07` | | ST | `STHandler` | `LM###`, `TS###` | `TS912` | | ON Semi | `OnSemiHandler` | `LM###`, `MC####` | `MC1458` | ### ComponentTypes ```java ComponentType.OPAMP ComponentType.OPAMP_TI ComponentType.OPAMP_AD ComponentType.OPAMP_ST ComponentType.OPAMP_ON ComponentType.OPAMP_INFINEON ComponentType.OPAMP_NXP ComponentType.OPAMP_ROHM ``` ### Common Op-Amp Series | Series | Type | Key Specs | |--------|------|-----------| | LM358 | Dual | Low power, single supply | | LM324 | Quad | Low power, single supply | | TL072 | Dual | JFET input, low noise | | OPA2134 | Dual | Audio, low distortion | | AD8605 | Single | Rail-to-rail, CMOS | | NE5532 | Dual | Audio, low noise | ## Voltage Regulators ### Supported Manufacturers & Patterns | Manufacturer | Handler | MPN Patterns | Example | |--------------|---------|--------------|---------| | TI | `TIHandler` | `LM78##`, `LM79##`, `LM317`, `TPS###` | `LM7805`, `LM317T`, `TPS65281` | | ST | `STHandler` | `L78##`, `LD1117` | `L7805CV`, `LD1117V33` | | ON Semi | `OnSemiHandler` | `MC78##`, `NCP###` | `MC7805CT` | | Maxim | `MaximHandler` | `MAX###` | `MAX1555` | | Analog Devices | `AnalogDevicesHandler` | `ADP###`, `LT####` | `ADP3338`, `LT1086` | ### ComponentTypes ```java ComponentType.VOLTAGE_REGULATOR ComponentType.VOLTAGE_REGULATOR_LINEAR_TI ComponentType.VOLTAGE_REGULATOR_SWITCHING_TI ComponentType.VOLTAGE_REGULATOR_LINEAR_ST ComponentType.VOLTAGE_REGULATOR_SWITCHING_ST ComponentType.VOLTAGE_REGULATOR_LINEAR_INFINEON ComponentType.VOLTAGE_REGULATOR_SWITCHING_INFINEON ComponentType.VOLTAGE_REGULATOR_LINEAR_ON ComponentType.VOLTAGE_REGULATOR_SWITCHING_ON ComponentType.VOLTAGE_REGULATOR_MAXIM ComponentType.VOLTAGE_REGULATOR_DIODES ComponentType.VOLTAGE_REGULATOR_ROHM ComponentType.VOLTAGE_REGULATOR_TOSHIBA ``` ### MPN Structure - LM78xx ``` LM 78 05 CT │ │ │ │ │ │ │ └── Package (CT=TO-220) │ │ └───── Output voltage (05=5V) │ └──────── Series (78=positive, 79=negative) └─────────── Family ``` ## Logic ICs ### Handler `LogicICHandler` handles the 74xx and CD4xxx series. ### Patterns | Pattern | Family | Description | |---------|--------|-------------| | `74LS###` | 74LS | Low-power Schottky | | `74HC###` | 74HC | High-speed CMOS | | `74HCT###` | 74HCT | CMOS with TTL levels | | `74AHC###` | 74AHC | Advanced HC | | `74LVC###` | 74LVC | Low-voltage CMOS | | `CD4###` | CD4000 | CMOS 4000 series | ### ComponentTypes ```java ComponentType.LOGIC_IC ComponentType.LOGIC_IC_NEXPERIA ComponentType.LOGIC_IC_DIODES ComponentType.DIGITAL_IC ``` ## Adding New IC Patterns 1. In the manufacturer handler's `initializePatterns()`: ```java registry.addPattern(ComponentType.OPAMP, "^NEWOPA[0-9].*"); registry.addPattern(ComponentType.OPAMP_MANUFACTURER, "^NEWOPA[0-9].*"); ``` 2. Add to `getSupportedTypes()`: ```java types.add(ComponentType.OPAMP); types.add(ComponentType.OPAMP_MANUFACTURER); ``` ## Similarity Calculators - `MicrocontrollerSimilarityCalculator` - Compares architecture, flash, RAM, peripherals - `OpAmpSimilarityCalculator` - Compares GBW, slew rate, supply voltage - `VoltageRegulatorSimilarityCalculator` - Compares output voltage, current, dropout - `LogicICSimilarityCalculator` - Compares function, family, voltage levels ## Common Packages | Package | Pins | Description | |---------|------|-------------| | DIP | 8-40 | Through-hole | | SOIC | 8-28 | Surface mount | | TSSOP | 8-56 | Thin small outline | | QFP | 32-256 | Quad flat | | LQFP | 32-256 | Low-profile QFP | | QFN | 8-88 | Quad flat no-lead | | BGA | Various | Ball grid array | --- ## Learnings & Quirks <!-- Record component-specific discoveries, edge cases, and quirks here -->
Built on the Agent Skills standard
sodacat-soc-database
Query, browse, extract, and generate code from the sodaCat SoC/MCU hardware database (github.com/s13n/sodaCat). Use this skill whenever the user asks about microcontroller or SoC peripheral registers, hardware features, crypto/timer/ADC/DMA/UART capabilities, register maps, interrupt assignments, or pin configurations for supported chips. Also use when the user wants to compare peripherals across chip variants, extract new models from SVD files, generate C++ headers from YAML models, or look up which chip v
by AgentHub Crawler
mlx
Use when working with Apple's MLX or MLX-LM: fact-checking current behavior against upstream source/runtime, patching MLX-based repos, porting PyTorch/JAX code to MLX, validating lazy evaluation, indexing, compilation, streams, channels-last layouts, Metal kernels, quantization, caches, and local MLX model loading or generation on Apple silicon.
by AgentHub Crawler
=== USER INSTRUCTIONS ===
The license management system implements a hardware-locked commercial licensing solution with tiered access control and multi-stage validation.
Sign in to leave a comment.
by AgentHub Crawler