Introduction: Draw Electronic Schematics With CadSoft EAGLE

There are a couple instructables here on some of the finer points of Eagle (making your
own library parts:
modifying the design rules: )
But feedback indicates that a lot of people could probably use an instructable on the
more basic aspects of creating a schematic and board.

This instructable covers creating a schematic, presumably from a printed schematic in
a magazine or image on the web. I'll start with schematic shown, which is from
It's got a "typical" collection of parts, and is vaguely useful as well.

Cadsoft EAGLE generic information:

Cadsoft EAGLE is available from

Cadsoft is a German company that is a veritable mecca of software distribution enlightenment. In addition to the reasonably-priced professional PCB design packages ($1200), they have freeware, lite, non-profit, and other intermediate licenses. Their software runs under windows, linux, and MacOSX. It's slightly quirky, with a steep (but not too high) learning curve on the front end, but from most reports it is not any more so than other professional CAD packages. They have online support forums that are active from both the company and other users, the package is under current development and gets better with each release. A number of PCB fabricators will accept their CAD files directly. It's good stuff.
Use it. Propagate it. Buy it when you "go pro."

See also:
Creating PCB from Schematic
Creating Library parts
Design rule modification
Send CAD Files to manufacturers

Step 1: Create New Project

Start up the Eagle control panel, and right-click on "projects" to create a new project.
You'll get to name it whatever you want.

Step 2: Create New Schematic in the Project

Once you have cretaed the new project, it will be "opened" automatically (which doesn't do much other than tell EAGLE that "this is the current project".) RIght click on the new project and follow the popup menus to create a new schematic.

Step 3: Find and Place ("add") Components

Components are added to a schematic from the ADD dialog, which you get to by clicking the ADD button over on the GUI menu.

One of the major challenges of using Eagle is finding the components you want in the "official" libraries.
These libraries are extensive, not particularly well named (and the components aren't so well named either),
and seem to date back to a time when there was a different philosophy about multiple packages for a particular device. Resistors and capacitors have so many packages defined that picking the right one is difficult. Transistors, despite formable leads, tend to only have a single package defined. Many experienced EAGLE users don't use the standard libraries at all, copying common components and packages into private libraries or creating them from scratch.

The search capability of the add dialog is pretty good; you just have to be less specific about what you search for if you expect to find it.

When working from a published schematic, I prefer to add all the components in the approximately correct locations before I start connecting anything.

Once you've finished the add dialog, the part will get attached to your mouse pointer, and you can put it down wherever you want on the drawing page by clicking the left mouse button. The right mouse button rotates the part 90 degrees. The middle button, or left and right simultaneously (maybe) "mirrors" the part drawing, which may also be useful.

Step 4: Add Integrated Circuits

Let's search for our 555 timer. Lots of companies have manufactured the 555, and given it slightly different suffixes and prefixes. LM555N, SE555, TL555, NE555; all are pretty interchangable. If we search for just "555", there are several results; we can check the preview panel to see which one looks most appropriate. In this case, we'll use LM555N from the "linear" library.
(The string search in the add dialog will need wildcard designators around a substring, so you search for "*555*" to find all parts with a "555" in the name.)

You'll notice that the EAGLE part drawing doesn't look very much like the 555 drawing on the schematics we're trying to enter, the pins are in different places, and have funny names attached as well as pin numbers. And it's not like the pin layout matches the actual package shape either. We'll have to be careful when making our connections.

Step 5: Add Resistors

Resistors, simple components that they are, cause a lot of confusion for Eagle beginners, perhaps because the eagle library contains 100+ different package/schjematic options for generic resistors. Or perhaps it's because a search for short word like "R" isn't practical, and a search for "resistor" turns up a bunch of special purpose specific-manufacturer devices.

The general purpose fixed resistor devices are called either R-US (if you like the US zigzag line type
of schematics symbol) or R-EU (if you prefer the European simple rectangle.] The package options
are numerous, but make sense after you realize that there's a common format: "WWLL/SS" where WW is the body width, LL is the body length, and SS is the hole spacing, all in truncated millimeters. A typical 1/4W resistor measures about 2.5mm in diameter and 7mm long; hole spacing depends on how you bend the leads. So R-US_0207/10 is a 1/4W resistor with 10mm (actually 4*2.54, or 10.16mm, since we want to stay close to a 0.1 inch (2.54mm) grid.) R-US_0207/2V is the same resistor mounted vertically with 2.54mm lead spacing. 1/8W resistors are similarly designated R-US_0204/SS"

I'm going to pick a vertical package for use on our schematics, though of course it doesn't matter for the schematic drawing anyway. Perhaps I'll do the board layout in a "related" instructable later...

Step 6: Add Capacitors

Capacitors are worse than resistors, largely because their bodies come in a wider variety of shapes (that are less standardized), and of course there are all those different types; disk, ceramic, mylar, film, electrolytic, tantalum, AC filter, etc (and those are just the FIXED value caps!) Again, threre are slightly different US and European schematic symbols C-US and C-EU in rcl.lib. Again, there's a plethora of packages, but there's a standard format. In this case it's SSS-WWWXLLL, where SSS is the lead spacing (with an extra digit this time!), WWW is the body width, and LLL is the body length.

Polarized caps are similar (CPOL-US or CPOL-EU in rcl.lbr), with a package name like TSSS-DD, where
T is a type designator (E for electrolytics, TT for tantalum drops, for instance) SSS is the spacing again
(only now it probably has an actual decimal point!), and DD is the diameter (for radial caps)

Most hobby projects can get away with either 2.5mm or 5mm lead spacing, and the designer "remembering" to leave enough space for the physical capacitor body; there might not be a silkscreen anyway.
(the "silkscreen" is the pictures and text describing the components, usually printed in white ink on the component side of the board (if you had it made professionally.) Library designers spend a lot of time getting the silkscreen to look nice; all wasted if you make a board that doesn't have that printing.)

Step 7: Add Lamps

When you have parts that aren't going to mount on your actual PCB anyway, such as control knobs and battery packs and switches and lightbulbs and such, you of course have a lot of flexibility in how they are portrayed on the schematic and PCB. You can use single pins for each wire, or find a part whose drawing isn't too obnoxious that has pins of appropriate size and shape for attaching wires as well as an actual component.

The eagle library has *A* "lamp" part. It says it's actually an LED holder, but the drawing is OK and the part has pins suitable for attaching wires that go to off-board lamps, so it looks fine for our purposes.

Step 8: Add Other Semiconductors

We luck out because the transistors called for actually exist in the EAGLE library, and there isn't much choice of package. There are some choices for the PNP transistor, but they're all the same anyway.

The 1n914 diode isn't in the library, but a search for just "diode" turns up some generic diode footprints that will work fine. I'll mount the diodes vertically to match the resistors.

Step 9: Add Ground Symbols

There are some symbols for various supply off in the "supply1" and "supply2" libraries. They're handy, make your schematic look nicer, and have magical properties when it comes to connecting things; the pin on a supply symbol has a magic name so that all the pins on all the GND symbols are connected together, whether you draw them or not.

Step 10: Re-zoom the Drawing

Since we have all the components added, we can use the zoom-to-fit button to fit things better in our window...

Step 11: Save Your Work Often

Now is a good time to save our work. This is where you get to attach a name to your schematic,
as well. You might need to use "save as" for your first save, to prevent it from saving "untitled.sch".

Step 12: Fiddle With the Layers a Bit

It can be helpful to turn on the "pins" layers so you can see exactly
where you are supposed to make connections on the various componenets.

Step 13: Start Making Connections

You might think that you'd use the "wire" command to make connections in your circuit.

However, a wire in EAGLE is just a line; to properly make actual electrical connections, you need to use the "net" command. Nets will automatically form junctions when terminated on pins or other nets; I don't think wires are so nice.

Once you've clicked the NET button, your mouse pointer becomes your drawing tool. Click on a pin (or anywhere, actually), move your mouse somewhere else and you'll see a line. The actual route that the line takes is controlled by the "wire bend" setting for the line, which you can control with your right mouse button. Schematic designers tend to like nice straight lines with right angles.

So first I draw a nice V+ line sort of over the top of the schematic, starting at the top of R1. Next, similar for a ground wire (you don't actually need to connect the GND symbols, they're "magic" in they name the net that connects to them, and all nets of the same name are connected whether you can see lines between them or not.) Then I go wild and connect all the other pins appropriately, either to other pins to to the existing nets. Junctions (big solid dots) should get insterted

Step 14: Neaten Things Up

We can make things a bit neater by moving some of the components, junctions, and wires around just a BIT using the Move button. When you select an object after clicking the move button, the object gets attached to your mouse pointer and behaves like when you were adding objects with respect to the other mouse buttons.

Step 15: Apply Component Values

When we plopped down the components during the "add" phase, we didn't assign specific values to any of them. Some of the components (ie 555, transistors) have inherent values that don't need to change. But the resistors, capacitors, and diodes should all have their values filled in appropriately.

Values are assigned using the "Value" button. After selecting the button, click on each component near its orignin (little "+" sign), and you should be presented with an opportunity to change the value.

Step 16: Do Rule Check!

The button shown does an electrical rule check. It will check whether the pins designated outputs are connected to inputs, whether there are obvious missing junctions, and stuff like that. When we run it on our schematics so far, we get a warning that the power pin named V+ on the 555 is connected to a net that DOESN'T have the name V+. We could fix that with the name command, or just leave it as is.

In general, you don't have to FIX every warning that shows up in a rule check, but you should understand what the complaint is, and have a good justification WHY you don't need to fix it.

Step 17: Done!

Thats about it, as far as this schematic goes. Turn off the PINS layer to make it less busy; Looks OK, eh? There are a couple things that have been left out that will become apparent when we try to make a PCB from the schematics, but that's a topic for another instructable.

Here's the finished, exported schematic drawing.

Step 18: A Couple of Other Hints

Some of the other buttons that are useful to beginners are desribed in the pictures.

Many EAGLE commands can be entered three ways:
1) via the buttons on the left-hand vertical toolbar
2) via the text menus on the top of the window
3) via the text command input area
Don't get confused...


oyessy+ made it!(author)2017-06-23

Well done everyone. I want switch from schematic to board but I am receiving a warning that: the board doesn’t exist. Create from schematic? What do I need to do please

westfw made it!(author)2017-06-24

tl;dr: say "yes":
See "Step 1" of the next instructable:

JoseeN made it!(author)2016-11-11

THANK YOU, you've saved me a lot.

just etched my first board out of combining your tutorials.

amalik101 made it!(author)2016-08-28

Nice tutorial... Made me understand and implement schematics in Eagle.. Now I am following your tutorial on laying it out on PCB biard design and then will be DIY etching. Thank you

pcbfab made it!(author)2016-05-03

A great tutorial. If are interested in where to find pcb manufacturing, I’d like to share you with another useful a few pcb manufacturing reviews it will be helpful to your study. or my blog about The Printed Circuit Industries Service, Product and Resource Guide,

blinkyblinky made it!(author)2012-08-18

Where is the power to your circuit?

Chi-HsiuL made it!(author)2016-04-04

FeatherG made it!(author)2016-01-13

If you are interested in electronic circuit design, I’d like to share you with some useful tutorials's helpful to my study. I wish it will help you too. I’d like to recommend a great web-based EDA tool for electronics engineers, educators, students, makers and enthusiasts. EasyEDA is a free, zero-install, Web and cloud-based EDA tool suite, integrating powerful schematic capture, mixed-mode circuit simulation and PCB layout in a seamless cross-platform browser environment and you could run it on windows , mac , linux or android platform, as long as there is one browser on the OS and connecting to network. You can draw schematics quickly using the available libraries on browser.

Volthaus+Electronics+Laboratory made it!(author)2015-07-03

Trying to master Eagle via Youtube and those tutorials glossed over what you have so well described here in your excellent Ible. Thank you!

signed: Mr. Much-confused by 100+ different package/schjematic options for generic resistors!

SreekarG made it!(author)2015-04-27

thanks for the tutorial.. it is very helpful

stainsor made it!(author)2009-02-25

DO NOT click the "Drop" button in the Add dialog. My first time using Eagle I thought that was the button to drop a part into a schematic. It turns out that's the button to remove a set of parts from the libraries! If you do click this button and accidentally remove some of the libraries you can get them back by reinstalling Eagle.

If I knew anything about UI design (which I don't) then I would probably say that this was a horrible choice for both the placement and naming of the button. I would probably think that it should be changed immediately.

RobT3 made it!(author)2014-12-15

Ha! Just did exactly the same thing, going to "Drop" my first part onto the schematic...

Very strange name for a button - why not try, "remove from list"!?!!!

rachel made it!(author)2009-03-03

Ha! I was just about to add this same comment, as I had the exact same wrong thought about what "DROP" meant. It's a terrible design choice and doesn't even have a confirmation dialog! Danger Will Robinson!

joie2vivre made it!(author)2009-05-05

Looks like you can get the library back by clicking on library/use, then select the library you want

Fik made it!(author)2012-09-28

I own you a coffee... I dropped the very first library I touched ever, and was about to download the installer again. After reading your comment, I went to Library>Use instead. Doesn't say anything in the help, either.

amando96 made it!(author)2010-02-14

 haha i pressed that aswell, but never figured out what it did xD

webster32 made it!(author)2010-05-31

It's very misleading, but all you've actually done is "disable" that particular library. The Control Panel window that opens on startup allows you to re-enable that library. Just expand the "Libraries" and click the dot beside the library you disabled.

derrekito made it!(author)2012-09-16

THANK YOU. You wouldn't believe how hard it was to find an answer (at least one I could figure out how ).

WaterThrottle made it!(author)2012-07-31

WHEW!!! Thanks Bud... You just saved me hours of grief.

badbad214 made it!(author)2011-03-13

Thank you webster32

Cobalt59 made it!(author)2011-01-28

Thank you. I did the same thing as Stainsor. :)

tamentis made it!(author)2009-07-11

That's also what I initially thought, I tried it on a random weird component by curiosity.. It doesn't warn you, there is no tool-tip.

AMS+India made it!(author)2014-04-12

Awesome Tutorial! I really appreciate you for sharing such a useful information for the starters through diagrams.

Thanks and regards

AMS India

kooth made it!(author)2014-03-08

I have just decided to try Eagle and I'd like to say that your Instructable is very helpful! Thanks so much for posting this. Your Instructable is still relevant!


Keith E. Cooper

audioindo made it!(author)2012-08-05

Thanks alot for the Resistor code explanation, I also looking for this one.
So R-EU basically same with R-US right?
R-EU_0204/7 means 1/8W resistor with 7mm spacing?
How about capacitor? like 3n3 C-7-10/5

donfrench made it!(author)2012-04-09

Thanks a lot for the resistor coding info. I did a lot of unproductive searching before I found this page.

omnibot made it!(author)2012-02-29

"You might think that you'd use the "wire" command to make connections in your circuit."

-Why yes, that's exactly what I thought and apparently why it's NEVER worked before for 2 years of trying. You'd think they'd something like that on the first page in the manual. I am so angry right now.

dav3id made it!(author)2012-02-08

Thanks, Had used Eagle several years ago but this really helped quickly figure out a couple of things that could have taken a lot longer before I got going, it was a great starting point / refresher for this new project.

SharpyWarpy made it!(author)2012-02-03

Okay I clicked on the "Display" button and made visible only Bottom, Pads, Vias, Holes and centerDrill layers. Clicked "Tools > Ratsnest" to bring up the ground plane. I clicked on File > Print. Then in the dialog box part "Printer:" I chose "Print to File (Postscript)" and also in the "Options" I checked the "Black" box. I changed the "Paper" option to "Letter", which might not have really been necessary. I made sure "Scale" was set to one and then changed the save directory to my home directory and clicked "OK". I opened a postscript viewer -- in my case "Evince" and opened the file and printed. The drill holes were there. I'm happy.

SharpyWarpy made it!(author)2012-02-02

I have a problem when I create a board from the schematic. I move all the parts relative to the schematic as directed in this tutorial but when I generate the board the wires go right into the holes! And I can't get them to back up. So when I etch the board I'm not going to have holes in the copper where they need to be. The only thing I can do is delete the wires one at a time and draw them each by hand stopping the ends just short of the holes in the pads or vias. But then after that I lose the annotation between schematic and board. Is there a design rule I can use to fix this? I made my own design rule configuration file but I didn't see anything in there about this problem. What can I do? Thank you all ahead of time.

westfw made it!(author)2012-02-03

When printing, the "holes" are normally done last, punching through whatever traces may show on the display as going all the way to the center. In fact, normally I use the "drill-aid" ULP to reduce the size of the holes to "pilot hole" rather than full sized. It's also the case for CAM output in formats that support holes (eg Postscript) Don't be fooled by the preview that shows up in the print dialog.

SharpyWarpy made it!(author)2012-02-03

Thank you, westfw for your reply. After I posted I did a bit more searching and discovered the "drill-aid.ulp", tried that and thought it was not working because it doesn't show up but if I understand you correctly it will show up on the printout? So should I save the layout in monochrome and postscript format for printing?

SharpyWarpy made it!(author)2012-01-23

Interesting you used one of Bill Bowden's circuits. He's one of my favourites from which to learn. He's very approachable and very nice. I've built 6 or 7 of his circuits and they always work fine. Great Instructable, I appreciate the time and effort you put into ALL your Instructables. Your effort is not wasted.

mspinks made it!(author)2011-11-20

I can't believe I was using the wire command this whole time! This is so much faster! Thank you!

FieldingBlue made it!(author)2011-07-31

Thank you for all your effort putting this instructable together. I had been complete lost as to how to drive eagle until I read your excellent work.

Rue+Dee made it!(author)2011-07-06

Never-mind, i have just realized the mistake i was making..

Rue+Dee made it!(author)2011-07-06

Thanx for the drop button issue, i did the same.. i'm trying to add a 6 pin molex connector. But when i select it and click ok nothing happens, what should i do?

spsj21 made it!(author)2011-07-05

it is really a nice instructable. So far I was struggling for a nice EAGLE tutorial and finally it helped me a lot.

tcarney57 made it!(author)2011-05-17

I'm just now giving Eagle a try. Thanks for the introduction. Already I'm not surprised this is a foreign (German) program--I think some of the words and labels are poorly translated. Like Stainsor, I would have assumed drop meant to place the part on the schematic. It seems to me that "remove" or "delete" would have been better. But to use "drop," as in "drop like a hot potato," or "drop the course" doesn't work in this context.

Likewise, why is the word "smash" being used for a function that "[s]eparates text variables and attributes from parts or elements." And what does "separate" mean in this context? That the variable or attribute labels can be moved to a different spot around the part symbol as needed to make the drawing more readable. Wouldn't "rearrange labels" or even "detach" be better in the help-file description than "separates."

After I learn and grouse about these little quirks a while, I think Eagle will be very useful, especially since it seems to be a quasi-standard in the low-end (or free) market.

badbad214 made it!(author)2011-03-13

Thank you!

Russ1234 made it!(author)2011-02-26

You have 2 diodes on Q2. Thanks for these tutorials.

westfw made it!(author)2011-02-28

There's an explanation for the two diodes with the original schematic here:
Basically, the 555 is not "rail to rail" on its output, and otherwise would not be sure to turn off the "upper" transistor when in the high state.

mauselous made it!(author)2011-02-01

Thank you so much for the helpful tutorial. The steps you illustrated really helped me get a handle on getting from circuit to schematic to layout.

Do you have any tips on where to find additional or alternate libraries that are more organized?

westfw made it!(author)2011-02-02

The EAGLE user community forums are active and helpful, and frequently people will share libraries for newer parts.

I don't know about "more organized", though. I haven't seen any organized attempt to modernize/fix/organize a comprehensive set of component libraries for EAGLE, but it's likely that such a thing would be in the "costs money" realm where I wouldn't notice.)

(there is the recent Element14/Newark/Farnell effort to tie EAGLE directly to parts purchases; I haven't paid much attention to that since they're not one of my preferred dealers.)

Cobalt59 made it!(author)2011-01-28

Where to find a + to GND power supply in the ADD dialog?

mrmizuno1 made it!(author)2011-01-14

Thank you. very helpful.

coryjrogers made it!(author)2011-01-13

"your mouse pointer BECOMES your drawing tool"

westfw made it!(author)2011-01-13

if you insist!

ihart made it!(author)2010-12-02

Thanks for doing this. Now I need to check out your PCB instructable.

klarkg made it!(author)2010-10-06

Does anyone know of a website that has a good picture library of parts with the eagle cad names? Im having problems finding basic stuff sometimes like headers I need and the names in the eagle cad library confuse me , this instructable helped me alot thanks!

About This Instructable




Bio: Middle aged geek username also works at,,,
More by westfw:Visualizing EAGLE Edits with a Gerber ViewerMake a Double CD/DVD Case From a Single Sheet of PaperSingle Sided Really Bare Bones Board Arduino in EAGLE.
Add instructable to: