AgentSkillsCN

easyeda2kicad

从 LCSC/EasyEDA 下载 KiCad 封装与符号,用于 JLCPCB PCBA 项目。当用户:(1) 希望从 LCSC 下载 KiCad 封装或符号;(2) 用户提供 LCSC 部件编号(例如 C3975094、C2927029);(3) 用户正在为 JLCPCB 组装准备 KiCad 项目;(4) 用户需要精确的符号-封装组合以用于 PCBA;或者 (5) 用户正从事需要 JLCPCB 元件库的硬件/PCB 项目时,可使用此技能。

SKILL.md
--- frontmatter
name: easyeda2kicad
description: >-
  Download KiCad footprints and symbols from LCSC/EasyEDA for JLCPCB PCBA projects. Use when: (1)
  User asks to download KiCad footprints or symbols from LCSC, (2) User provides LCSC part numbers
  (e.g., C3975094, C2927029), (3) User is setting up a KiCad project for JLCPCB assembly, (4) User
  needs exact symbol-footprint combinations for PCBA, or (5) User is working on hardware/PCB
  projects requiring component libraries from JLCPCB.

easyeda2kicad - Download KiCad Libraries from LCSC/EasyEDA

Download KiCad footprints and symbols from LCSC/EasyEDA for JLCPCB PCBA projects.

Tool Overview

easyeda2kicad.py downloads KiCad libraries from LCSC/EasyEDA database:

  • Footprints (.kicad_mod) - Physical PCB pads for PCB Editor
  • Symbols (.kicad_sym) - Schematic symbols for Schematic Editor
  • 3D Models (.step, .wrl) - Optional 3D visualization

Critical: You need BOTH footprints AND symbols for complete KiCad design.

Installation Check

Before downloading, verify installation:

bash
easyeda2kicad --version

If not installed:

bash
pip install easyeda2kicad

Download Commands

Recommended: Download Both Footprint and Symbol

Always use this for JLCPCB PCBA projects to ensure exact symbol-footprint combinations:

bash
easyeda2kicad --lcsc_id <LCSC_ID> --footprint --symbol

Example:

bash
# CH224D USB-PD controller
easyeda2kicad --lcsc_id C3975094 --footprint --symbol

# USB-C connector
easyeda2kicad --lcsc_id C2927029 --footprint --symbol

# Passive components (capacitors, resistors, LEDs)
easyeda2kicad --lcsc_id C7432781 --footprint --symbol  # 10µF capacitor
easyeda2kicad --lcsc_id C23138 --footprint --symbol    # 330Ω resistor

Overwrite Existing Files

If files already exist:

bash
easyeda2kicad --lcsc_id <LCSC_ID> --footprint --symbol --overwrite

Download Only Footprint or Symbol

bash
# Footprint only
easyeda2kicad --lcsc_id <LCSC_ID> --footprint

# Symbol only
easyeda2kicad --lcsc_id <LCSC_ID> --symbol

Include 3D Models

bash
easyeda2kicad --lcsc_id <LCSC_ID> --footprint --symbol --3d

Download Output Locations

Footprints

code
~/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/
└── *.kicad_mod

Each footprint is a separate .kicad_mod file.

Symbols

code
~/Documents/Kicad/easyeda2kicad/
└── easyeda2kicad.kicad_sym

Important: All symbols are added to a SINGLE .kicad_sym file (not separate files).

Copying to Project

After downloading, copy files to project directories:

Standard Project Structure

code
<project-root>/
├── footprints/
│   └── kicad/
│       └── *.kicad_mod          # Copy footprints here
└── symbols/
    └── <project-name>.kicad_sym # Copy symbols here

Copy Commands

bash
# Copy footprints (specific files)
cp ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/<filename>.kicad_mod \
   <project-root>/footprints/kicad/

# Copy symbols (entire file)
cp ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.kicad_sym \
   <project-root>/symbols/<project-name>.kicad_sym

Example for multiple footprints:

bash
# Copy all footprints at once
cp ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/*.kicad_mod \
   /path/to/project/footprints/kicad/

Complete Workflow for Multiple Components

When user requests multiple components, use this pattern:

bash
# 1. Change to download directory
cd ~/Documents/Kicad/easyeda2kicad

# 2. Download all components
easyeda2kicad --lcsc_id C3975094 --footprint --symbol --overwrite
easyeda2kicad --lcsc_id C2927029 --footprint --symbol --overwrite
easyeda2kicad --lcsc_id C7432781 --footprint --symbol --overwrite
# ... etc

# 3. Copy footprints to project
cp ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/*.kicad_mod \
   <project-root>/footprints/kicad/

# 4. Copy symbols to project
cp ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.kicad_sym \
   <project-root>/symbols/<project-name>.kicad_sym

Verifying Downloads

After copying, verify files exist:

bash
# List footprints
ls -lh <project-root>/footprints/kicad/*.kicad_mod

# Check symbol library size
ls -lh <project-root>/symbols/<project-name>.kicad_sym

# Count symbols in library
grep -c '(symbol "' <project-root>/symbols/<project-name>.kicad_sym

Finding LCSC Part Numbers

LCSC part numbers start with 'C' followed by digits (e.g., C3975094).

Where to find them:

  • User's Bill of Materials (BOM)
  • LCSC.com - Search by part name
  • EasyEDA.com - Component library
  • User-provided specifications

Common Part Categories

Active Components (Always download both)

  • ICs (USB-PD controllers, buck converters, regulators)
  • Connectors (USB-C, pin headers)
  • Diodes (Schottky, TVS, ESD protection)

Passive Components (Download both for JLCPCB PCBA)

  • Capacitors (ceramic, electrolytic)
  • Resistors (all values)
  • LEDs (indicator lights)

Note: For JLCPCB PCBA, always download both footprint and symbol even for passive components to ensure exact package matching.

Troubleshooting

Error: "easyeda2kicad: command not found"

bash
# Check installation
which easyeda2kicad

# Try Python module form
python -m easyeda2kicad --version

# Reinstall if needed
pip install easyeda2kicad

Error: "Part not found"

  • Verify LCSC ID is correct (starts with 'C')
  • Check part exists on LCSC.com
  • Try EasyEDA ID instead with --easyeda_id

Error: "Footprint already exists"

Use --overwrite flag:

bash
easyeda2kicad --lcsc_id <LCSC_ID> --footprint --symbol --overwrite

Download timeout or failure

  • Check internet connection
  • Retry (server may be temporarily down)
  • Use --full for detailed error messages:
bash
easyeda2kicad --lcsc_id <LCSC_ID> --footprint --full

Error: "Failed to fetch data from EasyEDA API"

Common for passive components (capacitors, resistors, LEDs) - Many JLCPCB parts exist but don't have symbols in EasyEDA's database.

Solution: Use Generic KiCad Symbols

  1. Download footprint only (if available):

    bash
    easyeda2kicad --lcsc_id <LCSC_ID> --footprint --overwrite
    
  2. Use KiCad's built-in generic symbols:

    • Capacitors: Device:C
    • Resistors: Device:R
    • LEDs: Device:LED
    • Inductors: Device:L
  3. Pair with downloaded footprint:

    • Symbol: Generic KiCad symbol (e.g., Device:C)
    • Footprint: Downloaded or generic (e.g., C0805.kicad_mod)

Example workflow for 22nF capacitor (C7393941):

bash
# Try to download (may fail for symbol)
easyeda2kicad --lcsc_id C7393941 --footprint --overwrite

# If symbol download fails:
# 1. Use KiCad generic symbol: Device:C
# 2. Use footprint: C0805.kicad_mod (or downloaded footprint)
# 3. Keep LCSC part number C7393941 in BOM for JLCPCB assembly

This is standard practice - Passive components often use generic symbols with specific footprints. The LCSC part number in the BOM ensures correct component ordering for PCBA.

Expected Output

Successful download shows:

code
-- easyeda2kicad.py v0.8.0 --
[INFO] Created Kicad symbol for ID : C3975094
       Symbol name : CH224D_C3975094
       Library path : ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.kicad_sym
[INFO] Created Kicad footprint for ID: C3975094
       Footprint name: QFN-20_L3.0-W3.0-P0.40-BL-EP1.7
       Footprint path: ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/...

Batch Download Example

For a complete stage (e.g., USB-PD stage with 9 components):

bash
cd ~/Documents/Kicad/easyeda2kicad

# Download all components for USB-PD stage
for lcsc_id in C3975094 C2927029 C7432781 C49678 C6119849 C705785 C23186 C23138 C2286; do
  echo "Downloading $lcsc_id..."
  easyeda2kicad --lcsc_id $lcsc_id --footprint --symbol --overwrite
done

# Copy all to project
cp easyeda2kicad.pretty/*.kicad_mod <project>/footprints/kicad/
cp easyeda2kicad.kicad_sym <project>/symbols/<project>.kicad_sym

Important Notes for Claude

  1. Always download BOTH footprint and symbol unless user specifically requests only one
  2. Use --overwrite when downloading multiple components to avoid conflicts
  3. Run downloads from ~/Documents/Kicad/easyeda2kicad directory for consistency
  4. Copy files separately - footprints are individual files, symbols are a single file
  5. Verify after copying by listing files in project directories
  6. Inform user of symbol names so they can find them in KiCad

Quick Reference

TaskCommand
Download botheasyeda2kicad --lcsc_id <ID> --footprint --symbol
Overwrite existingAdd --overwrite flag
Include 3D modelAdd --3d flag
Check installationeasyeda2kicad --version
Copy footprintscp ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/*.kicad_mod <project>/footprints/kicad/
Copy symbolscp ~/Documents/Kicad/easyeda2kicad/easyeda2kicad.kicad_sym <project>/symbols/<name>.kicad_sym

References