Your First KiCad Project
This guide will walk you through creating a complete electronics project in KiCad, from initial concept to manufacturing-ready PCB. We’ll design a simple LED blinker circuit using a 555 timer IC.This tutorial assumes you have already installed KiCad and the standard component libraries. If not, see the Installation Guide first.
Project Overview
We’ll create an LED blinker circuit with these components:- 555 timer IC
- Resistors and capacitors for timing
- LED and current-limiting resistor
- Power connector
- Creating a new project
- Schematic capture in Eeschema
- Assigning footprints
- PCB layout in Pcbnew
- Generating manufacturing files
Create a New Project
Launch KiCad and Create Project
- Open KiCad Project Manager
- Launch KiCad from your applications menu
- You’ll see the main Project Manager window
- Create a New Project
- Click File > New Project or press
Ctrl+N(Windows/Linux) /Cmd+N(macOS) - Choose New Project (not “New Project from Template” for now)
- Click File > New Project or press
- Name Your Project
- Navigate to your desired project directory (e.g.,
~/Documents/kicad_projects/) - Enter project name:
led_blinker - Click Save
- Navigate to your desired project directory (e.g.,
Project Structure
- Schematic file (
.kicad_sch) - PCB file (
.kicad_pcb)
Draw the Schematic
Open Schematic Editor
- Launch Eeschema
- In Project Manager, double-click
led_blinker.kicad_sch - Or click the schematic editor icon in the toolbar
- Eeschema opens with a blank schematic sheet
- In Project Manager, double-click
- Configure Schematic Settings
- Click File > Schematic Setup
- Under General, set:
- Sheet size: A4
- Title: LED Blinker Circuit
- Revision: 1.0
- Click OK
Add Components to Schematic
KiCad uses keyboard shortcuts extensively for efficient workflow:
A- Add symbolM- Move itemW- Begin wireEsc- Cancel current operation
- Add the 555 Timer IC
- Press
A(Add Symbol) or click the “Add Symbol” button - In the search box, type:
555 - Select
Timer:NE555from the list - Click OK
- Move mouse to place component, click to place
- Press
Escto exit placement mode
- Press
- Add a Capacitor (C1 - Timing)
- Press
Aagain - Search for:
C - Select
Device:C(generic capacitor) - Place it to the right of the 555 timer
- Press
Esc
- Press
- Add Another Capacitor (C2 - Bypass)
- Press
A, search forC - Place below the 555 timer
- Press
Esc
- Press
- Add Resistors
- Press
A, search forR - Select
Device:R(generic resistor) - Place three resistors:
- R1 and R2: Near pins 7 and 6 of 555
- R3: For LED current limiting
- Press
Esc
- Press
- Add an LED
- Press
A, search forLED - Select
Device:LED - Place near R3
- Press
Esc
- Press
- Add Power Connector
- Press
A, search forConn_01x02 - Select
Connector:Conn_01x02(2-pin connector) - Place in upper left corner
- Press
Esc
- Press
- Add Power Symbols
- Press
P(Add Power Port) - Search for
VCC - Place near the positive supply pins
- Press
Pagain, search forGND - Place near ground connections
- Press
Esc
- Press
Wire the Components
- Connect Components with Wires
- Press
W(Begin Wire) or click the wire tool - Click on pin 8 of the 555 (VCC)
- Click on a VCC power symbol
- Continue wiring according to standard 555 astable circuit: 555 Timer Connections:
- Pin 1 (GND) → GND
- Pin 2 (TRIG) → Pin 6 (THRES)
- Pin 3 (OUT) → R3 → LED → GND
- Pin 4 (RESET) → VCC
- Pin 5 (CTRL) → C2 (0.01µF) → GND
- Pin 6 (THRES) → R2 → Pin 7
- Pin 7 (DISCH) → R1 → VCC
- Pin 8 (VCC) → VCC
To connect wires, click once to start, click again to create corners, and click on the destination pin to complete the connection. - Press
Add Component Values
- Edit Component Values
- Hover over R1, press
V(Edit Value) - Type:
10k - Press Enter
- Repeat for all components:
- R1:
10k - R2:
100k - R3:
330 - C1:
10µF - C2:
0.01µF - LED:
Red
- R1:
- Hover over R1, press
- Add Reference Designators
- KiCad auto-assigns references (R1, R2, C1, etc.)
- To manually edit, hover over component and press
E - These will be automatically numbered later
Annotate Schematic
- Assign Reference Designators
- Click Tools > Annotate Schematic
- Select Use entire schematic
- Keep default settings: Sequential numbering
- Click Annotate
- Click OK to confirm changes
Run Electrical Rules Check (ERC)
- Check for Errors
- Click Inspect > Electrical Rules Checker
- Click Run ERC
- Review any errors or warnings:
- ✅ No errors: Great! Continue to next step
- ⚠️ Warnings: Review each warning, most are informational
- ❌ Errors: Fix these before proceeding Common warnings you can ignore:
- “Power pin not driven by any output”
- “No input pin on net”
- Save Your Schematic
- Press
Ctrl+S(Windows/Linux) /Cmd+S(macOS) - Or click File > Save
- Press
Assign Footprints
Link Symbols to Physical Footprints
Each schematic symbol needs a corresponding PCB footprint (physical component package).-
Open Footprint Assignment Tool
- In Eeschema, click Tools > Assign Footprints
- Or click the footprint assignment icon in toolbar
- The CvPCB window opens
-
Assign Footprints to Components
Select each component on the left and assign footprints:
-
Apply and Save
- Click Apply, Save Schematic & Continue
- Close the footprint assignment window
- Return to Eeschema
-
Verify Footprint Assignments
- In Eeschema, hover over each component
- Press
Eto edit - Check that the Footprint field is populated
-
Save Schematic Again
- Press
Ctrl+S/Cmd+S
- Press
Create PCB Layout
Import to PCB Editor
- Open Pcbnew
- In Eeschema, click Tools > Update PCB from Schematic
- Or press
F8 - The Update PCB from Schematic dialog opens
- Import Components
- Click Update PCB
- New components are highlighted in green
- Click Close
- Pcbnew opens with all components floating
Define Board Outline
- Draw Board Edge
- Select Edge.Cuts layer from the Layers panel (right side)
- Press
Ctrl+Shift+Por click Place > Draw Rectangle - Draw a rectangle approximately 50mm x 40mm
- This defines your board physical size
The Edge.Cuts layer (magenta/pink) defines where the PCB manufacturer will cut the board.
Position Components
-
Arrange Components on PCB
- All components initially appear in a cluster
- Press
Mto move components - Arrange them logically:
- J1 (connector) at the edge for easy access
- U1 (555 timer) in the center
- Arrange R, C components around U1
- LED near the edge for visibility
-
Check Ratsnest
- Thin white lines (airwires/ratsnest) show electrical connections
- Minimize crossings by optimal component placement
- Try different arrangements to reduce trace complexity
Route Traces
-
Set Up Design Rules
- Click File > Board Setup
- Under Design Rules > Constraints:
- Minimum track width: 0.25mm (typical for DIY)
- Minimum clearance: 0.2mm
- Click OK
-
Route Copper Traces
- Press
Xto start routing - Click on a pad to start a trace
- Click to create corners
- Click on destination pad to complete
- Press
Escto cancel current route
- Route power (VCC, GND) with wider traces (0.5mm or more)
- Route signal traces with default width (0.25mm)
- Avoid sharp angles (use 45° turns)
- Keep traces as short as practical
- Press
-
Add Ground Plane (Optional but Recommended)
- Select B.Cu layer
- Press
Ctrl+Shift+Zor Place > Add Filled Zone - Click corners to define zone (usually entire board)
- Right-click and select Close Zone Outline
- In dialog:
- Layer: B.Cu
- Net: GND
- Clearance: 0.3mm
- Click OK
- Press
Bto rebuild filled zones
Ground planes improve electrical performance and reduce routing complexity by providing a common ground connection.
Add Text and Graphics
- Add Silkscreen Text
- Select F.Silkscreen layer
- Press
Ctrl+Shift+Tor Place > Add Text - Type: “LED Blinker v1.0”
- Position on an empty area
- Press
Eto edit size if needed
- Add KiCad Logo (Optional)
- Place > Add Footprint
- Search for:
KiCad-Logo - Select appropriate size
- Place on silkscreen layer
Run Design Rule Check (DRC)
- Check for Errors
- Click Inspect > Design Rules Checker
- Click Run DRC
- Review results:
- ✅ No errors: Perfect! Ready for manufacturing
- ❌ Errors: Fix each error before proceeding Common DRC errors:
- Clearance violation: Traces too close
- Unconnected items: Missing traces
- Track width: Trace too narrow
- Save Your PCB
- Press
Ctrl+S/Cmd+S - File > Save
- Press
View in 3D
Verify Physical Design
- Open 3D Viewer
- In Pcbnew, press
Alt+3or View > 3D Viewer - A 3D window opens showing your PCB
- In Pcbnew, press
- Inspect the 3D Model
- Rotate view: Click and drag
- Zoom: Mouse wheel
- Check:
- Component placement looks correct
- No physical collisions
- Board dimensions are appropriate
- Mounting holes aligned (if added)
- Export 3D Model (Optional)
- File > Export > STEP
- Save for mechanical CAD integration
- Useful for enclosure design
Generate Manufacturing Files
Create Gerber Files for Fabrication
PCB manufacturers require Gerber files to fabricate your board.-
Open Plot Dialog
- In Pcbnew, click File > Plot
- The Plot dialog opens
-
Configure Gerber Output
- Output directory:
gerbers/(relative to project) - Plot format: Gerber
- Include layers:
- ✅ F.Cu (Front Copper)
- ✅ B.Cu (Back Copper)
- ✅ F.SilkS (Front Silkscreen)
- ✅ B.SilkS (Back Silkscreen)
- ✅ F.Mask (Front Soldermask)
- ✅ B.Mask (Back Soldermask)
- ✅ Edge.Cuts (Board Outline)
For a 2-layer board, you only need F.Cu and B.Cu. 4+ layer boards require additional internal layers. - Output directory:
-
Plot Settings
- ✅ Use Protel filename extensions (recommended for most manufacturers)
- ✅ Include netlist attributes
- ✅ Subtract soldermask from silkscreen
- Coordinate format: 4.6, unit mm
-
Generate Plot Files
- Click Plot
- Gerber files are created in
gerbers/folder - Click Generate Drill Files
-
Generate Drill Files
- In the Drill Files dialog:
- Drill units: Millimeters
- Zeros format: Decimal format
- Drill file format: Excellon
- Click Generate Drill File
- Click Close
- In the Drill Files dialog:
Verify Gerber Files
- Open GerbView
- Return to KiCad Project Manager
- Click the GerbView icon
- File > Open Gerber Plot File(s)
- Select all
.gbrfiles in thegerbers/folder - File > Open Excellon Drill File(s)
- Select the
.drlfile
- Inspect Gerbers
- Toggle layers on/off in the Layers panel
- Verify:
- All copper traces present
- Silkscreen readable and not on pads
- Soldermask openings correct
- Drill holes in correct positions
- Board outline complete
Create Assembly Files
- Generate BOM (Bill of Materials)
- In Eeschema (schematic editor)
- Click Tools > Generate BOM
- Select an export plugin (CSV recommended)
- Click Generate
- Save as
led_blinker_bom.csv
- Generate Pick-and-Place File
- In Pcbnew
- File > Fabrication Outputs > Component Placement (.pos)
- Choose format: CSV
- Generate separate files for top and bottom
BOM and pick-and-place files are required if you’re ordering assembled PCBs. For DIY assembly, you only need the BOM.
What You’ve Accomplished
Congratulations! You’ve completed your first KiCad project:Schematic Design
Created a functional 555 timer circuit with proper connections and components
PCB Layout
Designed a 2-layer PCB with proper routing and ground plane
Design Verification
Ran ERC and DRC checks to ensure correctness
Manufacturing Files
Generated Gerber files ready for PCB fabrication
Bill of Materials
Here’s what you need to build this circuit:| Reference | Qty | Value | Package | Description |
|---|---|---|---|---|
| U1 | 1 | NE555 | DIP-8 | Timer IC |
| R1 | 1 | 10kΩ | Axial | Resistor |
| R2 | 1 | 100kΩ | Axial | Resistor |
| R3 | 1 | 330Ω | Axial | LED current limiting |
| C1 | 1 | 10µF | Radial | Electrolytic capacitor |
| C2 | 1 | 0.01µF | Disc | Ceramic capacitor |
| D1 | 1 | Red LED | 5mm | Light emitting diode |
| J1 | 1 | Conn_01x02 | 2.54mm | Power connector |
Ordering Your PCB
Yourgerbers/ folder contains everything needed for manufacturing:
Choose a Manufacturer
Popular PCB manufacturers:
- JLCPCB - Low cost, fast shipping
- PCBWay - Good quality, reliable
- OSH Park - US-based, purple PCBs
- Aisler - EU-based, good for small batches
Upload Gerbers
- Visit manufacturer website
- Click “Quote Now” or “Instant Quote”
- Upload your Gerber zip file
- Specify:
- Layers: 2
- Dimensions: Detected automatically
- Quantity: 5 (minimum for most)
- Thickness: 1.6mm
- Copper: 1 oz
- Color: Green (or your preference)
- Surface finish: HASL or ENIG
Circuit Operation
Your LED blinker circuit operates as follows:Next Steps and Advanced Topics
Multi-Sheet Schematics
Learn hierarchical design for complex projects with reusable sub-circuits
Custom Libraries
Create your own symbol and footprint libraries for frequently used components
4-Layer PCBs
Design multi-layer boards with dedicated power and ground planes
Python Scripting
Automate repetitive tasks and create custom tools using KiCad’s Python API
SPICE Simulation
Simulate circuit behavior before building with integrated ngspice
High-Speed Design
Learn about impedance control, differential pairs, and length matching
Common Beginner Mistakes
Forgetting to annotate schematic
Forgetting to annotate schematic
Always run Tools > Annotate Schematic before assigning footprints. Otherwise, components may have duplicate reference designators.
Not assigning footprints
Not assigning footprints
If you skip footprint assignment, Pcbnew won’t know what physical package to use. Every component needs a footprint.
Ignoring DRC errors
Ignoring DRC errors
DRC errors indicate real problems (traces too close, unconnected nets, etc.). Always fix errors before manufacturing.
Board outline too close to components
Board outline too close to components
Leave at least 3-5mm clearance between the board edge and components/traces for mechanical stability and manufacturing tolerances.
Silkscreen on pads
Silkscreen on pads
Silkscreen text on solder pads gets removed during manufacturing. Keep text away from pads and vias.
Incorrect power routing
Incorrect power routing
Power traces should be wider than signal traces. Use 0.5mm or more for VCC/GND connections, or use ground planes.
Troubleshooting
Schematic Issues
Solution: Press
Esc to cancel any active tool, then try again. Make sure you’re not in another editing mode.Solution: Try different search terms. For example, search “res” instead of “resistor”, or “cap” instead of “capacitor”.
Solution: Check that all components are properly connected with wires (not just visually overlapping). Ensure power symbols are used for VCC and GND.
PCB Issues
Solution: Make sure you’re on the correct layer (F.Cu or B.Cu). Press
PgUp/PgDn to switch layers during routing.Solution: Move traces farther apart or reduce trace width. Check Board Setup > Design Rules for minimum clearance values.
Solution: Press
B to rebuild all zones. Check that the zone is assigned to the GND net and has valid clearances.Resources and Learning
Official Documentation
Comprehensive manuals for all KiCad tools
KiCad Forum
Active community for questions and discussions
Demo Projects
Explore included demos in
/usr/share/kicad/demos/ for real-world examplesYouTube Tutorials
Search “KiCad tutorial” for video walkthroughs
Keyboard Shortcuts Reference
Eeschema (Schematic)
| Shortcut | Action |
|---|---|
A | Add symbol |
P | Add power symbol |
W | Begin wire |
M | Move item |
E | Edit properties |
V | Edit value |
R | Rotate |
X | Flip horizontal |
Y | Flip vertical |
Del | Delete item |
Ctrl+Z | Undo |
Ctrl+S | Save |
Pcbnew (PCB Layout)
| Shortcut | Action |
|---|---|
X | Route track |
V | Add via (while routing) |
M | Move item |
F | Flip to back |
R | Rotate |
E | Edit properties |
Del | Delete item |
PgUp/PgDn | Switch layer |
Ctrl+Shift+Z | Add filled zone |
B | Rebuild zones |
Alt+3 | 3D viewer |
Ctrl+Z | Undo |
Ctrl+S | Save |