How to Draw a Circuit Diagram using KiCad for Beginners
Created on: 15 September 2017
Want to draw your first electronic circuit using a computer and EDA software? This tutorial shows how to draw a circuit diagram using KiCad for beginners.
KiCad is a free and open source Electronic Design Automation (EDA) software package used to draw schematics (know as schematic capture) and for PCB design and layout. It is a CAD package for electronic circuits and is available for Linux, Windows and Mac OS X platforms.
Draw a simple beginners circuit using KiCad schematic capture software and export it for displaying in documents and on the web in this tutorial. Below is the circuit diagram drawn in this tutorial. The circuit uses a 555 timer IC to flash or blink an LED.
Before starting you will need to install KiCad on your computer. Follow these tutorials for installing KiCad on different systems:
- Install KiCad for Windows – install the latest stable release of KiCad for Windows tutorial.
- Install KiCad for Linux – install the latest stable release of KiCad in Linux tutorial.
- Install KiCad on OS X – install the latest stable release of KiCad for OS X.
Start a New KiCad Project
The tutorial steps below show how to start and name a new KiCad project as well as how to choose a folder to save the project to.
Although the screen shots in this tutorial are taken on a Windows system, KiCad windows and dialog boxes will look similar on other operating systems. Some differences will be the position of controls in dialog boxes – some controls will appear at the bottom of Windows dialog boxes but may appear at the top on the same dialog box in Linux. Other differences may be the names of buttons and labels, e.g. in the new project dialog box, Linux has a "Create Folder" button, but windows has a "New Folder" button that does the same thing.
How to Start a New KiCad Project
Start KiCad and create a new project by either clicking the Create New Project icon on the top toolbar (highlighted by a red dot in the image below), or by selecting File → New Project → New Project from the top menu. The keyboard shortcut Ctrl + N can also be used to create a new KiCad project.
Name the New KiCad Project
After starting a new KiCad project, you will be presented with a "Create New Project" dialog box that requires you to give the project a name.
It is suggested to create a new directory or folder with a name like circuits or kicad to save all KiCad projects to. This folder can be created in the Documents folder in Windows or in your home folder in Linux. Each project should then have its own sub-folder or subdirectory in the main folder.
For this tutorial a folder called circuits is created and a sub-folder that contains the new project is created in the circuits folder. Both the sub-folder and project name are 555-flasher. These folders can be created from within the Create New Project dialog box by using the New folder button (or the Create Folder button in Linux). Create the folders and name the project in the dialog box. Click the Save button when done.
Now all new KiCad projects can be saved in the circuits folder. You will need to create a new folder in the circuits folder for each new KiCad project. It is suggested to give the same name to each new project and project folder.
KiCad Project Files
After creating the new project, the project folder will contain a project file (555-flasher.pro), a schematic file (555-flasher.sch) and a PCB file (555-flasher.kicad_pcb). In the next step the schematic file is opened so that the circuit diagram can be drawn.
How to Draw a Circuit Diagram using KiCad
Open the new project's schematic by clicking the Eeschema button on the second toolbar in KiCad as shown highlighted with a red dot in the image below. Eeschema can also be started by using the top Tools menu or the Ctrl + E keyboard shortcut.
After clicking the Eeschema button, the project's schematic is opened in the Eeschema editor. Maximize the Eeschema window to make it easier to see the circuit that will be drawn.
By default the schematic has a page outline and borders that have numbers across the top and bottom and letters down the sides. A title block can be seen in the bottom right of the schematic
Zooming and Fitting the Schematic
Press the Home button on the keyboard to fit the schematic to the Eeschema window. This is useful if the schematic is zoomed in or out too much and you want to fit it to the window to see the whole page.
- Zoom in: use the mouse scroll wheel to scroll up, or use the keyboard F1 key to zoom in.
- Zoom out: use the mouse scroll wheel to scroll down or use the keyboard F2 key to zoom out.
- Fit the schematic to the window: press the Home key any time to fit the schematic to the window.
Scrolling the Schematic
When zoomed in to a schematic, scroll bars will appear below and to the right of the schematic that can be used to scroll left and right, and up and down.
The mouse can also be used to scroll the schematic.
- Scroll left and right: hold down the Ctrl key and use the mouse scroll wheel to scroll left and right. Scroll down for left and up for right.
- Scroll up and down: hold down the Shift key and use the mouse scroll wheel to scroll up and down.
Placing a Part in the Schematic
Press the A key on the keyboard to bring up the Choose Component dialog box that is used to place a schematic symbol in KiCad. Alternatively click the "Place component" icon on the right vertical toolbar (third icon from top) and then click on the schematic page.
In the Filter field of the Choose Component dialog box, type 555. Click LM555 to select the LM555 timer IC and then click the OK button as shown in the image below.
You will now be able to move the LM555 timer IC symbol around with your mouse cursor. A single left mouse click will place the symbol on the page. Place the symbol as near as you can get it to the middle of the schematic page. If the page is not fitted to the Eeschema window, first press the Home key.
Placing Additional Parts in the Schematic
Three resistor must now be placed. They have the following values:
Zoom in to the LM555 part on the schematic before placing the resistors. Follow the instructions below to place the resistors near the LM555, but not too close.
Placing Multiple Parts of the Same Type
Hit the A key to bring up the Choose Component dialog box again. Type resistor in the filter field and find the resistor that has the name R in the component list. Click the R resistor to select it and then click the OK button.
Before clicking to place the resistor, press the V keyboard key to edit the resistor's value. In the dialog box that pops up replace the R in the Text field with the text 1k. Click the OK button. Click on the schematic to place the resistor.
To place the next resistor, simply press the Insert keyboard key. Press the V key again and change the new resistor value to 4k7 in the text field.
Press the Insert key again to place the third resistor. Use the V key to change the resistor value to 10k.
Fixing Mistakes and Editing
To delete a component that you accidentally placed, hover the mouse cursor over the component symbol and press the Delete key.
If you pressed the Insert key to place another component of the same type but don't want to, then press the Esc. The component will then disappear from your mouse cursor.
To change the value of a resistor if it is already placed, hover the mouse cursor over the resistor symbol and press the V key.
Move a part that has been placed by hovering the mouse cursor over the part and pressing the M keyboard key.
Place the Electrolytic Capacitor
Hit the A keyboard key again to bring up the Choose Component dialog box. Type capacitor in the filter field. Find CP in the component list and click it to select it. Click the OK button.
Change the value of the capacitor to 100uF using the V key. Place the capacitor near the LM555.
Place a Non-polarised Capacitor
Using the same method as above, search for and place a non-polarised capacitor named C after filtering for capacitor. Change the value of the capacitor to 10n.
Place a LED
Place the final component symbol – a LED. Search for LED in the Choose Component dialog box and place the LED_ALT part. Don't change the LED value.
Place Power Ports
The schematic needs a power and ground port that shows where power is to be connected to the circuit.
Press the P keyboard key to bring up the Choose Component dialog box with a selection of power ports. Use the filter field to search for 9V. Select and place the +9V schematic symbol.
Press the P key again and filter for GND. Select and place the GND symbol.
Finished Placing Parts
After following the above KiCad tutorial steps your schematic should look something like the following.
Positioning Parts in KiCad Schematic
The parts that have been placed around the LM555 must now be moved into position before they can be wired in the circuit.
Moving and Rotating Parts
To move a part, hover the mouse cursor over the part and then press the M keyboard key. To rotate a part in 90 degree steps, press the R key.
When pressing M to move a part, a menu may pop up asking what you want to move. This is because the text of a part such as its value can also be moved using the same method. Just select the part on the menu. To avoid this message, try to pick up a part by one of its pins.
Moving the Parts into Position
Look at the image below and move the parts into the positions shown. The following steps give a guide to moving the parts.
- Move the 10k resistor between pin 6 and 7 of the LM555, but place the resistor to the right of these pins leaving enough space to wire them to the resistor later.
- Move the 4k7 resistor above the 10k resistor. Align the bottom pin of this resistor with the top of pin 8 of the LM555.
- Move the capacitors to the positions shown.
- Move the 1k resistor next to the 10k resistor.
- Move the LED below the 1k resistor. Press the R key multiple times while moving the LED to rotate it to the correct orientation.
- Move the +9V power port above pin 8 of the LM555 and in line with it. Place this part higher than the 4k7 resistor.
- Move the GND power port below pin 1 of the LM555 and in line with it. Place it lower than the bottom pins of the LED and capacitors.
Wiring or Connecting Parts in KiCad
To connect the end of a part pin to another part pin, hover the mouse cursor over the end of one pin and press the W keyboard key. Now move the cursor over the end of the pin to connect to and press the W key again. The two pins should connect with a wire as shown below.
In the image below, pin 8 of the LM555 was wired to the +9V power port.
Wiring with the Mouse and Editing Wires
Wiring Tip: after you have pressed the W key for the first time, you will see that KiCad is now in wiring mode by looking at the "Place wire" icon on the right toolbar – hover the mouse cursor over the toolbar icons to see what they are.
Once in wiring mode, the mouse can be used to do the wiring instead of using the W key. Click on a pin to start a wire and click on the destination pin to end the wire.
Deleting a Wire: hover the mouse cursor over the wire to delete and press the Delete key.
Bending Wires: when wiring pins in a circuit the wire will automatically bend at a 90 degree angle when needed. If it bends in the wrong direction, you will need to move the mouse, click to anchor the wire at the mouse click and then move the mouse again to the destination pin. In this way the wire can be drawn in the desired direction and shape.
Finishing the Wiring
Using the mouse, wire the circuit shown below. The following tutorial steps are a guide to complete the wiring.
- After wiring pin 8 of the LM555 to the +9V power port as shown above, do the same to wire pin 1 of the LM555 to the GND power port.
- Wire the top of the 10n capacitor to pin 5 of the LM555. You will notice that the wire automatically gets a 90 degree bend when you move the mouse cursor from the capacitor pin to the LM555 pin.
- Wire the top of the 100uF capacitor to pin 2 of the LM555.
- Wire the bottom of the 100uF capacitor to the wire just above the GND port. When you click on the wire above the GND symbol, a connecting node is automatically placed. A node is the small filled circle that shows that 3 or more wires are connected.
- Wire the bottom of the 10n capacitor to the wire directly below it that connects to GND. A node will automatically appear again.
- Connect the 4k7 resistor to the 10k resistor.
- Connect pin 3 of the LM555 to the 1k resistor. You will notice that you have to cross the wire that was just placed between the 4k7 and 10k resistors. No node is inserted because these wire cross over, but don't connect.
- Connect the 1k resistor to the anode of the LED. Connect the cathode of the LED to the node just above the GND symbol.
- Join the top of the 4k7 resistor to just below the +9V port symbol.
- Join pin 7 of the LM555 to the top of the 10k resistor and pin 8 of the LM555 to the bottom of the 10k resistor. You will need to do an intermediate mouse click after starting a wire on pin 7 so that it bends in the right direction. The same must be done for pin 6.
- Join pin 4 of the LM555 to pin 8 of the LM555 at the node below the +9V power port.
- Join pin 6 of the LM555 to pin 2 of the LM555, just above the 100uF capacitor.
Annotating the Schematic
Annotations are the part numbers of components in a circuit, e.g. R1, R2, R3, etc. for resistors. These part numbers are known as reference designators. Use the "Annotate schematic components" icon on the top toolbar to automatically annotate the schematic.
Automatically Annotating Components in KiCad
In the Annotate Schematic dialog box that pops up, leave the default settings and click the Annotate button. In the confirmation dialog box that pops up, click the OK button.
You will notice that each component now has a unique reference designator.
Neatening the Annotations
Hover the mouse cursor over one of the resistor reference designators and press the M key to move it. Make sure that you don't move the component. If you accidentally start moving the component, press the Esc keyboard key.
While moving the reference designator, press the R key to rotate it horizontally and then place it neatly next to its component.
You may notice that the reference designator text can't be placed at an optimal position, but is either too far away from the component, or too close. This is because the text sticks to the current grid. To remedy this, first change the grid size.
Change the grid size by right-clicking on the schematic and selecting a smaller grid size under the Grid Select menu item on the menu that pops up. Choose a grid size of 25.00 mils for example, now try to place the reference designator text neatly.
Do the same for the other two resistors.
Hiding Schematic Part Attributes
The LED has some ugly text "LED_ALT" that should be hidden. Hover the mouse cursor over the LED_ALT text and press the E key to bring up the "Edit Value Field" dialog box. Click the Invisible checkbox in the dialog box to hide the text and then click the OK button.
Finally move the LED reference designator. Your schematic should now look similar to the following image.
Now that the drawing of the schematic is finished, it can be exported to different formats as explained below.
Exporting the Circuit Diagram for Documents and Web
Circuits can be exported into different formats for displaying in documents and on the web. For example SVG format can be used in documents and on the web. KiCad circuits can also be exported to PDF and several other formats.
To export a circuit, use the Plot facility. On the top menu bar, select File → Plot → Plot. In the dialog box that pops up, the Output directory field can be left blank. Leaving this field blank will save the exported file to the current project's folder.
Uncheck the Plot border and title block to export the circuit from the schematic page without the border and title block. In the Format selection box, select the desired export format. SVG will work in web pages and should work in documents as well.
When finished selecting the plot setting, click the Plot Current Page button. You will find the exported file in the project folder.
If further editing of the file is needed, it can be edited in a program such as Inkscape.