KiCad β EDA Design Guide
Last reviewed: 2026-09-17
KiCad is a free and open-source Electronic Design Automation (EDA) suite for schematic capture, PCB layout, 3D visualization, and Gerber file generation. It's a professional-grade tool used by hobbyists, startups, and increasingly by industry engineers.
Overview
KiCad provides a complete workflow for printed circuit board design:
| Tool | Purpose |
|---|---|
| Eeschema | Schematic editor β draw circuit diagrams |
| Pcbnew | PCB layout editor β place components, route traces |
| Gerber Viewer | Preview manufacturing files |
| 3D Viewer | Visualize the board in 3D |
| Symbol/Footprint Editors | Create custom components |
| Calculator Tools | Track width, impedance, color codes |
Topics Covered
- Page setup β configuring the schematic page size and title block
- Measurement units β switching between mm and mils in Pcbnew
- Object selection β
Ctrl+Ato select all components on a layer - Object movement β
Mto move selected components
Basic Workflow
1. Create a new project (.pro / .kicad_pro)
2. Draw the schematic in Eeschema
- Place symbols (Resistor, Capacitor, ICs, etc.)
- Wire connections
- Assign footprints to each symbol
- Run ERC (Electrical Rules Check)
3. Annotate schematic (Tools > Annotate)
4. Generate netlist β open Pcbnew
5. Place components on board outline
6. Route traces (manual or auto-router)
7. Run DRC (Design Rules Check)
8. Add copper pours (ground planes)
9. View 3D model
10. Generate Gerber files for manufacturing
Key Concepts
Layers
| Layer | Purpose |
|---|---|
| F.Cu | Top copper (signal traces) |
| B.Cu | Bottom copper |
| F.Mask / B.Mask | Solder mask openings |
| F.SilkS / B.SilkS | Silkscreen labels |
| Edge.Cuts | Board outline |
| In1.Cu, In2.Cu | Inner layers (4+ layer boards) |
Design Rules
- Clearance β Minimum distance between copper features
- Track width β Depends on current (1 oz copper: ~1A per 10 mil for 10Β°C rise)
- Via size β Drill diameter + annular ring (typically 0.3 mm drill, 0.6 mm pad)
- Net classes β Assign different rules (power, signal, differential pairs)
Keyboard Shortcuts (Memory Aid)
- Ctrl+A β Select all on layer
- M β Move component
- R β Rotate (in Pcbnew)
- V β Add via while routing
- X β Route track (start routing)
- Delete β Remove selected item
- Add β Add component or footprint
- Ctrl+D β Duplicate
Tips for Beginners
- Start small β Design a simple LED + resistor circuit first
- Use existing libraries β KiCad ships with extensive symbol/footprint libraries
- Always run DRC β Don't send a board to manufacturing without checking
- Use ground planes β Pour copper on unused layers for better EMI/grounding
- Label everything β Silk screen reference designators, pin names, board version
- Check datasheets β Get footprint dimensions from component datasheets, not guesses
Resources
- KiCad Official Documentation
- KiCad Like a Pro (YouTube)
- Fritzing β KiCad workflow β migrating a Fritzing project into KiCad (external tooling workflow)
- Disk Cleanup β Ubuntu disk-space recovery, Docker and KVM/libvirt housekeeping
To-do
Status: incomplete. Still to write:
- Expand the four 'Topics Covered' bullets (schematic page setup, mmβmil switching, Ctrl+A layer selection, M to move) from one-line names into actual instructions with the dialogs and shortcuts involved.
- Add the worked example 'Tips for Beginners' promises β a simple LED + resistor board taken through Eeschema (symbols, wiring, footprints, ERC), netlist, Pcbnew placement and routing, DRC, ground pour and Gerber export.
- Document the 'Fritzing β KiCad workflow' listed in Resources, which is currently only a title with no steps or links.
- Add the missing operational detail to the 10-step 'Basic Workflow' outline (how to place symbols, assign footprints, run ERC/DRC, generate Gerbers).