Claude-skill-registry iqd

IQD Frequency Products MPN encoding patterns, package decoding, and handler guidance. Use when working with IQD crystals, oscillators, TCXOs, VCXOs, or OCXOs.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/iqd" ~/.claude/skills/majiayu000-claude-skill-registry-iqd && rm -rf "$T"
manifest: skills/data/iqd/SKILL.md
source content

IQD Frequency Products Manufacturer Skill

Manufacturer Overview

IQD (International Quartz Devices) is a UK-based manufacturer specializing in frequency control products. Their product range includes:

  • Crystals: Low frequency, standard, SMD, and through-hole crystal units
  • Oscillators: Standard clock oscillators (XO)
  • TCXOs: Temperature Compensated Crystal Oscillators
  • VCXOs: Voltage Controlled Crystal Oscillators
  • OCXOs: Oven Controlled Crystal Oscillators
  • Clock Modules: Integrated timing solutions
  • RTC Modules: Real-Time Clock modules
  • Filters: Crystal filters, SAW filters, resonator bandpass

MPN Structure

IQD MPNs follow product-family-specific structures:

Crystal Units

[PREFIX][SIZE]-[FREQUENCY]-[TOLERANCE]-[LOAD]-[TEMP]
   |      |        |           |        |       |
   |      |        |           |        |       +-- Temperature range
   |      |        |           |        +-- Load capacitance
   |      |        |           +-- Frequency tolerance (PPM)
   |      |        +-- Frequency value
   |      +-- Size code (e.g., 016, 020, 032)
   +-- Series prefix (CFPX, XTALS, XTAL, LFXTAL)

Oscillators (XO, TCXO, VCXO, OCXO)

[PREFIX]-[SIZE][SPEC]-[FREQUENCY]-[STABILITY]-[OUTPUT]
   |       |     |         |          |          |
   |       |     |         |          |          +-- Output type
   |       |     |         |          +-- Stability (PPM)
   |       |     |         +-- Frequency value
   |       |     +-- Specification variant (H=High freq, L=Low power)
   |       +-- Package size code (21, 25, 32, 50, 70, 90)
   +-- Family prefix (IQXO, IQTX, IQVCXO, IQOCXO)

Example Decoding

Crystal Examples

CFPX-032-16.000MHz-10ppm
|    |      |        |
|    |      |        +-- 10 PPM frequency tolerance
|    |      +-- 16.000 MHz frequency
|    +-- 032 = 3.2 x 2.5mm package
+-- Standard Crystal series

XTALS-020-8.000MHz
|     |      |
|     |      +-- 8.000 MHz frequency
|     +-- 020 = 2.0 x 1.6mm package
+-- SMD Crystal series

LFXTAL-25.000kHz
|        |
|        +-- 25.000 kHz (low frequency)
+-- Low Frequency Crystal series

Oscillator Examples

IQXO-32-16.000MHz
|    |     |
|    |     +-- 16.000 MHz output frequency
|    +-- 32 = 3.2 x 2.5mm package
+-- Standard Oscillator

IQXO-L50-1.000MHz
|    ||    |
|    ||    +-- 1.000 MHz frequency
|    |+-- 50 = 5.0 x 3.2mm package
|    +-- L = Low Power variant
+-- Low Power Oscillator

IQTX-H25-10.000MHz-0.5PPM
|    ||     |         |
|    ||     |         +-- 0.5 PPM stability
|    ||     +-- 10.000 MHz frequency
|    |+-- 25 = 2.5 x 2.0mm package
|    +-- H = High Stability variant
+-- High Stability TCXO

IQVCXO-32-100.000MHz
|      |      |
|      |      +-- 100.000 MHz center frequency
|      +-- 32 = 3.2 x 2.5mm package
+-- Voltage Controlled Crystal Oscillator

IQOCXO-H70-10.000MHz-1PPB
|      ||     |        |
|      ||     |        +-- 1 PPB (parts per billion) stability
|      ||     +-- 10.000 MHz frequency
|      |+-- 70 = 7.0 x 5.0mm package
|      +-- H = High Stability variant
+-- High Stability Oven Controlled Crystal Oscillator

Module Examples

IQCM-100-25.000MHz
|       |     |
|       |     +-- 25.000 MHz output
|       +-- Series/variant code
+-- Clock Module

IQRTC-32768Hz
|        |
|        +-- 32.768 kHz (standard RTC frequency)
+-- RTC Module

IQXF-455kHz
|      |
|      +-- 455 kHz center frequency
+-- Crystal Filter

IQSPF-100.000MHz
|       |
|       +-- 100.000 MHz center frequency
+-- SAW Filter

Package Codes

Crystal Packages (CFPX, XTALS series)

Size codes appear after a dash and indicate package dimensions:

CodePackage SizeCommon Use
0161.6 x 1.2mmUltra-small SMD
0202.0 x 1.6mmSmall SMD
0252.5 x 2.0mmStandard SMD
0323.2 x 2.5mmStandard SMD (most common)
0505.0 x 3.2mmLarger SMD
0707.0 x 5.0mmLarge SMD

Oscillator Packages (IQXO, IQTX, IQVCXO, IQOCXO series)

Size codes appear after the dash (or after H/L modifier):

CodePackage SizeCommon Use
212.0 x 1.6mmUltra-compact oscillators
252.5 x 2.0mmCompact oscillators
323.2 x 2.5mmStandard oscillators
505.0 x 3.2mmStandard/high stability
707.0 x 5.0mmHigh stability / OCXO
909.0 x 7.0mmHigh stability OCXO

Component Type Prefixes

Crystal Prefixes

PrefixComponent TypeDescription
LFXTALLow Frequency Crystal32.768 kHz and other low frequencies
CFPXStandard CrystalGeneral purpose SMD crystals
XTALSSMD CrystalSurface mount crystal units
XTALThrough-hole CrystalLeaded crystal units (HC-49, etc.)

Oscillator Prefixes

PrefixComponent TypeDescription
IQXOStandard OscillatorBasic clock oscillator (XO)
IQXO-HHigh Frequency OscillatorHigher frequency range XO
IQXO-LLow Power OscillatorReduced power consumption XO
IQTXTCXOTemperature Compensated Crystal Oscillator
IQTX-HHigh Stability TCXOTighter frequency stability
IQTX-LLow Power TCXOReduced power consumption
IQVCXOVCXOVoltage Controlled Crystal Oscillator
IQVCXO-HHigh Stability VCXOTighter frequency stability
IQOCXOOCXOOven Controlled Crystal Oscillator
IQOCXO-HHigh Stability OCXOUltra-stable (PPB range)

Module and Filter Prefixes

PrefixComponent TypeDescription
IQCMClock ModuleIntegrated clock/timing module
IQRTCRTC ModuleReal-Time Clock module
IQXFCrystal FilterCrystal-based bandpass filter
IQSPFSAW FilterSurface Acoustic Wave filter
IQRBResonator BandpassResonator-based bandpass filter

Supported Component Types

The IQDHandler supports these component types:

ComponentTypeDescription
CRYSTALBase crystal type
CRYSTAL_IQDIQD-specific crystal
OSCILLATORBase oscillator type
OSCILLATOR_IQDIQD standard oscillator
OSCILLATOR_TCXO_IQDIQD TCXO
OSCILLATOR_VCXO_IQDIQD VCXO
OSCILLATOR_OCXO_IQDIQD OCXO
CRYSTAL_FILTER_IQDIQD crystal filter
RTC_MODULE_IQDIQD RTC module

Handler Implementation Notes

Package Code Extraction

// For crystals (CFPX, XTALS), size code is 3 digits after dash
// CFPX-032-16.000MHz → dashIndex=4, extract positions 5-7 → "032"
int dashIndex = upperMpn.indexOf('-');
if (dashIndex > 0 && dashIndex + 4 <= upperMpn.length()) {
    String sizeCode = upperMpn.substring(dashIndex + 1, dashIndex + 4);
    // Map to readable format
}

// For oscillators (IQXO, IQTX, etc.), size code is 2 digits
// Split by dash, take first 2 chars of second part
// IQXO-32-16.000MHz → parts[1]="32..." → pkgCode="32"
String[] parts = upperMpn.split("-");
if (parts.length >= 2) {
    String pkgCode = parts[1].substring(0, 2);
    // Map to readable format
}

Series Extraction

// Series extraction uses prefix matching with variant detection
// More specific variants (H, L) checked before base prefix

if (upperMpn.startsWith("IQXO")) {
    if (upperMpn.startsWith("IQXO-H")) return "High Frequency Oscillator";
    if (upperMpn.startsWith("IQXO-L")) return "Low Power Oscillator";
    return "Standard Oscillator";  // Base case last
}

if (upperMpn.startsWith("IQTX")) {
    if (upperMpn.startsWith("IQTX-H")) return "High Stability TCXO";
    if (upperMpn.startsWith("IQTX-L")) return "Low Power TCXO";
    return "Standard TCXO";
}

Replacement Compatibility Logic

// IQDHandler implements sophisticated replacement logic:
// 1. Same series required (or compatible upgrade)
// 2. Same package size required
// 3. Same frequency required
// 4. Better or equal stability allowed

// Compatible upgrades:
// - High Stability can replace Standard (e.g., IQTX-H → IQTX)
// - Low Power variants may be compatible with Standard

// Stability comparison:
// Lower PPM value = better stability
// A 0.5 PPM part can replace a 2.5 PPM part

Stability Grades

Frequency stability is a key specification for timing products:

GradeTypical PPMApplication
Standard+/- 20-100General purpose
Medium+/- 2.5-10Precision timing
High+/- 0.5-2.5High accuracy
Ultra+/- 0.1-0.5Precision instruments
OCXOPPB rangeUltra-stable references

Common Frequency Values

Standard Crystal Frequencies

FrequencyCommon Application
32.768 kHzRTC, watch crystals
4.000 MHzGeneral purpose
8.000 MHzMicrocontrollers
12.000 MHzUSB (12 Mbps)
16.000 MHzMicrocontrollers
20.000 MHzGeneral purpose
25.000 MHzEthernet PHY
48.000 MHzUSB (480 Mbps)

Standard Oscillator Frequencies

FrequencyCommon Application
1.000 MHzLow frequency reference
10.000 MHzReference standard
12.288 MHzAudio (48 kHz * 256)
19.200 MHzTelecom reference
24.576 MHzAudio (96 kHz * 256)
100.000 MHzHigh-speed systems

Related Files

  • Handler:
    manufacturers/IQDHandler.java
  • Component types:
    CRYSTAL
    ,
    CRYSTAL_IQD
    ,
    OSCILLATOR
    ,
    OSCILLATOR_IQD
    ,
    OSCILLATOR_TCXO_IQD
    ,
    OSCILLATOR_VCXO_IQD
    ,
    OSCILLATOR_OCXO_IQD
    ,
    CRYSTAL_FILTER_IQD
    ,
    RTC_MODULE_IQD

Known Issues (Technical Debt)

The IQDHandler has these documented issues:

  1. HashSet in getSupportedTypes() - Should use
    Set.of()
    for immutability
  2. Missing IC type - Handler registers patterns for
    ComponentType.IC
    (clock modules, RTC, filters) but does not include
    IC
    in
    getSupportedTypes()
  3. No handler tests - Listed in handlers without tests in CLAUDE.md

Learnings & Quirks

  • Variant modifiers (H, L): Appear between prefix and size code (e.g., IQXO-H32 vs IQXO-32). The handler correctly checks for these before falling back to base series.
  • Package extraction differs by product type: Crystals use 3-digit codes after dash, oscillators use 2-digit codes. The handler splits logic based on prefix.
  • Replacement compatibility: IQD handler includes sophisticated replacement logic that considers stability grades - better stability parts can replace worse ones but not vice versa.
  • PPM vs PPB: OCXOs use parts-per-billion (PPB) while other products use parts-per-million (PPM). Both are extracted as stability grades.
  • IQTX vs IQXO: Easy to confuse - IQTX is TCXO (Temperature Compensated), IQXO is standard XO (crystal oscillator).
  • Missing IC in getSupportedTypes(): Clock modules (IQCM), RTC modules (IQRTC), and filters (IQXF, IQSPF, IQRB) are registered under
    ComponentType.IC
    but IC is not in the supported types set.
<!-- Add new learnings above this line -->