PCB design software for everyone Included with a Fusion 360 for personal use subscription, EAGLE free download is a limited version for hobbyists including 2 schematic sheets, 2 signal layers, and an 80cm2 (12.4in2) board area. Eagle How-to¶ Quick guide on exporting PCB designs from Eagle and importing them into FlatCAM. This guide was made with Eagle version 7.2.0 Light and FlatCAM 8.2. Most designs start with schematics of your circuit: Then by clicking on File→Switch to board, the board editor is opened and you can complete your layout.
≡ PagesFavoritedFavorite34Previously on Using EAGLE
EAGLE's board designer is where a good portion of the magic happens. It's here where the dimensions of the board come together, parts are arranged, and connected by copper traces. In the board editor, the conceptual, idealized schematic you've designed becomes a precisely dimensioned and routed PCB.
In this tutorial we'll cover every step in EAGLE PCB design: from placing parts, to routing them, to generating gerber files to send to a fab house. We'll also go over the basics of EAGLE's board editor, beginning with explaining how the layers in EAGLE match up to the layers of a PCB.
Create a Board From Schematic
Before starting this tutorial, read through and follow along with the Using EAGLE: Schematic tutorial (not to mention the Setting Up EAGLE tutorial before that). The schematic designed in that tutorial will be used as the foundation for the PCB designed here.
To switch from the schematic editor to the related board, simply click the Generate/Switch to Board command -- (on the top toolbar, or under the File menu) -- which should prompt a new, board editor window to open. All of the parts you added from the schematic should be there, stacked on top of eachother, ready to be placed and routed.
The board and schematic editors share a few similarities, but, for the most part, they're completely different animals. On the next page, we'll look at the colored layers of the board editor, and see how they compare to the actual layers of a PCB.
Layers Overview
PCB composition is all about layering one material over another. The thickest, middle part of the board is a insulating substrate (usually FR4). On either side of that is a thin layer of copper, where our electric signals pass through. To insulate and protect the copper layers, we cover them with a thin layer of lacquer-like soldermask, which is what gives the PCB color (green, red, blue, etc.). Finally, to top it all off, we add a layer of ink-like silkscreen, which can add text and logos to the PCB.
EAGLE's Layers
The EAGLE board designer has layers just like an actual PCB, and they overlap too. We use a palette of colors to represent the different layers. Here are the layers you'll be working with in the board designer:
Color | Layer Name | Layer Number | Layer Purpose |
---|---|---|---|
Top | 1 | Top layer of copper | |
Bottom | 16 | Bottom layer of copper | |
Pads | 17 | Through-hole pads. Any part of the green circle is exposed copper on both top and bottom sides of the board. | |
Vias | 18 | Vias. Smaller copper-filled drill holes used to route a signal from top to bottom side. These are usually covered over by soldermask. Also indicates copper on both layers. | |
Unrouted | 19 | Airwires. Rubber-band-like lines that show which pads need to be connected. | |
Dimension | 20 | Outline of the board. | |
tPlace | 21 | Silkscreen printed on the top side of the board. | |
bPlace | 22 | Silkscreen printed on the bottom side of the board. | |
tOrigins | 23 | Top origins, which you click to move and manipulate an individual part. | |
bOrigins | 24 | Origins for parts on the bottom side of the board. | |
/ / Hatch | tStop | 29 | Top stopmask. These define where soldermask should not be applied. |
Hatch | bStop | 30 | Absent soldermask on the bottom side of the board. |
Holes | 45 | Non-conducting (not a via or pad) holes. These are usually drill holes for stand-offs or for special part requirements. | |
tDocu | 51 | Top documentation layer. Just for reference. This might show the outline of a part, or other useful information. |
To turn any layer off or on, click the 'Layer Settings...' button -- -- and then click a layer's number to select or de-select it. Before you start routing, make sure the layers above (aside from tStop and bStop) are visible.
Selecting From Overlapping Objects
Here's one last tip before we get to laying our board out. This is an interface trick that trips a lot of people up. Since the board view is entirely two-dimensional, and different layers are bound to overlap, sometimes you have to do some finagling to select an object when there are others on top of it.
Normally, you use the mouse's left-click to select an object (whether it's a trace, via, part, etc.), but when there are two parts overlapping exactly where you're clicking, EAGLE doesn't know which one you want to pick up. In cases like that, EAGLE will pick one of the two overlapping objects, and ask if that's the one you want. If it is, you have to left-click again to confirm. If you were trying to grab one of the other overlapping objects, right-click to cycle to the next part. EAGLE's status box, in the very bottom-left of the window, provides some helpful information when you're trying to select a part.
For example: In the GIF above, a VCC net overlaps another named Reset. We left-click once directly where they overlap, and EAGLE asks us if we meant to select VCC. We right-click to cycle, and it asks us instead if we'd like to select Reset. Right-clicking again cycles back to VCC, and a final left-click selects that as the net we want to move.
Whew! Enough pointers, let's lay out a PCB!
Arranging the Board
Create a Board From Schematic
If you haven't already, click the Generate/Switch to Board icon -- -- in the schematic editor to create a new PCB design based on your schematic:
The new board file should show all of the parts from your schematic. The gold lines, called airwires, connect between pins and reflect the net connections you made on the schematic. There should also be a faint, light-gray outline of a board dimension to the right of all of the parts.
Our first job in this PCB layout will be arranging the parts, and then minimizing the area of our PCB dimension outline. PCB costs are usually related to the board size, so a smaller board is a cheaper board.
Understanding the Grid
In the schematic editor we never even looked at the grid, but in the board editor it becomes much more important. The grid should be visible in the board editor. You can adjust the granularity of the grid, by clicking on the GRID icon -- . A 0.05' grid, and 0.005' alternate grid is a good size for this kind of board.
EAGLE forces your parts, traces, and other objects to 'snap' to the grid defined in the Size box. If you need finer control, hold down ALT on your keyboard to access the alternate grid, which is defined in the Alt box.
Moving Parts
Using the MOVE tool -- -- you can start to move parts within the dimension box. While you're moving parts, you can rotate them by either right-clicking or changing the angle in the drop-down box near the top.
The way you arrange your parts has a huge impact on how easy or hard the next step will be. As you're moving, rotating, and placing parts, there are some factors you should take into consideration:
- Don't overlap parts: All of your components need some space to breathe. The green via holes need a good amount of clearance between them too. Remember those green rings are exposed copper on both sides of the board, if copper overlaps, streams will cross and short circuits will happen.
- Minimize intersecting airwires: While you move parts, notice how the airwires move with them. Limiting criss-crossing airwires as much as you can will make routing much easier in the long run. While you're relocating parts, hit the RATSNEST button -- -- to get the airwires to recalculate.
- Part placement requirements: Some parts may require special consideration during placement. For example, you'll probably want the insertion point of the barrel jack connector to be facing the edge of the board. And make sure that decoupling capacitor is nice and close to the IC.
- Tighter placement means a smaller and cheaper board, but it also makes routing harder.
Below is an example of how you might lay out your board while considering those factors. We've minimized airwire intersections by cleverly placing the LEDs and their current-limiting resistors. Some parts are placed where they just have to go (the barrel jack, and decoupling capacitor). And the layout is relatively tight.
Adjusting the Dimension Layer
Now that the parts are placed, we're starting to get a better idea of how the board will look. Now we just need to fix our dimension outline. You can either move the dimensions lines that are already there, or just start from scratch. Use the DELETE tool -- -- to erase all four of the dimension lines.
Then use the WIRE tool -- ( -- to draw a new outline. Before you draw anything though, go up to the options bar and set the layer to 20 Dimension. Also up there, you may want to turn down the width a bit (we usually set it to 0.008').
Then, starting at the origin, draw a box around your parts. Don't intersect the dimension layer with any holes, or they'll be cut off! Make sure you end where you started.
That's a fine start. With the parts laid out, and the dimension adjusted, we're ready to start routing some copper!
Routing the Board
Routing is the most fun part of this entire process. It's like solving a puzzle! Our job will be turning each of those gold airwires into top or bottom copper traces. At the same time, you also have to make sure not to overlap two different signals.
Using the Route Tool
To draw all of our copper traces, we'll use the ROUTE tool-- -- (not the WIRE tool!). After selecting the tool, there are a few options to consider on the toolbar above:
- Layer: On a 2-layer board like this, you'll have to choose whether you want to start routing on the top (1) or bottom (16) layer.
- Bend Style: Usually you'll want to use 45° angles for your routes (wire bend styles 1 and 3), but it can be fun to make loopy traces too.
- Width: This defines how wide your copper will be. Usually 0.01' is a good default size. You shouldn't go any smaller than 0.007' (or you'll probably end up paying extra). Wider traces can allow for more current to safely pass through. If you need to supply 1A through a trace, it'd need to be much wider (to find out how much, exactly, use a trace width calculator).
- Via Options: You can also set a few via characteristics here. The shape, diameter, and drill can be set, but usually the defaults (round, auto, and 0.02' respectively) are perfect.
With those all set, you start a route by left-clicking on a pin where a airwire terminates. The airwire, and connected pins will 'glow', and a red or blue line will start on the pin. You finish the trace by left-clicking again on top of the other pin the airwire connects to. Between the pins, you can left-click as much as you need to 'glue' a trace down.
While routing it's important to avoid two cases of overlap: copper over vias, and copper over copper. Remember that all of these copper traces are basically bare wire. If two signals overlap, they'll short out, and neither will do what it's supposed to.
If traces do cross each other, make sure they do so on opposite sides of the board. It's perfectly acceptable for a trace on the top side to intersect with one on the bottom. That's why there are two layers!
If you need more precise control over your routes, you can hold down the ALT key on your keyboard to access the alternate grid. By default, this is set to be a much more fine 0.005'.
Placing Vias
Vias are really tiny drill holes that are filled with copper. We use them mid-route to move a trace from one side of the board to the other.
To place a via mid-route, first left-click in the black ether between pins to 'glue' your trace down. Then you can either change the layer manually in the options bar up top, or click your middle mouse button to swap sides. And continue routing to your destination. EAGLE will automatically add a via for you.
Route Clearance
Make sure you leave enough space between two different signal traces. PCB fabricators should have clearly defied minimum widths that they'll allow between traces -- probably around 0.006' for standard boards. As a good rule-of-thumb, if you don't have enough space between two traces to fit another (not saying you should), they're too close together.
Ripping Up Traces
Much like the WIRE tool isn't actually used to make wires, the DELETE tool can't actually be used to delete traces. If you need to go back and re-work a route, use the RIPUP tool -- -- to remove traces. This tool turns routed traces back into airwires.
You can also use UNDO and REDO to back/forward-track.
Route Away!
That's about all the simple rules there are. Go have the time of your life solving the routing puzzle! You may want to start on the closest, easiest traces first. Or, you might want to route the important signals -- like power and ground -- first. Here's an example of a fully-routed board:
See if you can do a better job than that! Make your board smaller. Or try to avoid using any vias.
After you feel like the routing is done, there are a few checks we can do to make sure it's 100% complete. We'll cover those on the next page.
Or Use the Autorouter (Cheater!)
If you're short on time, or having trouble solving the routing puzzle, you can try loading up EAGLE's Autorouter -- -- to see if it can finish the job. Open up the autorouter, don't worry about these other tabs for now, just click OK.
If you don't like the job the autorouter did, you can quickly hit Undo to go back to where you were.
The autorouter won't always be able to finish the job, so it's still important to understand how to manually route pads (plus manual routes look much better). After running the autorouter, check the bottom-left status box to see how it did. If it says anything other than 'OptimizeN: 100% finished', you've still got some work to do. If your autorouter couldn't finish the job, try turning Routing Grid down from 50mil 10mil.
There are tons of optimizations and settings to be made in the autorouter. If you want to dig deeper into the subject, consider checking out EAGLE's manual where an entire chapter is devoted to it.
Checking for Errors
Before we package the design up and send it off to the fabrication house, there are a few tools we can use to check our design for errors.
Ratsnest -- Nothing To Do!
The first check is to make sure you've actually routed all of the nets in your schematic. To do this, hit the RATSNEST icon -- -- and then immediately check the bottom left status box. If you've routed everything, it should say 'Ratsnest: Nothing to do!'
As denoted by the exclamation mark, having 'nothing to do' is very exciting. It means you've made every route required.
If ratsnest says you have 'N airwires' left to route, double check your board for any floating golden lines and route them up. If you've looked all over, and can't find the suspect airwire, try turning off every layer except 19 Unrouted.
Design Rule Check
Once you're done routing there's just one more check to be made: the design rule check (DRC). For this step, we recommend you use the SparkFun design rules, which you can download here. To load up the DRC, click the DRC icon -- -- which opens up this dialog:
The tabs in this view (Layers, Clearance, Distance, etc.) help define a huge set of design rules which your layout needs to pass. These rules define things like minimum clearance distances, or trace widths, or drill hole sizes...all sorts of fun stuff. Instead of setting each of those manually, you can load up a set of design rules using a DRU file. To do this, hit Load... and select the SparkFun.dru file you just downloaded. The title of the window will change to 'DRC (SparkFun)', and some values on the other tabs will change. Then hit the Check button.
Again, look down to the bottom-left of the editor. If your design is perfect, you should see 'DRC: No errors.' But if things didn't go so swell, you'll instead be greeted by the dreaded 'DRC Errors' window. The error window lists all of the open errors, and it also highlights where the error is. Click on any of the errors listed, and EAGLE will point to the offender.
There are all sorts of errors that the DRC can find, but here are some of the most common:
- Clearance: A trace is too close to either another trace or a via. You'll probably have to nudge the trace around using the MOVE tool.
- Overlap: Two different signal traces are overlapping each other. This will create a short if it's not fixed. You might have to RIPUP one trace, and try routing it on the other side of the board. Or find a new way for it to reach its destination.
- Dimension: A trace, pad, or via is intersecting with (or too close to) a dimension line. If this isn't fixed that part of the board will just be cut off.
Once you've seen both 'No airwires left!' and 'DRC: No errors.', your board is ready to send to the fab house, which means it's time to generate some gerber files. Before we do that though, let's add some finishing touches to the design.
Finishing Touches
Adding Copper Pours
Copper pours are usually a great addition to a board. They look professional and they actually have a good reason for existing. Not to mention they make routing much easier. Usually, when you're adding a copper pour it's for the ground signal. So let's add some ground pours to the design.
Start by selecting the POLYGON tool -- . Then (as usual), you'll need to adjust some settings in the options bar. Select the top copper (1) layer. Also adjust the Isolate setting which defines how much clearance the ground pour gives other signals, 0.012' for this is usually good.
Next, draw a set of lines just like you did the dimension box. In fact, just draw right on top of the dimension lines. Start drawing at the origin, trace all the way around, and finish back at the same spot. A dotted red box should appear around the dimension of the board.
After you've drawn the polygon, you have to connect it to a net using the NAME tool -- . This works just like naming nets on a schematic. Use that tool on the dotted red line you just created, and in the dialog that pops up type 'GND'. (Click here to see an animated GIF of the entire process.)
The last step is to hit ratsnest, to watch the glorious red pour fill just about the entire area of your board. You'll probably hate me for telling you this now, but adding ground pours to your design at the very beginning (after placing parts, before routing) makes manual routing much easier.
You can (and probably should) have ground pours on both sides of the board, so follow the same set of steps on the bottom layer.
It can be hard to tell what is and isn't connected to the ground pour. If you see a black gap separating a pad and the pour, there is no connection. If you see some traces forming a 'target' over the pad, there is a connection from the pour to that pad.
If you ever want to hide the polygon (it's hard to see other stuff with it on there), use the RIPUP tool on the polygon border you just drew. Don't worry, the polygon is still there, just hit ratsnest to bring it back.
Adding Silkscreen
Although it has no real effect on the circuit your designing, silkscreen can be a critical part of the PCB design. You want it to look good, right? Some silkscreen -- like part outlines -- is automatically placed on the board because it's a piece of the part. We can manually add other information, like labels, logos, and names. A variety of draw tools -- wire (), text (), circle (), arc (), rectangle (), and polygon () -- can be used to draw on the silkscreen layer (tPlace for top, bPlace for bottom).
Have fun and explore with these tools. You could add labels for the headers, or values for the resistors, or even create a nifty logo.
The draw tools are a bit limited, but that doesn't mean you can't make it look good!
Generating Gerbers
When you've finalized your design, the last step before sending it off to the fab house is to generate gerber files. Gerber files are kind of a 'universal language' for PCB designs. EAGLE is far from the only PCB CAD software out there, and its design files are nothing like those of Orcad or Altium. Fab houses can't possibly support every piece of software out there, so we send them the gerber files instead.
Gerber files -- note the plurality -- each describe single layers of the PCB. One gerber might describe the silkscreen, while another defines where the top copper is. In all, we'll generate seven gerber files to send to the fab house.
CAM Processor
Before we get too much further, you'll need to download another definition file: SparkFun's CAM file.
Then, load up the CAM processor by clicking the CAM icon -- -- which will open up this window:
From here, go to the File menu, then go Open >Job.... In the file browser that opens, select the sfe-gerb274x.cam file that you just downloaded. Now the CAM processor window should have a series of tabs: 'Top Copper', 'Bottom Copper', 'Top Silkscreen', etc. Each of these tabs define how to create one of the gerber files. Now all you have to do is click Process Job. If you haven't saved recently, it'll prompt you to.
The gerber generation process should be pretty quick. Once it's run its course, have a look in your project directory, which should have loads of new files in it. In addition to the board (BRD) and schematic (SCH) files, there should now be a .dri, .GBL, .GBO, .GBS, .GML, .gpi, .GTO, .GTP, .GTS, and a .TXT. Meet the Gerbers!
Gerber File | Extension |
---|---|
Bottom Copper | GBL |
Bottom Silkscreen | GBO |
Bottom Soldermask | GBS |
Top Copper | GTL |
Top Silkscreen | GTO |
Top Soldermask | GTS |
Drill File | TXT |
Drill Station Info File | dri |
Photoplotter Info File | gpi |
Mill Layer | GML |
Top Paste | GTP |
Picking a PCB Manufacturer
There are PCB manufacturers all over the world, so you shouldn't have any trouble finding one. OSH Park is pretty great for low-volume, high-quality PCBs (plus, they're purple!). Advanced Circuits is awesomely fast. Gold Phoenix is cheap. We could go on and on, but Ladyada has a great list over on her website.
Before they fabricate the board, the fab house will usually run a quick design for manufacturability (DFM) check, and let you know if something on your design will cause in a problem.
Delivering the Gerbers
The process of sending gerber files varies by fab house. Most will ask you to send them a zipped folder of select files. Which gerber files? Check with your fab house again (e.g. Advanced Circuits and OSH Park's guidelines), but usually you want to send them GTL, GBL, GTS, GBS, GTO, GBO and the TXT files. The GTP file isn't necessary for the PCB fabrication, but (if your design had SMD parts) it can be used to create a stencil.
So zip those gerbers up. Play the waiting game. And get ready to assemble your very own PCB!
Resources and Going Further
If you'd like to check out the reference design we did in this tutorial, you can download them here. That also includes the gerber files, and all EAGLE scripts used in this tutorial.
Going Further
You've taken your first step towards being a PCB designer, but there's still plenty to learn. If you need a break from reading, check out this According to Pete video, where the Dokter goes over some of the more general concepts of PCB layout:
If you'd like to take the PCB layout thing up a notch, give these tutorials a try:
- How to Create SMD Footprints -- If you want to create unique parts in a library, check out this tutorial.
- How to Create SMD PCBs -- This is a more advanced and fast-paced EAGLE tutorial. In this one, we focus on laying out a more complex, surface-mount (SMD) design.
- Making Custom Footprints in EAGLE -- Another footprint-making tutorial. This one details a unique process for making a custom 1:1 footprint.
If you'd like to share your PCB creations with the world, check out these tutorials:
≡ PagesFavoritedFavorite31Introduction
Printed circuit boards (PCBs) are the backbone of every electronic gizmo out there. They're not flashy like those microprocessors, or abundant like resistors, but they're essential to making all components in a circuit connect together just right.
We LOVE designing PCBs here at SparkFun. It's a love that we want to spread. It's a skill that benefits electronics enthusiasts of every caliber. Through this and a series of tutorials, we'll explain how to design a PCB using EAGLE -- the same software we use to design all of our PCBs.
This first tutorial goes over how to install the software, and tailor-fit its interface and support files.
Why EAGLE?
EAGLE is one of many PCB CAD softwares out there. So you might ask: 'What makes EAGLE so special?' We're fond of EAGLE for a few reasons in particular:
- Cross-platform -- EAGLE can run on anything: Windows, Mac, even Linux. This is a feature not too many other PCB design softwares can boast.
- Lightweight -- EAGLE is about as svelte as PCB design software gets. It requires anywhere from 50-200MB of disk space (compared to the 10+GB more advanced tools might require). The installer is about 25MB. So you can go from download to install to making a PCB in minutes.
- Free/Low-Cost -- The freeware version of EAGLE provides enough utility to design almost any PCB in the SparkFun catalog. An upgrade to the next license tier (if you want to make a profit off your design) costs at least two orders of magnitude less than most high-end tools.
- Community support -- For those reasons, and others, EAGLE has become one of the go-to tools for PCB design in the hobbyist community. Whether you want to study the design of an Arduino board or import a popular sensor into your design, somebody has probably already made it in EAGLE and shared it.
Of course, EAGLE has its drawbacks too. More powerful PCB design tools out there might have a better autorouter, or nifty tools like simulators, programmers, and 3D viewers. For us though, EAGLE has everything we need to design simple-to-intermediate PCBs. It's an excellent place to start if you've never designed a PCB before.
Recommended Reading
Here are a few tutorial and concepts you may want to familiarize yourself with before dropping down into this rabbit hole:
Download, Install, Run
EAGLE is available on Cadsoft's (the developer company) download page. Grab the most recent version that matches your operating system (the software is available for Windows, Mac and Linux). It's a relatively light download -- about 45MB.
EAGLE installs just like any old program, it'll self extract and then present you with a series of dialogs to configure the installation.
Licensing EAGLE
On the last screen of the installation process, you should be presented with a window like this:
One of our favorite things about EAGLE is that it can be used for free! There are a few limitations to be aware of when using the free version:
- Your PCB design is limited to a maximum size of 100 x 80mm (3.94 x 3.15in). 12.4 in2 of PCB real estate, which is still pretty darn big. Even if you're designing a big 'ol Arduino shield, you'll still be well under the maximum size.
- Only two signal layers allowed. If you need more layers check into the Hobbyist or Standard licenses.
- Can't make multiple sheets in your schematic editor.
- Limited to email or forum support.
- For non-profit use only. If you're going to go out and sell your design, maybe check into the 'Light' version of the software.
Those limitations still make EAGLE an amazing piece of software. Engineers here at SparkFun could design 99% of our boards using the freeware version, if not for that pesky non-profit stipulation. You still have access to all phases of the EAGLE software, including the Autorouter.
If you need to upgrade your license there are a few versions available. Most licenses are still incredibly low priced (in comparing to the other stuff out there).
Exploring the Control Panel
The first time you open up EAGLE, you should be presented with the Control Panel view. The Control Panel is the 'homebase' for Eagle, it links together all of the other modules in the software.
You can explore the six separate trees in the control panel, which highlight separate functions of the software:
- Libraries -- Libraries store parts, which are a combination of schematic symbol and PCB footprint. Libraries usually contain a group of related parts, e.g. the atmel.lbr stores a good amount of Atmel AVR devices, while the 74xx-us.lbr library has just about every TTL 74xx series IC there is.
- Design Rules (DRU) -- Design rules are a set of rules your board design must meet before you can send it off to the fab house. In this tree you'll find DRU files, which are a a pre-defined set of rules.
- User Language Programs (ULPs) -- ULPs are scripts written in EAGLE's User Language. They can be used to automate processes like generating bill of materials (bom.ulp), or importing a graphic (import-bmp.ulp).
- Scripts (SCR) -- Script files can be used to customize the EAGLE user interface. In one click you can set the color scheme and assign key bindings.
- CAM Jobs (CAM) -- CAM jobs can be opened up by the CAM processor to aid in the creation of gerber files.
- Projects -- This is where each of your projects are organized into a single project folder. Projects will include schematic, board design, and possibly gerber files.
If you select a file in a tree, information about it will appear in the right-hand portion of the window. This is a great way to explore libraries, project designs (EAGLE comes with some fun examples), or to get a good overview of what a script's purpose is.
Using the SparkFun Libraries
Included with EAGLE is an impressive list of part libraries, which you can explore in the Control Panel view. There are hundreds of libraries in here, some devoted to specific parts like resistors, or NPN transistors, others are devoted to specific manufacturers. This is an amazing resource! But it can also be a bit overwhelming. Even if you just want to add a simple through-hole electrolytic capacitor, there are dozens of libraries and parts to sort through to find the right thing.
Instead of using the hundreds of default libraries, you can use the SparkFun EAGLE Libraries, which are filtered down to only include the parts that we've used in designs ourselves. And they're constantly updated with new parts we've discovered.
Here's how you can install and use the SparkFun libraries instead of (or in addition to) the default ones:
Step 1: Download the SparkFun Libraries
The most recent version of the libraries can always be found in the GitHub repository. For help using GitHub, check out our Using GitHub tutorial. Basically, all you'll need to do from the main repository page is click 'Download ZIP'.
Save the ZIP file somewhere handy. Then extract the folder -- don't forget where it is!
Step 2: Updating the Directories Window
Back to the EAGLE Control Panel window now. Go to the 'Options' menu and then select 'Directories'. This is a list of computer directories where EAGLE looks when it populates all six objects in the tree view...including libraries.
In the 'Libraries' box is where we'll add a link to the directory where the SparkFun EAGLE libraries are stored. There are a few options here. If you'd like to keep the default libraries and add the SparkFun library, add a semicolon (;) after '$EAGLEDIRlbr', and paste the SparkFun EAGLE Libraries directory location after that.
Note: Mac and Linux users should place a colon (:) between directories instead of the semicolon.
Step 3: 'Using' Libraries
Now, when you go back and look at the 'Libraries' tree, there should be two folders included, one of which should be our SparkFun Eagle Libraries. The last step is to tell EAGLE that, for now at least, we don't want to use the default libraries. To do this, right click on the 'lbr' folder, and select 'Use none'.
Then, right-click on the 'SparkFun-Eagle-Libraries-master' folder, and select 'Use all'. Then check the libraries in each of the two folders. Next to them should be either a grey or green dot. A green dot next to a library means it's in use, a grey dot means it's not. Your libraries tree should look a little something like this:
If you've created library parts that you would like to share with SparkFun to include in our Eagle library, visit this tutorial to see how.
Opening a Project and Explore
EAGLE is packaged with a handful of nifty example PCB designs. Open one up by expanding the 'Projects' tree. From there, under the 'examples' folder open up the 'arduino' project by double-clicking the red folder (or right-clicking and selecting 'Open project'). Note that, in this view, project folders are red and regular folders are the standard yellow.
Opening the project should cause two more EAGLE windows to spawn: the board and schematic editors. These are the yin and the yang of EAGLE. They should be used together to create the finished product that is a functional PCB design.
The schematic editor (on the left above) is a collection of red circuit symbols which are interconnected with green nets (or wires). A project's schematic is like the comments in a program's code. It helps tell the story of what the board design actually does, but it doesn't have much influence on the end product. Parts in a schematic aren't precisely measured, they're laid out and connected in a way that's easy to read, to help you and others understand what's going on with the board design.
The board editor is where the real magic happens. Here colorful layers overlap and intersect to create a precisely measured PCB design. Two copper layers -- red on top, blue on the bottom -- are strategically routed to make sure different signals don't intersect and short out. Yellow circles (on this design, but they're more often green) called 'vias' pass a signal from one side to the other. Bigger vias allow for through-hole parts to be inserted and soldered to the board. Other, currently hidden, layers expose copper so components can be soldered to it.
Keep Both Windows Open!
Both of these windows work hand-in-hand. Any changes made to the schematic are automatically reflected in the board editor. Whenever you're modifying a design it's important to keep both windows open at all times.
If, for instance, you closed the board window of a design, but continued to modify a schematic. The changes you made to the schematic wouldn't be reflected in the board design. This is bad. The schematic and board design should always be consistent. It's really painful to backtrack any changes in an effort to reattain consistency. Always keep both windows open!
There are a few ways to tell if you don't have consistency between windows. First, there's a 'dot' in the lower-right hand corner of both windows. If the dot is green, everything is groovy. If the dot is magenta, a window's probably closed that shouldn't be. Second, and more obvious, if you close either of the two windows a big, huge warning should pop up in the other:
If you see that warning STOP doing anything, and get the other window back open. The easy way to get either a board or schematic window back open is by clicking the 'Switch to board/schematic' icon -- / (also found under the 'File' menu).
Navigating the View
This is a subject that's usually glazed over, but it's important to know how to navigate around both of these windows.
To move around within an editor window, a mouse with a scroll wheel comes in very handy. You can zoom in and out by rotating the wheel forward and backward. Pressing the wheel down, and moving the mouse allows you to drag the screen around.
If you're stuck without a three-button mouse, you'll have to resort to the view options to move around the editor views. All of these tools are located near the middle of the top toolbar, or under the 'View' menu. The zoom in -- -- and zoom out -- -- tools are obviously handy. So is the 'Zoom select' tool -- -- which alters the view to your selection. But really, if you're serious about using EAGLE...get a mouse!
Configuring the UI
EAGLE's user interface is highly customizable. Anything from the background color, to layer colors, to key bindings can be modified to fit your preference. Better tailoring your interface can make designing a PCB much easier. On this page we'll talk about how we at SparkFun prefer to customize our UI. None of these steps are required. Customize your UI as you see fit. These are just the settings that we've grown accustomed to.
Setting the Background Color
The first adjustment we always make to the UI is the background color of the board editor. The standard white background doesn't always meld very well with the array of colored layers required for board design. Instead, we usually opt for a black background.
To change the background color, go up to the 'Options' menu and select 'User interface'.
Inside the 'Layout' box you can set the background to black, white, or a specific color.
There are other options in this box to be explored, but you may want to hold off on adjusting most until you have more experience with the software.
Adjusting the Grid
Another UI improvement we like to make in the board editor is turning the grid on. Dimensions and sizes are so important to the design of your PCB, having some visible reminders of size can be very helpful. To turn the grid view on, click the icon near the top-left corner of the board window (or go to the 'View' menu and select 'Grid').
Switch the 'Display' radio button over to 'On'. We'll also make the grid a bit less fine by setting the 'Size' to 100 mil (0.1') and 'Alt' to 50 mil (0.05').
Running Scripts
Scripts are a much more streamlined way to quickly configure your interface. With one click of the button, you can automatically set up all of your colors and key binds. Script files can also be shared, and run by anyone. Running the SparkFun EAGLE script will get your UI to exactly match ours.
First, click here to download the script (in a zip folder). Unzip the 'spk.scr' file to a location you'll remember.
Then you'll need to run the script. In the board window click on the Script icon -- (or go to 'File' then 'Execute Script'). In the file browser, select the 'spk.scr' file you just downloaded and unzipped.
This should automatically set up your color scheme to look a little something like this:
This UI setup presents a nice logical view of the layers. The important copper layers are very visible, but distinct (red on top, blue on bottom, green for vias), and the silkscreen is white as it is on most PCB designs.
All of these colored layers will make more sense as you continue to use and explore EAGLE.
SparkFun Custom Eagle Settings
To find SparkFun's most up-to-date script, and other useful files, check out our EAGLE settings repository hosted on GitHub!
Open Pcb File In Eagle Pass
Resources and Going Further
Pcb File Types
If you've got EAGLE set up, and you're chomping at the bit to start designing a PCB, your next step should be over to our 2-part Using EAGLE tutorials: Using EAGLE: Schematic and Using EAGLE: Board Layout. That pair of tutorials will explain how to go from a schematic design, to laying out and routing a PCB, to generating gerber files and sending them to a fab house.
Or here are some other tutorials in our EAGLE series:
Open Pcb File In Eagle Rock
- How to Create SMD PCBs -- This should logically follow the PTH EAGLE tutorial. It's a bit more advanced and fast-paced.
- How to Create SMD Footprints -- If you want to create unique parts in a library, check out this tutorial.
- Making Custom Footprints in EAGLE -- Another footprint-making tutorial. This one details a unique process for making a custom 1:1 footprint.