Designing a PCB is a great skill to learn. We show you how easy it is with this beginners guide to EAGLE PCB design software.
There are times where the projects we design and publish require a custom designed circuit board.
Breadboards are great for most prototyping needs, and perf-type boards are great for quickly making small circuits, however, a purpose made PCB can ensure your project works as intended for permanent applications. A PCB enables you to efficiently position components on a board and connect them using tracks instead of wiring that can become messy. Thanks to multiple layers, PCBs can also save you a lot of space compared to perf-board methods.
We’ll guide you through designing a circuit board using EAGLE from Autodesk, the same team behind Fusion 360. In fact, EAGLE is now included with Fusion 360 subscription. You can get started using EAGLE for free for personal use (with limitations of course). Go to www.autodesk.com/eagle for all the details.
EAGLE is an easy to use Electronic Design Automation (EDA) software that enables makers and manufacturers to seamlessly design schematics and layout PCBs with component placement, track routing, etc. Think of it as mechanical CAD and electronics in one single platform, with intuitive PCB layout tools that make it easy.
EAGLE can run on OSX, Windows, and Linux, and can be downloaded by visiting: https://www.autodesk.com/products/eagle/free-download
Go ahead and install it on your computer. You will need to set up an Autodesk account, which is free if you are using the software for personal, non-commercial purposes.
Once you have created and named your first project, you can start creating a PCB in EAGLE.
Producing a schematic is, by far, the most difficult and time-consuming part of the PCB design process. However, it’s made much simpler thanks to the maker community who have provided fantastic libraries of parts for us to use. These libraries contain the component footprints for many common hobby level components, which will reduce the number of footprints you need to make yourself. At some point, you will likely need to create your own footprints and devices.
Whilst it is certainly not a straightforward task, in EAGLE, it’s something that gets easier the more you do it. Alas, it still takes a significant investment of time.
Note: This tutorial has been described using a Windows PC. Some commands or mouse actions may be different if you are using OSX.
We recommend that Makers first starting out with EAGLE, download and install the following libraries.
Sparkfun has an impressive and regularly updated library for EAGLE. It contains not only the majority of the modules Sparkfun sells, but also a vast array of common components the average maker will likely encounter. You can download the library here: https://github.com/sparkfun/SparkFun-Eagle-Libraries
Adafruit’s EAGLE library has not been updated in many years (at time of print), but it still contains a vast number of standard footprints for many of their modules, but also common components such as LEDs, etc. You can find the library on their GitHub page here: https://github.com/adafruit/Adafruit-Eagle-Library
Lastly, we like the DIYModules library from DIYModules.org. This library has plenty of common maker modules from buck regulators to lithium battery charging modules. You can download their library from here: https://www.diymodules.org/eagle
Once you have the libraries downloaded, you need to add them to your EAGLE install. To do this, you need to create a project. In the EAGLE control panel select File > NEW and select Project.
This image shows you the EAGLE control panel with the projects listed on the left side of the screen.
Name your project whatever you like but it’s good practice to name it accurately so you can find it easily in the future when you have many more designs to choose from.
Create a schematic inside of that project. To do this, right-click the project and select New > Schematic. This will open up the schematic editor which allows you to design the circuit schematic that is used to create the PCB.
In the toolbar, select Library > Open library manager.
In the Library manager window, select the Available tab and select Browse.
Navigate to the location of the library you downloaded. Choose the file/s, then select Open. This will add the selected libraries to the library manager.
Note: If the library is zipped, you will need to unzip it first using a program such as winzip or winrar, etc.
Repeat these steps to import all three of the libraries.
Due to space constraints it isn't possible to go through the board layout process for a complex board such as the one used in the Thermostat project from this issue rather, we will demonstrate how to create a very simple project. From this, you can apply the same skills to create a PCB for a much bigger project.
This is the main schematic creation window. You can now start creating a schematic by selecting the parts you wish to use.
The left of the screen has a series of buttons.
Find the button called Add parts (The name will pop up after you mouse over them.)
Clicking the Add Part button will allow you to search through the installed libraries. There is a search button, but we find it very hit-and-miss. We usually just search manually for the desired part. For this very brief introduction, we will keep it very simple and show you where to find each of the required parts.
To start, find the library called RCL. This library contains a huge number of passive components such as Resistors, Capacitors, and Inductors, hence the name RCL.
You will notice a list of choices under the RCL option. These are different European or American standards.
C-EU = European Capacitor Symbols
C Trimm = Trimmer Capacitor Symbols
C-US = American Capacitor Symbols
CPOL-EU = Polarized European Capacitor Symbols
CPOL-US = Polarized American Capacitor Symbols
R-EU = European Resistor Symbols
R-US = American Resistor symbols
You can use either of the EU or US variants, however, the schematic symbols may be different.
Regardless of the standard you use, both contain the same parts. For us, we will use the EU standard as that’s the standard Australia adopted. Select R-EU and you will see a huge selection of possible options.
Don’t be scared off here. All of these numbers actually mean something, and it’s not that difficult to follow. It simply gives you the size of the resistor attributes, as shown in the following screenshot.
Take for example the R-EU_0207/7:
- R-EU means it’s a resistor with the EU standard symbol.
- 02 means the resistor has a 2mm diameter.
- 07 means the resistor has a body length of 7mm.
- And /7 means the package has a 7mm minimum pin spacing, typically placed 7.62mm or 0.3".
i.e. normally placed in a 0.1" grid of hole placement.
This is assisted by an image of the PCB footprint shown in the top right corner.
This image shows an 0207/7 through-hole (THT) PCB footprint. Note the holes for the leads are nearly inline with the end of the resistor package.
We can see from this image and the specs, that a 7mm body length and a 7.62mm lead spacing means that the leads end very close to the end of the resistor body. We prefer to leave a little more of the lead exposed, as it’s easier to bend the leads into position. The little extra lead also allows you to attach an oscilloscope or multimeter probe to the leg to aid any faultfinding.
For those of us using 1/2 Watt or 1/4 Watt resistors, we tend to use the 0207/10. However, you should measure or get the dimensions of the part you intend to use from the datasheet.
Adding a Resistor
Let’s pick the 0207/10 and add one to the schematic. To do this, select the 0207/10 part and click OK (down in the bottom right corner). You can then click again in the blank area of the Schematic workplane to add the part. Once it’s added, press escape twice to leave the part selection.
Select the value button. This allows you to assign a value to the resistor. In our case, let’s give the resistor a 330Ω value. With the value button selected, click on the resistor and give it the value 330R.
Note: Rather than the Ohms symbol, it’s convention to simply use “R” for resistors less than 1000Ω, a “K” to denote thousands of Ohms or “M” to denote Millions of Ohms. So a 100Ω resistor is denoted as 100R and a 100,000Ω resistor is simply 100K a 100 Million Ohms is just 100M.
Adding an LED
With the resistor added and given a value, let’s add an LED to the schematic. Again select the add button but this time let's try the search tool. At the bottom search bar type in “5mm LED” and make sure the radial/tick box for Pads, Smds, and Description is checked.
This will bring up some libraries containing the text you searched for.
Let’s use the SparkFun-LED library for generic LEDs. Click on the arrow next to LED and you should see a small number of components.
The through-hole LEDs are simply given the value 3mm, 5mm or 10mm. The LEDs named LEDxxxx, such as LED1206, denotes a surface mount device (SMD), which has a 1.2mm body length and a 0.6mm body width.
Select the LED5MM component, click OK, and left-click again to place it in the schematic editor. You should now have your resistor and LED showing like so.
Adding a battery holder
Finally, the last component we need for the circuit is a power source. To make it all self-contained, let’s use a commonly available coin cell battery, the CR2032.
The 2032 denotes the physical dimensions of the battery. 20 means the battery has a diameter of 20mm and 32 means the battery is 3.2mm thick.
Let’s use the SparkFun battery library called SparkFun-Batteries to add a suitable component.
In this library, we can see a 20mm through-hole (PTH) component. The footprint in the top left looks very similar to the footprint of a device we have available.
This part looks very similar to the part we have from Core Electronics, but there is insufficient data on this listing to confirm that. As such, we will want to verify the part fits before sending our board design off to be manufactured. We will show you in another issue how we do this.
For now, let’s select this part and add it to the schematic. When placing the part, click the right mouse button to rotate it. Place the component as you see in the following image.
You can now finish the circuit using the Net button. This allows you to make all of the required connections. Simply click on the node you want to connect and the node you want it to connect to. You need to do this for all of the desired connections to make the schematic. When you're done, your screen should look something like this.
TRACES & NETS
Note: When you’re placing your nets, it’s perfectly fine to cross over an existing net. A crossed net is not an electrical connection unless it has a dot over the intersection.
As you can see in this diagram, there is an electrical connection on the left, but not the right.
With our schematic diagram complete, we can now design a board using the Board Editor. Switch to the board editor by selecting File > Switch to board.
This will open the Board design window which allows you to place the components and lay the copper traces.
To pick up and move a component, you need to select the move button in the top left corner. Let’s place the components in the bottom left of the PCB area, indicated by the yellow lines.
Note: We have deliberately made the design so the traces cross over each other so that we can demonstrate how to lay top and bottom tracks. Ideally, we would have placed the components in a way that we would only use one side of the PCB.
With the components in position, start laying the traces that will make the physical copper connections between the components.
Unlike in the schematic, two traces on the same layer must NOT cross each other. Crossing traces will create a short circuit between them. To avoid this, we have two layers of the PCB to work with, the top and bottom layer.
The current version of Eagle is so advanced that it will automatically re-route the wire if you're trying to get two traces to cross over on the same layer. However, we don't encourage you to rely on this as it's rarely an efficient path and should never be trusted for high frequency signals or for bus lines etc.
Note: It is possible to create boards with many more layers. It’s common to see boards with as many as 24 layers, and some manufacturers even claim the ability to create boards with 77 layers. The free version of EAGLE is limited to just two layers, which is more than enough for most hobbyist circuits and overkill for our example.
To lay your traces, select the board layer you wish to use from the top left menu.
Select the Route Airwire button. Airwire’s are the yellow lines connecting each of the components on the PCB. These wires are to indicate what pads are connected together and help you identify what needs routing. Once you have selected the Route Airwire tool, you will see more settings on the menu, which you can adjust if required.
The width option, as you can see, is set to 6. This is 6 mil, not 6mm. Mil refers to a thousandth of an inch, therefore, the trace width by default is about 0.15mm, which is extremely thin.
As a general rule, you should use as large a trace as practical for the available board space. This will reduce the trace resistance and inductance. Whilst larger traces can also increase the board capacitance, this isn't likely to be an issue for people starting out and who are not dealing with RF frequencies.
For our demonstration, we will use a 40 mil trace width, which will show nicely in images, and because we are not at all limited for board space. It will, of course, be overkill for the current expectations.
Note: A wider trace width is also very useful when you’re etching your own PCBs. The etching process is less precise, and it’s easy to accidentally etch away a thin trace with a lapse of judgment or leaving the board in the corrosive liquid too long. Wider tracks use less etchent and thus may etch faster as well!
With the Route Airwire tool selected, click and drag out a trace from the anode of the battery to the bottom of the 330Ω resistor, as shown here.
Do the same again to connect the anode of the LED to the 330Ω resistor, however, let’s create the trace on the bottom layer. Select bottom from the layer selection and lay the trace by first clicking on the LED anode. Once done it should look like this.
Connect the cathode of the battery to the cathode of the LED. However, we need to create a ‘via’ that will transfer the trace from the top layer of the board to the bottom layer.
With the bottom layer selected, click on the cathode of the battery holder and run a trace over the anode trace, and then click the left mouse button. Once done, it should look like this.
Change the layer in the menu to the top layer which will give you the ability to place a via on the end of the bottom trace you just made. This will create an electrical connection through the PCB substrate, joining the two layers. (Note: Using vias is not recommend for boards etched at home. It is essentially used when getting PCBs manufacture professionally.) Once that is done, finish routing the trace so that it is connected to the cathode of the LED.
Your PCB is now routed. We can now adjust the size of the PCB by selecting the move button. Move the yellow dimension makers to closely match the required size of the PCB.
As you will no doubt see, the circuit is obfuscated into requiring two cross-overs. You can simplify the circuit by moving and rotating components or traces to avoid these crossovers.
With your circuit routed, now is the perfect time to verify that the component footprints match the components you intend to use on the board. The best way we have found to do this is to print out the PCB onto regular A4 paper and to physically push the leads of the components into the paper. This will help ensure the holes made, line up with the footprints.
To do this, turn off the top and bottom copper layers, which will make the printout clean and easy to read. We do this by selecting the layer settings in the very top left corner.
This tool allows you to make specific layers visible or hidden in the work area. This is useful for when you’re laying out complex PCBs with components placed on both layers. You can isolate the component layers to the specific side you’re working on, providing a much cleaner work area.
In our case, we need to disable the top and bottom copper layers so that we only see the component footprints, the names, values, etc. To hide the layers, simply click on the eye icon to the left of the names, and click OK once you have set the ones you do or don’t want to see.
You can now print out the design on standard copy paper, and physically check the footprint matches your components. Select File > Print and print it as you would a normal document.
Replacing a component
During this process, we noticed that we had selected the wrong footprint for the resistor. We had wanted to select the 0207/10 but accidentally picked the 0207/7. To change this to the correct footprint, you can right-click on the resistor and select replace.
From here, navigate back to the RCL library, select the R-EU library and choose the 0207/10 footprint. This will replace the used component.
If your part is correct thumbs up, you’re better at following our directions than we are (or more importantly I am). You may notice when looking in the library list that you’re limited to only a few libraries. This is because the search function is still active. Be sure to cancel the search term so you can see the entire list of libraries.
You can then reprint the design and verify that the parts fit.
Producing board files
If you’re 100% happy with your design, you can run your CAM processor to get the Gerber files needed by your board manufacturer to create the PCB. Alternatively, you can print them out onto glossy paper, etc. to etch at home. We will explain both processes in a future edition.
What is a Footprint?
Footprints are, as the name suggests the physical shape and size of a component as the space it requires on the PCB surface. But behind the scenes it does much more.
The footprint consists of three main things:the package, the symbol and the physical footprint.
The package creates the electrical connections and assigns them a node (name used to Connect nets). For example, a simple LED has two nodes, the anode and the cathode. The package defines these nodes and assigns a solder pad for each.
The symbol is the symbol used to distinguish the component on the schematic.
Finally, the physical footprint shows the image which will be printed in silkscreen on the surface of the PCB, showing the manufacturer where the component will be placed. It helps the designer to ensure components have sufficient clearance when designing the PCB.
WHERE TO FROM HERE?
This is a very basic introduction to creating a PCB in EAGLE but, it should be enough to get you started. Like most software packages, there are plenty of features that we haven’t described here. Creating PCBs can get significantly more complex with even a small increase in circuit complexity. There are many things to take into consideration, especially when delving into digital and/or high frequency/RF boards. The best way to become confident with the software is to start using it. Start with simple designs just as we have described and work your way up.