my-kicad-lib/README.md

105 lines
3.6 KiB
Markdown

# My Personal KiCad Library
This library contains custom KiCad components that are not available in the standard library.
## 📁 Structure
```
my-kicad-libs/
├── symbols/ # Symbol libraries (.kicad_sym)
│ ├── Custom_Logic/
│ ├── Custom_Power/
│ ├── Custom_Connectors/
│ ├── Standard_Passives/ # Standard R/C/L with LCSC
│ ├── Standard_ICs/ # CAN, STM32, Standard ICs
│ ├── Logos_Artwork/
│ └── ...
├── footprints/ # Footprint libraries (.pretty)
│ ├── Custom_QFN.pretty/
│ ├── Custom_BGA.pretty/
│ ├── Logos_Silkscreen.pretty/
│ └── ... # Only custom footprints, standard uses KiCad libs
├── 3d_models/ # 3D models (.step, .wrl)
│ ├── Connectors/
│ ├── IC_Packages/
│ ├── Mechanical/
│ └── ...
├── datasheets/ # Datasheets (optional)
├── docs/ # Documentation
├── scripts/ # Automation scripts
└── templates/ # Project templates
```
## 🏷️ Naming Conventions
### Symbols (.kicad_sym files)
- **Format**: `[Category]_[Manufacturer]_[Series].kicad_sym`
- **Examples**:
- `Logic_TI_74HC.kicad_sym`
- `Power_LTC_Switching.kicad_sym`
- `Connectors_JST_XH.kicad_sym`
- `Standard_Passives.kicad_sym`
- `Standard_ICs.kicad_sym`
- `Logos_Personal.kicad_sym`
### Individual Symbol Names (within .kicad_sym)
- **Format**: `[Partnumber]_[Package]_[Variant]`
- **Format (Standard Passives)**: `[Value]_[Package]_[LCSC]`
- **Format (Standard ICs)**: `[Partnumber]_[Package]_[LCSC]`
- **Examples**:
- `TPS54340_HTSSOP-14_PowerPAD`
- `STM32F407VGT6_LQFP-100`
- `USB-C_16Pin_Receptacle`
- `100nF_0603_C14663` (Capacitor with LCSC#)
- `10k_0603_C25804` (Resistor with LCSC#)
- `MCP2515_SOIC-18_C55199` (CAN controller with LCSC#)
- `Logo_MyCompany_10mm`
### Footprints (.pretty folders)
**Note**: Standard passives and common ICs use existing KiCad footprints!
- **Format**: `[Category]_[Specification].pretty`
- **Examples**:
- `QFN_Custom.pretty`
- `USB_Connectors.pretty`
- `Logos_Silkscreen.pretty`
- `Mechanical_Standoffs.pretty`
## 📊 Standard Components with LCSC
### Standard Passives (R/C/L)
- **Purpose**: Consistent, cost-optimized parts with LCSC numbers
- **Footprints**: Use standard KiCad footprints (Resistor_SMD, Capacitor_SMD, etc.)
- **Symbols**: Custom symbols with LCSC part numbers and manufacturer data
- **Examples**: `100nF_0603_C14663`, `10k_0603_C25804`
### Standard ICs
- **Purpose**: Common ICs with LCSC numbers for automated assembly
- **Categories**:
- CAN transceivers: `MCP2515_SOIC-18_C55199`
- STM32 MCUs: `STM32F103C8T6_LQFP-48_C8734`
- Voltage regulators: `AMS1117-3.3_SOT-223_C6186`
- Op-amps: `LM358_SOIC-8_C7950`
- **Footprints**: Use standard KiCad footprints (Package_SO, Package_QFP, etc.)
## ⚙️ Best Practices
### Standard Component Strategy
1. **Use KiCad footprints**: Don't reinvent the wheel for standard packages
2. **LCSC integration**: Add LCSC numbers for cost optimization
3. **Manufacturer data**: Include MPN and manufacturer in symbols
4. **BOM automation**: Enable direct JLCPCB assembly integration
### Workflow
#### Adding New Standard Component
1. **Check KiCad**: Verify symbol/footprint don't exist in standard libraries
2. **LCSC lookup**: Find LCSC part number and basic part status
3. **Create symbol**: With complete manufacturer data and LCSC number
4. **Link footprint**: Use existing KiCad footprint
5. **Test**: Use in test circuit
6. **Document**: Add to documentation
---
*Last update: December 9, 2024*