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.
Scanned 9/8/2026
Install to Claude Code
npx -y skills add Takazudo/claude-resources --skill easyeda2kicad --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Easyeda2kicad?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/takazudo-easyeda2kicad)More formats (shields.io, HTML) on the badges page.
---
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
```
$HOME/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/
└── *.kicad_mod
```
Each footprint is a separate `.kicad_mod` file.
### Symbols
```
$HOME/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
```
<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 $HOME/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/<filename>.kicad_mod \
<project-root>/footprints/kicad/
# Copy symbols (entire file)
cp $HOME/Documents/Kicad/easyeda2kicad/easyeda2kicad.kicad_sym \
<project-root>/symbols/<project-name>.kicad_sym
```
**Example for multiple footprints:**
```bash
# Copy all footprints at once
cp $HOME/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 $HOME/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 $HOME/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/*.kicad_mod \
<project-root>/footprints/kicad/
# 4. Copy symbols to project
cp $HOME/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](https://www.lcsc.com/) - Search by part name
- [EasyEDA.com](https://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:
```
-- easyeda2kicad.py v0.8.0 --
[INFO] Created Kicad symbol for ID : C3975094
Symbol name : CH224D_C3975094
Library path : $HOME/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: $HOME/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/...
```
## Batch Download Example
For a complete stage (e.g., USB-PD stage with 9 components):
```bash
cd $HOME/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 `$HOME/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
| Task | Command |
|------|---------|
| Download both | `easyeda2kicad --lcsc_id <ID> --footprint --symbol` |
| Overwrite existing | Add `--overwrite` flag |
| Include 3D model | Add `--3d` flag |
| Check installation | `easyeda2kicad --version` |
| Copy footprints | `cp $HOME/Documents/Kicad/easyeda2kicad/easyeda2kicad.pretty/*.kicad_mod <project>/footprints/kicad/` |
| Copy symbols | `cp $HOME/Documents/Kicad/easyeda2kicad/easyeda2kicad.kicad_sym <project>/symbols/<name>.kicad_sym` |
## References
- [easyeda2kicad.py GitHub](https://github.com/uPesy/easyeda2kicad.py)
- [LCSC Component Search](https://www.lcsc.com/)
- [EasyEDA Component Library](https://easyeda.com/)
- [KiCad Documentation](https://docs.kicad.org/)
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!