Claude-skill-registry eda-research
Component research and procurement. Search JLC for components, analyze datasheets, compare options, and document selections with rationale.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/eda-research" ~/.claude/skills/majiayu000-claude-skill-registry-eda-research && rm -rf "$T"
skills/data/eda-research/SKILL.mdEDA Research Skill
Source and select components for electronics projects.
Auto-Activation Triggers
This skill activates when:
- User asks to "find a component", "search for", "source"
- User asks about component specifications or comparisons
- User mentions LCSC, datasheets, or part numbers
- User asks "what MCU/regulator/sensor should I use"
- Project has
but missing component selectionsdesign-constraints.json
Context Requirements
Requires:
(or prompt user for requirements)docs/design-constraints.json
(optional, for context)docs/project-spec.md
Produces:
- Human-readable selection logdocs/component-selections.md
- Machine-readable BOMdocs/bom-draft.json
- Downloaded datasheets for selected componentsdatasheets/*.pdf
Workflow
1. Load Context
Read existing project constraints:
@docs/design-constraints.json @docs/project-spec.md @docs/component-selections.md (if exists)
If constraints missing, ask user for minimum requirements:
- What does this component need to do?
- Key specifications (voltage, current, package)?
- Budget constraints?
2. Understand Requirements
For the target component role, identify:
- Critical specifications (must-have)
- Preferred specifications (nice-to-have)
- Package preferences (SMD size, through-hole)
- Any specific brands or series to consider/avoid
2.5 Check Architecture Constraints
Before searching, review
design-constraints.json for:
- Power topology: LDO vs buck decision already made in architect phase
- Thermal budget: Max watts for this role (check
)thermal.hotComponents - DFM targets: Assembly method affects package choice
- Board layers: May affect component density
For power components, see
reference/REGULATOR-SELECTION.md for selection criteria.
For passives, see reference/PASSIVE-SELECTION.md and reference/DECOUPLING-STRATEGY.md.
3. Research Options
Use web search to understand:
- Common solutions for this application
- Recommended parts from reference designs
- Known issues or considerations
- Alternative approaches
4. Search JLC
Use
mcp__jlc__component_search to find candidates:
- Search with specific parameters
- Filter by stock availability
- Note pricing at target quantity
- Check for "Basic" parts (lower assembly fee at JLCPCB)
5. Analyze Candidates
For top 3-5 options:
- Download/fetch datasheets
- Extract key specifications
- Check application circuits
- Note layout requirements
- Identify any gotchas
5.5 Validate Against Constraints
Before presenting options, verify each candidate:
Thermal validation:
P_dissipation = (calculated from datasheet) Thermal budget = (from design-constraints.json) ✓ P_dissipation < Thermal budget
Assembly compatibility:
- Hand assembly → 0603/0805 minimum, no fine-pitch
- Reflow → 0402+ OK
- Turnkey → Check JLCPCB availability
Architecture compliance:
- Meets LDO/buck decision from architect phase
- Noise specs OK for rail type (analog vs digital)
- Efficiency acceptable for battery applications
Flag any candidates that fail validation with specific concerns.
6. Present Comparison
Create a comparison table:
| Part | MPN | Key Specs | Price | Stock | Pros | Cons |
|---|---|---|---|---|---|---|
| ... | ... | ... | ... | ... | ... | ... |
Include recommendation with rationale.
7. Confirm Selection
- Get user confirmation
- Document selection with rationale
- Update constraint file
- Save datasheet
8. Validate Symbol (After library_fetch)
When fetching online components with
mcp__jlc__library_fetch, analyze the returned validation_data:
Quick checks:
| Check | Expected | Action if Failed |
|---|---|---|
| | Check for exposed pads (EP) |
| (for ICs) | Review pin types |
| (for ICs) | Review pin names |
Common issues:
- QFN/BGA packages often have exposed thermal pads (EP) not included in symbol
- Pin electrical types may be incorrect (power pins marked as passive)
- Pin names may not match datasheet
Fixing with library_fix:
Use
mcp__jlc__library_fix to regenerate symbol with corrections:
mcp__jlc__library_fix lcsc_id="C#####" corrections='{ "pins": [ { "action": "add", "number": "EP", "name": "GND", "type": "passive" }, { "action": "modify", "number": "1", "set_type": "power_in" } ] }'
Correction actions:
- Add missing pin (number, name, type required)add
- Rename and/or change electrical typemodify
- Swap positions of two pinsswap
- Remove incorrect pinremove
Output Format
component-selections.md Entry
### [Role]: [Part Name] ([LCSC Number]) **Selected:** [Date] **MPN:** [Manufacturer Part Number] **Manufacturer:** [Name] **Price:** $X.XX @ [quantity] **Specifications:** - Key spec 1: value - Key spec 2: value **Rationale:** [Why this part was chosen over alternatives] **Alternatives Considered:** - [Part 2] - rejected because [reason] - [Part 3] - rejected because [reason] **Design Notes:** - [Any layout or application notes from datasheet] **Datasheet:** `datasheets/[filename].pdf`
bom-draft.json Entry
{ "role": "regulator-3v3", "lcsc": "C6186", "mpn": "AMS1117-3.3", "manufacturer": "AMS", "description": "3.3V 1A LDO Regulator", "value": "3.3V", "footprint": "SOT-223", "quantity": 1, "unitPrice": 0.04, "extendedPrice": 0.04, "category": "power", "basic": true }
Component Role Categories
See
reference/COMPONENT-CATEGORIES.md for detailed role definitions.
Common roles:
- Main microcontrollermcu
- Voltage regulatorsregulator-Xv
- Oscillators/crystalscrystal
- Various connectorsconnector-*
- ESD protectionesd-*
- Bypass/bulk capacitorsdecoupling-*
- Indicator LEDsled-*
- Various sensorssensor-*
Guidelines
- Prefer JLCPCB "Basic" parts when suitable (lower assembly cost)
- Check stock levels - avoid parts with < 100 in stock
- Consider package size vs hand soldering capability
- Note lead times for non-stock items
- Always document why a part was chosen
- Download datasheets for all selected components
- Identify 1-2 alternatives for critical components (see
)reference/COMPONENT-ALTERNATIVES.md - Validate thermal before confirming power components
- Check architecture decisions from design-constraints.json before selecting
Reference Documents
| Document | Use For |
|---|---|
| LDO vs Buck selection criteria |
| Capacitor values for ICs |
| Resistor/capacitor fundamentals |
| Finding equivalent parts |
| Extracting key specs |
| Role naming conventions |
| Search strategies |
Next Steps
After component selection is complete:
- Run
for remaining components/eda-source - When all components selected, run
/eda-schematic - Update
stage to "schematic"design-constraints.json