You are on page 1of 75

EAGLE

EASILY APPLICABLE GRAPHICAL LAYOUT EDITOR

Tutorial Version 5
Schematic Layout Autorouter
for Linux Mac Windows

CadSoft Computer www.cadsoftusa.com

6th Edition
005175100

Copyright 2010 CadSoft Computer

All Rights Reserved

CadSoft Computer is a trading division of Newark Corporation.

Ifyouhaveanyquestionspleasefeelfreetocontactus: USAandothercountries: Phone: Fax: Internet: Email:

+1(954)2370932 +1(954)2370968 www.cadsoftusa.com Info@cadsoftusa.com

GermanyandotherEuropeancountries: Phone: +49(0)8635698910 Hotline: +49(0)8635698930 Fax: +49(0)8635698940 Internet: www.cadsoft.de Email: Info@cadsoft.de Andrememberthatweofferafreehotlineforourcustomers!

Copyright2010CadSoftComputer.Allrightsreservedworldwide. Nopartofthispublicationmaybereproduced,storedinaretrievalsystem,or transmitted, in any form or by any means, electronic, mechanical, photocopying,recording,scanning,digitizing,orotherwise,withouttheprior consenseofCadSoftComputer. Printingthistutorialforyourpersonaluseisallowed.

WindowsisaregisteredtrademarkofMicrosoftCorporation. LinuxisaregisteredtrademarkofLinusTorvalds. MacisaregisteredtrademarkofAppleComputerInc.

TableOfContents
1WhattoexpectfromthisTutorial...............................................................6 2FeaturesofEAGLE.......................................................................................7 SystemRequirements...............................................................................7 ProfessionalEdition..................................................................................7 General...................................................................................................7 LayoutEditor..........................................................................................8 SchematicEditor....................................................................................8 AutorouterModule.................................................................................9 StandardEdition.......................................................................................9 FreemiumEdition.....................................................................................9 LightEdition.............................................................................................9 3Installation................................................................................................11 Windows.................................................................................................11 Linux......................................................................................................12 MacOSX................................................................................................13 4LanguageSettings.....................................................................................14 Windows.................................................................................................14 LinuxandMacOSX...............................................................................14 5IndividualEAGLESetup............................................................................15 TheScriptFileeagle.scr..........................................................................15 UserInterface.........................................................................................15 FunctionKeys.........................................................................................15 LayerColors............................................................................................16 6TheConceptoftheEAGLEUserInterface.................................................17 SelectingMenuItems.............................................................................17 MouseClick............................................................................................17 SeveralInputAlternatives......................................................................18 UseofKeyCombinations........................................................................18 TheContextmenu..................................................................................18 CommandandParameterInputviatheCommandLine.........................18 7ControlPanel............................................................................................21 EAGLEFiles............................................................................................22 BackupFiles............................................................................................22 CreateEAGLEProjects............................................................................22 8LoadFileandSelectMonitorZoom...........................................................24 9SelectingLayersforDisplay......................................................................26 10SettingupGridandUnit.........................................................................27 11Wires,Circles,Arcs,Rectangles,andText...............................................28

TheWIRECommand..............................................................................28 ChangingLineWidth..............................................................................29 ChangeObjecttoanotherLayer.............................................................29 Undo/RedoFunction..............................................................................30 TheCIRCLECommand...........................................................................30 TheARCCommand................................................................................31 TheRECTCommand..............................................................................31 TheTEXTCommand...............................................................................31 SpecialTextVariables.............................................................................32 12UsingLibraries........................................................................................34 TheADDCommand................................................................................34 TheUSECommand................................................................................36 TheINVOKECommand..........................................................................36 13DrawingaSchematic..............................................................................38 Grid........................................................................................................38 AddingaFrametoaSchematic..............................................................38 AddingandChangingText.....................................................................38 EnteringaSchematic..............................................................................40 TheNETCommand..............................................................................41 TheNAMECommand...........................................................................41 TheLABELCommand...........................................................................41 TheDELETECommand........................................................................42 TheJUNCTIONCommand...................................................................42 TheSHOWCommand..........................................................................42 TheMOVECommand...........................................................................43 HistoryFunction...................................................................................43 CompletingtheSchematic......................................................................44 TheSMASHCommand.........................................................................44 TheVALUECommand..........................................................................45 TheElectricalRuleCheck(ERC)............................................................46 GeneratingaBoardfromaSchematic....................................................46 TheBUSCommand................................................................................46 14AutomaticForward&BackAnnotation.....................................................48 15DesigningaPCBoard..............................................................................49 DesigningaBoardwithoutaSchematic.................................................49 DefiningBoardShape...........................................................................49 PlacementGrid.....................................................................................49 PlacingComponents.............................................................................50 PlacingSMDPackages..........................................................................50 ProvidingNames..................................................................................51 ProvidingValues..................................................................................51 DefiningSignals...................................................................................51 DefiningNetClasses.............................................................................52

CreatingaBoardfromaSchematic........................................................52 GeneratingaBoardFile........................................................................52 ComponentPlacement.........................................................................53 Autorouter:ABriefExample................................................................53 RoutingManually.................................................................................54 FollowmeRouter.................................................................................55 BoardChanges.....................................................................................56 FurtherUsageoftheLayoutEditor.........................................................57 TheDISPLAYCommand.......................................................................57 TheMOVECommand...........................................................................57 TheGROUPCommand.........................................................................58 TheSPLITCommand............................................................................58 TheCHANGECommand......................................................................59 TheROUTECommand.........................................................................59 TheRIPUPCommand...........................................................................59 TheSHOWCommand..........................................................................60 RefreshScreen.....................................................................................60 Undo/RedoFunction............................................................................60 InnerLayers.........................................................................................60 SupplyLayers.......................................................................................60 CopperPouringwiththePOLYGONCommand....................................61 16Autorouter...............................................................................................63 17DesignRuleCheck..................................................................................65 18Libraries..................................................................................................66 ResistorPackage.....................................................................................66 ResistorSymbol......................................................................................68 ResistorDevice.......................................................................................68 19OutputofDrawingsandManufacturingData.........................................72 OutputaSchematicwiththePRINTCommand......................................72 GeneratingImageFilesforDocumentationPurpose...............................73 GeneratingGerberDatawiththeCAMProcessor...................................73 GeneratingDrillData.............................................................................73 FurtherManufacturingData...................................................................74 20DataExchange........................................................................................75 TheEAGLEUserLanguage.....................................................................75 ScriptFilesAFlexibleInputInterface..................................................75

EAGLE 5 Tutorial

1 W hat to expect from this T utorial


ThistutorialprovidesabasicintroductiontotheEAGLEPCBDesignPackage. It covers the use of the EAGLE Schematic Editor, Layout Editor, and Autorouter. This guide will lead you through the program in the natural order, starting with the Schematic Editor and working through to board designandautorouting.Youwillbenefitmostbygoingthroughtheentire document. Youshouldbefamiliarwiththeuseofthebasicfunctionsofyouroperating system. Expressions like enlarge the editor window will be used without furtherexplanation. Having completed this tutorial you should be able to start working on a serious project. While creating your initial designs, however, you should frequentlyusethehelpfunctionandtheEAGLEManualtolearnmoreabout specificdetails.OnlythenwillyoubeabletotakefulladvantageofEAGLE's capabilities. Youwilllearnhowtousemostoftheprogramcommands,althoughnotallof thefeatureswhichmakeEAGLEsopowerfulandflexiblearediscussedinthis introduction for example the possibilities of the SET, SCRIPT,andRUN commands(seehelp). BeforeyoubeginyoushouldconsulttheREADMEfileandthefileswiththe extension*.txtineagle/doc. ThedifferencesbetweenEAGLEforLinux,Mac,andWindowsareminimal.

GeneralcommentaboutEAGLEcomponentlibraries: ThecomponentlibrariessuppliedwithEAGLEhavebeencompiledwith greatcareasanadditionalservicetoyou,ourcustomer.However,the largenumberofavailablecomponentsandsuppliersofthesecomponents means that the occasional discrepancy is unavoidable. Please note, therefore,thatCadSofttakesnoresponsibilityforthecompleteaccuracy ofinformationincludedinlibraryfiles.

EAGLE 5 Tutorial

2 Features of EA GLE
System Requirements
EAGLE is a powerful graphics editor for designing PCboard layouts and schematics.InordertorunEAGLEthefollowingisrequired: Windows2000,WindowsXP,WindowsVista,orWindows7, Linuxbasedonkernel2.xforIntelcomputers,libc6andX11 withaminimumcolordepthof8bpp, MacOSXversion10.4orabove(forPowerPCorIntelcomputer), aharddiskwithaminimumof100MBytefreediscspace, aminimumgraphicsresolutionof1024x768pixels, preferablya3buttonmouse.

Professional Edition
General maximumdrawingarea64x64inches(about1600x1600mm) resolution1/10.000mm(0.1microns) gridinmmorinch upto255drawinglayers command(Script)files ClikeUserLanguagefordataimportandexport easylibraryediting compositionofselfdefinedlibrarieswithalreadyexisting elementsbyDrag&Drop easygenerationofnewpackagevariantsfromanylibrary byDrag&Drop freerotationofpackagevariants(0.1degreesteps) librarybrowserwithpowerfulsearchfunction supportoftechnologyfeature(e.g.74L00,74LS00..) Easydefinitionoflabelleddrawingframes freedefinableattributes,applicableforDevicesintheLibraries andinSchematicorLayout integratedPDFdataexportfunction exportfunctionforgraphicfiles(BMP,TIF,PNG...) printoutsviatheOS'sprinterdriverswithprintpreview partlistgenerationwithdatabasesupport(bom.ulp) Drag&DropintheControlPanel

EAGLE 5 Tutorial
contextmenuwithobjectspecificcommandsforallobjects,available througharightmouseclick propertiesofobjectscanbeaccessedandeditedviacontextmenu automaticbackupfunction Layout Editor fullSMDsupport supportofBlindandBuriedvias rotationofobjectsinarbitraryangles(0.1degreesteps) componentscanbelockedagainstmoving textscanbeplacedinanyorientation dynamiccalculationofsignallineswhileroutingthelayout magneticpadsfunction trackscanbedrawnwithroundedcornersinanyradius miteringtosmoothwirejoints DesignRuleCheckforboardlayouts(checkse.g.overlaps, measuresofpadsortracks) copperpouring(groundplains) packagevariantssupport userdefinable,freeprogrammableUserLanguagetogeneratedatafor mountingmachines,testequipments,millingmachinesoranyother dataformat output of manufacturing data for pen plotters, photo plotters and drillingmachineswiththeCAMProcessor Schematic Editor upto999sheetsperschematic iconpreviewforsheets sortingsheetswithDrag&Drop crossreferencesfornets automaticgenerationofcontactcrossreferences simplecopyingofparts replacefunctionforpartswithoutlossofconsistency betweenschematicandlayout OnlineForward&BackAnnotationbetweenschematicandboard automaticboardgeneration automaticgenerationofsupplysignals ElectricalRuleCheck(errorcheckintheSchematicandconsistency checkbetweenSchematicandLayout)

EAGLE 5 Tutorial
Autorouter Module fullyintegratedintobasicprogram usesthelayout'sDesignRules changebetweenmanualandautomaticroutingatanytime basicenginefortheFollowmerouter,atoolthatsupports youinmanualrouting;thetraceofaselectedsignalwillbe calculatedautomatically ripup&retryalgorithm userdefinablestrategybycostfactors routinggriddownto0.02mm(about0.8mil) noplacementrestrictions upto16signallayers(withuserdefinablepreferreddirections) upto14supplylayers fullsupportofBlindandBuriedvias takesintoconsiderationvariousnetclasses

Standard Edition
ThefollowingrestrictionsapplytotheStandardEdition: Thelayoutareaisrestrictedtoamaximumof160x100mm (about6.3x3.9inches).Outsidethisareaitisnotpossibletoplace packagesanddrawsignals. A maximum number of 4 signal layers are allowed (Top, Route2, Route3,Route14,Route15,Bottom). TheSchematiccanhaveamaximumof99sheets.

Freemium Edition
The Freemium Edition is a Free Premium, which is available only after registration on http://www.element14.com/eaglefreemium and has the followinglimitations: Theboardareaisrestrictedto100x80mm(about3.9x3.2inches), whichcorrespondstohalfofaEurocard. Only4signallayerscanbeused(Top,Route2,Route15,Bottom). Aschematiccanconsistofamaximumnumberof4sheets. TheFreemiumlicenseislimitedtoonesingleuserandcomputer,and requiresanactiveconnectiontotheInternetinordertowork. Thelicenseexpires60daysafterinstallation.

Light Edition
ThefollowingrestrictionsapplytotheEAGLELightEdition: Theboardareaisrestrictedto100x80mm(about3.9x3.2inches).

EAGLE 5 Tutorial
Outsidethisareaitisnotpossibletoplacepackagesanddrawsignals. Onlytwosignallayerscanbeused(noinnerlayers). Aschematiccanconsistofonlyonesinglesheet. LargerLayoutandSchematicfilescanbeprintedwiththe smaller editions. TheCAMprocessorcangeneratemanufacturingdataaswell. Itisnotpossibletocombinemodulesofdifferenteditions! TheLightEdition isavailableasFreewarefortesting,evaluation,and noncommercialuse.

10

EAGLE 5 Tutorial

3 Installation
Windows
EAGLEforWindowsisavailableasaselfextractingarchive,whichisnamed, forexample, eaglewin5.7.0.exe.Doubleclickthisfileandthe WinZipSelf Extractorwindow willappear. Theinstallationroutinestartswithextracting thefilesfromthearchive.ClicktheSetupbuttontobegin. Theversionnumberinthefilenamemay,dependingonthecurrentversion, differ. Nowtheactualinstallationstarts.Followtheinstructionsstepbystep. AttheendofthisprocessyouwillbeaskedhowyouwanttolicenseEAGLE:

UseLicensefile ThisimpliesthatyouhavealreadyboughtanEAGLElicense.Inthis case the following dialog asks you for the path to your license file license.keyandforyourpersonalinstallationcodewhichyouhavegot fromCadSoft. UseFreemiumCode Ifyouregisteredathttp://www.element14.com/eaglefreemiumandgot aFreemiumcode,usethisoption. RunasFreeware EAGLEwillbelicensedwiththelimitsoftheLightEdition.It'spossible toupgradetoapurchasedlicensewithoutreinstallationatanytime. Don'tlicensenow postponesthelicensingonthefirstEAGLEstart.
The Windows Start menu now contains in the Programs section the new entry EAGLELayoutEditor5.7.0.Tutorialandmanualinpdffileformatare alsopartoftheinstallation.

11

EAGLE 5 Tutorial

Linux
EAGLEforLinuxisavailableasselfextractingshellscriptwithsetupdialog. YoumayinstalltheprogramasRoot/AdministratororasanormalUser. Initiatetheinstallationprocessinafilemanagerwithadoubleclickonthe shellscriptfileeaglelin5.7.0.run. Pleasecheck,whetherthefileismarkedasexecutablebefore.Ifthisisnotthe case, you could, for example, use the chmod command in the console to changeitsattributes. Youcanstarttheshellscriptformtheconsole,aswell,bytyping: /path_to_file/eagle-lin-5.7.0.run Theversionnumberinthefilenamemaydiffer,dependingonthecurrently availableEAGLEversion. Theinstallationroutinestartswithextractingthefilesfromthearchive.Then theactualinstallationprocessstarts.Followtheinstructionsstepbystep. AttheendyouwillbeaskedhowyouwanttolicenseEAGLE:

UseLicensefile ThisimpliesthatyouhavealreadyboughtanEAGLElicense. Inthis case the following dialog asks you for the path to your license file license.keyandforyourpersonalinstallationcodewhichyouhavegot fromCadSoft. UseFreemiumCode Ifyouregisteredathttp://www.element14.com/eaglefreemiumandgot aFreemiumcode,usethisoption. RunasFreeware EAGLEwillbelicensedwiththelimitsoftheLightEdition.It'spossible toupgradetoapurchasedlicensewithoutreinstallationatanytime. Don'tlicensenow postponesthelicensingonthefirstEAGLEstart.
TostartEAGLE,executebin/eagleintheinstallationdirectory. Tutorialandmanualinpdffileformatarealsopartoftheinstallation.They canbefoundinthedocdirectoryoftheEAGLEinstallation.

12

EAGLE 5 Tutorial

Mac OS X
EAGLEforMacOSXisavailableasUniversalBinaryandworksonPowerPC and on Intel based computers. In order to start the installation process doubleclickontotheiconthatrepresentstheEAGLEarchivewhichisnamed, forexample,eaglemac5.7.0.zip.Thearchivewillbeextractedautomatically. A new folder icon named eaglemac5.7.0.pkg will appear on the Desktop now.Clickitwiththemouseandtheinstallationprocessstarts. Theversionnumberinthefilenamemaydiffer,dependingonthecurrent EAGLEversion. Followtheinstructionsstepbystep. ConfirmtheEAGLESoftwareLicenseAgreementbyclickingContinue,ifyou agreewithit.Ifnot,youcanaborttheinstallationbyclickingthe Goback button. ThenextstepsetsuptheEAGLEdestinationfolderandpossiblyadestination volume. Byclicking Continue youacceptthesuggesteddirectory.Clickthe Choose buttonandyoumayselectanyotherlocationfortheEAGLEfolder. After confirming the installation path the files are copied into the EAGLE folder. Afterfinishing theinstallationyou areabletostartEAGLEbyclickingthe EAGLEiconintheFinder'sApplications/EAGLEentry. While starting EAGLE forthefirst time, youwill beasked howtolicense EAGLE:

UseLicensefile ThisimpliesthatyouhavealreadyboughtanEAGLElicense.Inthis casethefollowingdialogasksforthepathtoyourpersonallicensefile license.key andforyourpersonalinstallationcodeyouhavegotfrom CadSoft. UseFreemiumCode Ifyouregisteredathttp://www.element14.com/eaglefreemiumandgot aFreemiumcode,usethisoption. RunasFreeware EAGLEwillbelicensedwiththelimitsoftheLightEdition.It'spossible toupgradetoapurchasedlicensewithoutreinstallationatanytime.
Tutorialandmanualinpdffileformatarepartoftheinstallationandare locatedinthedocfolderoftheEAGLEinstallation. IncaseyouwanttouninstallEAGLEfromyourcomputer,simplydeletethe EAGLEentryinthetheFinder'sApplicationsfolder.

13

EAGLE 5 Tutorial

4 Language Settings
EAGLE decides due to the operating systems' language which language to use.Ifthesystems'language,forexample,issettogerman,EAGLEwilluse germanlanguage.Incaseyoudon'tliketheautomaticallyselectedlanguage, youhavethefollowingpossibilitiestochangeit.

Windows
EAGLE takes care on a variable named LANG. For changing it go to the WindowsControlPanelwhereyoucandefineenvironmentvariables.Setup avariablenamedLANG. Forenglish language the valueistypicallysetto en_US or en_GB. For german language the value should be set to de_DE, de_CH,orde_AT. IncaseyouwouldliketouseabatchfiletostartEAGLE,itcouldlooklike this:
SET LANG=en_GB cd C:\Program files\eagle-5.x.x start bin\eagle.exe

Thisisofuse,ifthereareotherapplicationsthatreactontheLANGvariable. ThebatchaffectsEAGLE,only.

Linux and Mac OS X


ThesameasdescribedfortheWindowsEAGLEcanbedoneforLinuxand MacOSX.Thereyouhavetodefinethevariablewiththesystems'EXPORT command. YoucouldalsouseascriptfileinordertostartEAGLE:
LANG=en_US /home/user/eagle-5.x.x/bin/eagle

EAGLEisplannedtosupportmoreandmorelanguages.Pleaserefertothe fileUPDATE.txtforinformationaboutcurrentlysupportedlanguages.

14

EAGLE 5 Tutorial

5 Individual EA GLE Setup


Apartfromthebasicinstallation,EAGLEallowstheusertocustomizecertain program features, such as the configuration of menus, function keys, or screencolors.AlotofthesesettingscanbemadeintheOptionsmenuinthe ControlPanelorinoneoftheeditorwindows.

The Script File eagle.scr


In the special command file (script file) eagle.scr preset values for the Schematic,Layout,andLibraryEditorscanbeenteredintheformofEAGLE commands. Those who would like to use these possibilities should get acquaintedwiththeEAGLEcommandlanguage.ThesyntaxofeachEAGLE commandisdescribedintheEAGLEhelp.

User Interface
Theuser interface canbeset individually. Clickthe Options/User interface menu in the Control Panel or in one of the Editorwindows. The tutorial presupposesthatyouareusingthedefaultsettings.

Function Keys
Severalfunctionkeysarepredefinedwithdifferentcommands.Thislayout canbechangedbytheuseratanytime.However,operatingsystemspecific keys(likeF1 forthehelpfunctioninWindows)mustnotberedefined.The currentfunctionkeyslayoutcanbefoundinthemenuOptions/Assign. Thefollowingkeysareassignedbydefault:

Alt+BS Shift+Alt+BS F2 Alt+F2 F3 F4 F5 F6 F7 F8 F9 F10

UNDO REDO WINDOW; WINDOWFIT; WINDOW2 WINDOW0.5 WINDOW(@); GRID; MOVE SPLIT UNDO REDO

undoaction redoaction redrawwindowcontent zoomtofit zoominwithfactor2 zoomoutwithfactor0.5 centercursorposition display/hidegridlines activateMOVE activateSPLIT undoaction redoaction

15

EAGLE 5 Tutorial

Layer Colors
Thelayercolorsarefreelydefinable.Inthe Options/Set, Color tab,youcan definecolorvalues.Youalwayshavetodefineapairofcolors: The normal color of the layer and the highlight color, which is used to emphasize an object while using the SHOW or MOVE command. Use the DISPLAYmenu,Changebutton,Coloritemtoassigncolorstolayers. Additional information concerning configuration can be found in the help function.SeetheitemsSET,ASSIGN,UserInterface,CHANGE,andProject.

16

EAGLE 5 Tutorial

6 T he Concept of the EA GLE User Interface


Internally,EAGLEhasbeensetupinsuchaway,thatanyactionisinitiated by a command string. Normally the user activates these commands by clickingonmenu items ortoolbaricons. Valuesarenormallyenteredinto appropriatefields. Asanalternativeyoucanclickonanobjectwiththerightmousebuttonand selectoneoftheobjectspecificcommandsfromthecontextmenu. The knowledge of the internal command language is not necessary to successfully design schematics and boards with EAGLE. However, this conceptoffersfurtherpossibilitieswhichmakeEAGLEaveryflexibletool: Anycommand,forinstance,canbeenteredintextformatviathecommand line or can be read from a file. Furthermore, command strings can be assignedindividuallytofunctionkeys(ASSIGNcommand).Thisenablesthe usere.g.toexecutecommandsequenceswithakeystrokeorafewmouse clicks(seeSCRIPTcommand). ThistutorialusesasimplifiednotationforvariousactionsinEAGLEwhichis explainedinthefollowingexamples.

Selecting Menu Items


Thecharactermeans,thatamenuselectionistobemade.Forexample File/Save means:clicktheFilemenuwiththeleftmousebuttonandnextclickSave.

Mouse Click
Actionstobecarriedoutwithaclickoftheleftmousebuttonarerepresented withadot.Forexample: MOVE and F1 means:clicktheMOVEcommandwiththeleftmousebuttonandthenpress thefunctionkeyF1. Actionstobecarriedoutwithadoubleclickoftheleftmousebuttonare representedwithtwodots.Forexample linear.lbr means:selectlinear.lbrwithadoubleclickoftheleftmousebuttonfromthe menu. SomecommandshavespecialfunctionsincombinationwiththeShift, Ctrl,andAltkey.Pleaseseedetailedinformationinthecommand referenceofthehelpfunction. InthiscontextMacOSXusershavetousetheCmdkeyinsteadofCtrl!

17

EAGLE 5 Tutorial

Several Input Alternatives


EAGLEcommandscanbeenteredviakeyboard,byclickingiconsorbyclick ingmenuitems. Thefollowingactions,forexample,willexecutetheMOVEcommand: Clickingtheicon ,thenontheobject

TypingMOVEinthecommandline,followedbytheEnterkey,then clickingtheobject TypingMOVEandtheobjectnameinthecommandline,followed bytheEnterkey,forexample:MOVE IC1 Openingthecontextmenuwitharightmouseclickontheobject, thenselectingMove PressingthefunctionkeyF7whichisassignedtotheMOVEcommand SelectingthemenuitemEdit/Move Inthistutorialwewillmainlyworkwiththetoolbars.Forthesakeofclarity thecommandsareshowastext: MOVE means:clicktheMOVEicon

Use of Key Combinations


The+characterindicatesthatthefirstkeyishelddownwhilepressingthe secondkey.Forexample: Alt+F2 TheAltkeyishelddownwhilepressingF2,thenreleasebothkeys.

The Context menu


Youmay also clickwith the right mouse button onanobjecttoopenthe contextmenuthatoffersobjectspecificcommands. FurthermorethecontextmenucontainstheentryProperties,thatallowsyou tochangetheobject'sproperties,ifapplicable.Thiswindowcanbeopened withtheINFOcommand,aswell.

Command and Parameter Input via the Command Line


ActionswhichneedtobeterminatedwiththeEnterkeyaresymbolizedwith thecharacter.Forexample USE means:typeUSEintothecommandlineandnextpresstheEnterkey. Anythingthatistobetypedexactlyasitappears,willappearinthetextas follows: CHANGE WIDTH 0.024 NormallyEAGLEdoesnotdifferentiatebetweenupperandlowercasecharac

18

EAGLE 5 Tutorial
ters.Thereforeyoucanentertheabovecommandas change width 0.024 Youmayabbreviatethekeywords.Theaboveinputmaythereforebesimpli fiedto cha wid 0.024 Inthistutorial,however,thefullcommandsareused. Thefollowingimagesshowwhichcommandsareactivatedwiththevarious toolbar icons. Additional help is offered by the Bubble Help text which appearsassoonasthemousecursorispositionedonaniconforacertain time.Thistextshowsthecommandname.

TheLayoutEditorwindow
Fromtoptobottom:titlewithinformationaboutEAGLEversionandedition, menubar,actiontoolbar,dynamicparametertoolbarandcoordinatesdisplay withcommandline. Ontheleftthecommandtoolbar.TheBubbleHelptextdescribestheWIRE icon.Thestatusbarbelowshowsashortdescriptionofthecurrentcommand. The toolbars can be displayed/hidden in the Options/User interface menu. Additionallyonehasthepossibilitytouseatextmenuinsteadoftheshown commandtoolbar.

19

EAGLE 5 Tutorial
The Layout Editor displays the board the same way as if holding the manufactured board in your hands. You are looking through it from above. Info Display Move Mirror Group Cut Delete Pinswap Gateswap Name Smash Split Wire Circle Rect Bus Junction Attribute Erc Errors Value Miter Invoke Text Arc Polygon Net Label Show Mark Copy Rotate Change Paste Add Replace Info Display Move Mirror Group Cut Delete Pinswap Lock Name Smash Split Route Wire Circle Rect Via Hole Ratsnest Erc Errors Value Miter Optimize Ripup Text Arc Polygon Signal Attribute Auto Drc Show Mark Copy Rotate Change Paste Add Replace

CommandtoolbaroftheSchematicEditor(left)andthe LayoutEditor(right)

20

EAGLE 5 Tutorial

7 Control Panel
AfterstartingEAGLE,theControlPanelwillbeopened.Itallowsyoutoload and save projects as well as tosetup certainprogramparameters.Aright mouseclicktoanentryintheProjectsbranchofthetreeviewopensacontext menuthatallowstostartanewproject(New/Project). ThetreeviewallowsaquicksurveyofEAGLE'slibraries.Ifyouexpandoneof thelibraryentries in thisbranch,forexample 40xx.lbr,thecontentofthe librarywillbeshown. SelectaDeviceorPackageentrytodisplaythepreviewofthisobjectonthe right.

ControlPanel:Previewofthelibrarycontents
TheControlPaneloffersalsoanoverviewofUserLanguageprograms,Script files,andCAMjobs.Tryselectingvariousentries.Ontherightyouwillget thereferringdescription. TheControlPanelsupportsDrag&Dropinusualmanner.Arightmouseclick onanyentryinthetreeviewopensacontextmenuthatoffersoptionslike Print,Open,Copy,Renameetc. Thecursorkeysallowyoutonavigateefficientlywithinthetreeview.The cursorright key expands a branch. Cursorleft jumps back to the superior node.HitCursorleftagaintoclosethebranch.Cursorup/downleadsyouto theprevious/nextentry.

21

EAGLE 5 Tutorial
ThepathsforeachbranchofthetreeviewaresetinOptions/Directories.

EAGLE Files
Thefollowingtableliststhemostimportantfiletypesthatcanbeeditedwith EAGLE: Type Window Name Board Layout Editor *.brd Schematic Schematic Editor *.sch Library Library Editor *.lbr Script File Text Editor *.scr User Language Program Text Editor *.ulp Any text file Text Editor *.* EAGLEusesonlylowercaselettersforfileextensions!

Backup Files
EAGLEcreatesbackupdataofschematic,board,andlibraryfiles.Theywillbe savedwithmodifiedfileextensions: .brdbecomes.b#1,.schbecomes.s#1,and.lbrbecomes.l#1. Therecanbeamaximumnumberof9backupfiles. ItisalsopossibletohaveEAGLEfilessavedinacertaintimeinterval.Inthis casethefilesgettheextensionb##,s##orl##.Thefilescanbeusedagain afterrenamingthemwiththeoriginalfileextension. AllsettingsconcerningbackupscanbedoneintheOptions/Backupmenuof theControlPanel.

Create EAGLE Projects


Lets create a new project first. After starting the program, first the +character of the Projects path, then the +character of the entries examplesandtutorialinthetreeview.Thecontentsofthetutorialdirectory appears.tutorialwiththerightmousebutton.SelecttheoptionNewProject inthepopupmenu.NamethenewprojectMyProject,forexampleandhitthe Enterkey.Thiswayyouarecreatingasubdirectoryoftutorialthatisnamed MyProject. This directory should contain all data files thatbelong to your project.Ofcourseyoumaydefineadditionalsubdirectories. To define the path where your project directories will be stored, click Options/DirectoriesandenteritintheProjectsfield. Arightmouseclickontheprojectentryandyoucanopennewschematics, layoutsandlibraries.Eachprojectdirectorycontainsafilenamed eagle.epf whichstoresprojectspecificsettings,windowpositionsetc. Thecurrently activeprojectischecked (green) intheControlPanel.After startingtheprogramagaintheprevioussituationwillberestored.Thelast

22

EAGLE 5 Tutorial
usedprojectandotheruserspecificsettingsaresavedinthefile ~/.eaglerc (Linux,Mac)oreaglerc.usr(Windows). Beforestartingthefollowingexamples,wewanttocopythefilesdemo1.sch, demo2.sch, and demo2.brd from the tutorial directory into the directory MyProject. Press the Ctrl key, click the desired file and drag it to the MyProjectentry.Releasethemousebuttonnow.TheCtrlkeyeffectuatesthat the files will be copied, otherwise they would be moved to the target directory. EAGLEforMacbehavesdifferenthere: ClickingontoafileentrywithpressedCtrlkeyopensacontextmenu.Select theCopyoptionandchoosethetargetfolderinthefiledialogthen. Nowopentheschematicfiledemo1.schwithadoubleclick. If you end the program with Alt+X and start it again, you will get the previoussettingsandeditorwindows.

23

EAGLE 5 Tutorial

8 Load File and Select M onitor Zoom


Now let us start doing some exercises. Start EAGLE, and wait until the ControlPanelappears. Expand the entry Projects/examples/tutorial/MyProject of the tree view. If MyProject does not yet exist, please create it as explained inthe previous chapter. Nowloadthedemo2.brdfile.Youcandothiseitherbytheentry demo2.brd,orbyselectingthefilefromthemenu File/Open/Board.The schematicwiththesamenamewillbeloadedalongwiththeboard. Enlargetheboardeditorwindow. Firstclicktheicon intheactiontoolbartozoomintothedrawing.This

WINDOWcommandcanalsobeexecutedbypressingthefunctionkeyF3. Ifyouareworkingwithawheelmouse, youcanzoomintooroutofthe drawingbyturningthemousewheel. If you want to deactivate this feature, set Mouse wheel zoom = 0 in the Options/UserInterfacemenu. Clickthisicon orpressF4tozoomoutofthedrawing. thedrawingwillbeshowninfullsizetofityour

Byclickingthisicon

screen(youcanalsouseAlt+F2instead). Clickthisicon andthenmarkarectangularareabydraggingthemouse

cursorwhiletheleftmousebuttonispressed.Thenreleasethemousebutton. Themarkedareawillnowbedisplayed. It'spossibletodefineacertainareaofthedrawingasasocalledaliasthat canbeusedasaparameterwiththeWINDOWcommand.Openthecontext menuofthe Windowselect iconwitharightclickontheicon.Select New... andnamethealias. Topanthecurrentdrawingareasimplyclickthemiddlemousebutton andmovethemouse.Thisalsoworkswhileaneditorcommandisactive, forexample,whiledrawingnetsorwires. Ifthecursorisovertheverticalorhorizontalscrollbarandyouareworking withawheelmouse,youcanmovethescreenupanddownortotherightor leftbyturningthemousewheel. Duringcertainactionsitmayhappenthat objectsinthedrawing disappearorgetcorrupted.Inthiscaserefresh the screenbyclickingtheRedrawicon (alsoF2possible).

24

EAGLE 5 Tutorial
WINDOW LASTrestoresthepreviouslydisplayedwindowarea. TheWINDOWcommandismoreversatilethaninotherprograms: Clickthisicon ifyouwanttoselectanewcenterwiththesamezoom

factor,markthecenterwithaclickandfinallyclickonthetrafficlighticonin theactiontoolbar. Ifyouwanttoselectanewcenterandanewzoomfactorsimultaneously, clickonthesameicon.Threemouseclickswillgiveyouthedesiredresult: thefirstclickwilldefinethenewcenterandbothlastclickswilldefinethe zoomfactor.Ifthethirdpointisfurtherawayfromthefirst,theprogramwill zoomintothedrawingandviceversa.Tryittofindouthowitworks. Further possibilities can be found on the help pages of the WINDOW command.Thesecanbecalledupbysimplytypinginthecommandline: HELP WINDOW

25

EAGLE 5 Tutorial

9 Selecting Lay ers for Display


EAGLEDrawings contain objects in different drawing layers. In order to obtain a useful result several layers are combined for the output. For example,thecombinationofTop,Pad,andVialayersisusedtogeneratea film for etching the component side of the printedcircuit board. Consequently the combination of Bottom, Pad, and Via layers is used to generatethefilmforthesoldersideoftheboard.ThePadlayercontainsthe throughholesforthecomponentconnectionsandthevialayercontainsthe viaholeswhichareneededwhenasignaltrackchangestoanotherlayer. Loadtheboarddemo2.brd(File/Open/Board)intheControlPanelorinthe LayoutEditorwindowandclickinthecommandtoolbarontheiconforthe DISPLAY command . The marked layers are currently displayed. By clickingonthelayernumberthedisplayofeachlayercanbeswitchedonor off.The All and None buttonsswitchonoroffalllayers. Aclickonto Apply immediatelyshowsthechangesinlayerselectionintheeditorwindow. Components on layer 1, Top, can only be moved or selected in the drawingiflayer23,tOrigins,ison.Thesameappliestocomponentson layer16,Bottom,andthelayer24,bOrigins. ToselectacertainlayerintheDISPLAYmenuclickonthelayername.Now youcanusethe Change buttontomodifythelayer'spropertieslikename, color,orfillstyle. Torestoretherecentlayerselection,useDISPLAY LAST . Pleaseconsultthehelppageofthe Layer commandforthemeaningofthe differentEAGLElayers.

26

EAGLE 5 Tutorial

10 Setting up Grid and Unit


Schematicsshouldalwaysbedrawnonagridof0.1inches(2,54mm)since thelibrariesaredefinedthisway. The grid for boards is determined by the components used and by the complexityoftheboard. GridandunitaresetupbyclickingontheGRIDicon intheparameter

toolbar. ClickingwiththerightmousebuttonontheGRIDiconopensapopupmenu. ItcontainstheentryLastwhichswitchestothegridusedbefore.WithNew.. youareallowedtodefinesocalledaliasesrepresentingcertaingridsettings. ThealiasnamecanbeusedasaparameterwiththeGRIDcommand.Quick switchesfromonegridsettingtoanotherarepossiblenow. Allvalues aregiveninthecurrently selectedunit.Pleaseconsultthehelp pagesoftheGRIDcommandfordetailedinformation. ForallsettingsintheDesignRuleswindow(Edit/DesignRules...)onecan usevaluesinmilorinMillimetres(1mil=1/1000inch).Thedefaultunitis mil. IfyouprefertoworkwithMillimetressimplyaddtheunittothevalue,for example: 0.2mm InchMilMillimetreTablefortheMostUsualValues: inch mil mm 0,008 8 0,2032 0,010 10 0,2540 0,012 12 0,3048 0,016 16 0,4064 0,024 24 0,6096 0,032 32 0,8128 0,040 40 1,0160 0,050 50 1,2700 0,100 100 2,5400 TheGRIDdialogallowssettinganalternativegridwhichcanbeactivated bypressingtheAltkeyintheEditorwindow.

27

EAGLE 5 Tutorial

11 W ires, Circles, A rcs, Rectangles, and T ext


Wires, circles, arcs, rectangles, and text are created with the WIRE CIRCLE ,ARC ,RECTANGLE andTEXT ,

commands.Onone

hand these objects serve as pure drawing elements forsymbols,packages, framesetc.,andontheotherhandtheycanperformspecialfunctions,such asthedefinitionofrestrictedareas. Firstanewschematicfileistobecreated.Closealloftheeditorwindowsand selectFile/New/SchematicfromtheControlPanel. Anewfilewiththename untitled.sch isnowcreated.Normallyyoushould neversaveafilewiththenameuntitled,butshoulduseFile/Saveas...to chooseadifferentname.However,inthistutorialnofileistobesavedatall. Nowenlargetheeditorwindow.

The WIRE Command


TheWIREcommandisusedtodrawlines.

ParametersoftheWIREcommand
Click the WIRE icon in the command toolbar. All parameters for this commandcanbesetupintheparametertoolbar.Selectlayer94, Symbols, fromthelayerselectionbox.Drawarectangularlineinthislayernow: Definethestartingpointbyaclickonthelefthandmousebutton.Movethe cursor slightly up to the right and select the various bend modes in the parametertoolbar.Amongsomediagonalandorthogonalmodesyouwillfind sometodraw90arcsandfreedefinablearcs. Iftheconnectionisdisplayedinasquareangle,presstheleftmousebutton tofixitsposition.Movethecursortothestartingpointand todropthe line.Nowyoushouldseearectangularoutline. Asobservedbefore,variouswirebendstylescanbeusedbyclickingthewire bendiconsintheparametertoolbar.Moreefficientisusingtherightmouse buttonwhiledrawingawire.ActivatetheWIREcommand,startdrawingthe line,andclicktherightmousebuttonafewtimestogothroughthedifferent wirebendmodes. However,intheSchematicEditor,thethreearcmodescanbeselectedonly intheparameter toolbar, not with the rightmouse,asitisintheLayout Editor. Keeping the Shift key pressed while clicking the right mouse button will inverse the selection order. Pressing the Ctrl key toggles between correspondingwirebends.

28

EAGLE 5 Tutorial
DonotusetheWIREcommandtodrawnetorbuslinesintheschematic. UseNETorBUSinstead! UseROUTEandnotWIREtodissolveairwirestotracksintheLayout editor.OtherwiseEAGLEwouldnotsetviasautomaticallywhenchanging signallayers. IntheLayoutEditor: Ifthelines(WIREcommand)areplacedontheboardlayersTop,Bottom,or Route2..15 EAGLE treats them as electrically conducting tracks.Wires are alsousedtocreateboardoutlinesinlayer20,Dimension.Let'sstartusingthis command.

Changing Line Width


AslongastheWIREcommandisactive,youcanselectthelinewidthfrom thecomboboxintheparametertoolbarortypeinaspecificvalue,separate foreachsegment. Tochangethelinewidthofanexistingobject, CHANGE andapopupmenuwillopenup.

WIDTH entryandafurtherpopupmenuwillshowupwherethe presentvalueismarked. Select the desired value by a left mouse click,thenclicktheobject tobe changed. Tochangethelinewidthtoavaluethatisnotshowninthemenuofthe CHANGEcommand,clicktheentry...andtypeinthevalueintheChange Widthwindow. Alternativelyusethecommandlinetotypeinthevalue,forexample: CHANGE WIDTH 0.017 Thenclickonthewiresegmentyouwanttochangeorstartdrawinganew wire. Tochangethewirestyle CHANGEand Style.Selectthestyleand the wireyouwanttochange. Wire properties like Width, Style or Layer can bealteredthrough the Propertiesentry ofthecontext menu.Select thewireinquestionbya rightmouseclicktoopenthecontextmenu. AsanalternativeusetheINFOcommandtoopendiepropertiesdialog.

Change Object to another Layer


Tomoveanobject,forexampleawiresegment,toanotherlayer

29

EAGLE 5 Tutorial
CHANGE LAYER Selectthetargetlayer,forexample94 Symbols,by .Then OK,andthen ontheselectedobject(s).Notethatsomeobjects,suchasbusornetlines, cannotbemovedtoanotherlayerastheyhaveaspecialmeaning. Thiscanbedonewithgroups,too: GROUP anddrawaframearoundallobjects,then CHANGE andinthepopupmenu Layer,thenselectthelayerin theLayerlist,now holdthe Ctrl keypressedandclickwiththeright mousebuttonintothegroup

Undo/Redo Function
OneofthemostusefulfeaturesofEAGLEistheunlimitedUndo function. Click theleft icon as many times as youwant toundo previous actions.Usetherighticontoredotheactionswhichhavebeencancelledby undo.

The CIRCLE Command


ToactivateCIRCLE,whichisusedtodrawacircle, CIRCLE EAGLErequirestwomouseclickstodefineacircle.Thefirstclicksetsthe centerofthecircleandthesecondclickdefinestheradius. Placethecursoratanygridpointand.Dragthecursorseveralgridpointsto theright.Whenthecirclehasthediameteryouwant,tofixitandterminate thecommand.Thelinewidthofthecirclecanbechangedasdescribedbefore forwires.Acirclewithlinewidth0willbefilled. Examplefordrawingacircleusingcoordinatevalues: Acirclewiththeoriginatpositionx=10andy=25andaradiusof15mm shouldbedrawn. FirstsetthegridtoMillimetre: GRID MM Drawthecirclenow: CIRCLE (10 25) (10 40) or CIRCLE (10 25) (10 10) Thesecondpairofcoordinatesdescribesanylocationonthecircumference. Sovariousvaluesarepossibletodescribeonecertaincircle. TofindoutmoreabouttheCIRCLEcommandpress F1aslongasthecom mandisactivatedortype HELP CIRCLE

30

EAGLE 5 Tutorial
To cancel a command, click the stop sign icon or activate another

command.PressingtheEsckeygenerallyunlocksanobjectfromthecursor.

The ARC Command


ToactivatetheARCcommand,whichisusedfordrawingarcs, ARC An arc is defined with three mouse clicks: the first click defines the start point,thesecondthediameterandthethirdtheendpoint. Placethecursoratthedesiredstartingpointand .Nowmovethecursor somegridunitstotherightbutremainonthesameYcoordinate.Acircle appearswhichshowsthediameterofthearc.andthecirclewillbecomean arc.Nowyoucanchangethedirectionofthearcwiththerightmousebutton. Clickseveraltimeswiththerightbuttonandyouwillseewhatismeant.You canalsoenlargeorminimizethearcbymovingthemouse.Afterreachingthe desiredform,tofixthearc. Theparametersflatandrounddeterminetheshapeofthearc'sends. Practicebydrawingsomearcs.Usethehelpfunctiontofindoutmoreabout theARCcommand. AllthiscanbedonewiththeWIREcommandaswell!

The RECT Command


ToactivatetheRECTcommand,usedforcreatingfilledrectangles, RECT To define a rectangle two mouse clicks are required: The first one will determineonecornerandtheseconddeterminesthepositionoftheopposite corner. Movethecursortothepointwhereacorneroftherectangleshouldbeand Movethecursorslightlytotherightandup.Whentherectanglehasreached thedesiredsize,tofixit.Therectangleisfilledwiththecolorofthelayerin use. UsethehelpfunctiontofindoutmoreabouttheRECTcommand.

The TEXT Command


ToactivatetheTEXTcommand,usedforplacingtext, TEXT Nowatextinputwindowopenswhereyoucantypethetext.Then OK. Placethetextwith.Acopyofthesametextisnowattachedtothecursor.

31

EAGLE 5 Tutorial
Tostopplacingtext,simplyclickthenextcommandiconortheStopicon.For placingadifferenttext,typethetextinthecommandlineandterminateit withtheEnterkey.Thetextshowsupatthemousecursorandyoucanplace it. Textscontainingspacesorasemicolonhavetobeenclosedinsinglequotes, likethisone: 'This is a text' Selectingthe Properties entry ofthe context menu allowsyoutoalter propertieslike Size, Ratio, Font,Layer, andthe text itself.Toopenthe contextmenuclickwiththerightmousebuttononthetext'sorigin. Alternativemethodsforchangingtextproperties: Tochangethetextfont: CHANGE FONT EAGLEsupportsavector,aproportional,andafixedfont. Tochangethesizeofatext: CHANGE SIZE Valueinthemenu ortypeinanydesiredvalueinthecommandline(confirmwiththe Enter key)andlowerleftcornerofthetext.Atarotatedtextthepointoforigin canmovetoitsupperrightcorner.Atextinaschematicisalwaysdisplayed inawaythatitcanbereadfromthefrontorfromtheright. The LayoutEditor allowstodisplaytextsinanyorientation.Usethe Spin flagwhich is located in the parameter toolbar while theTEXT,MOVE, or ROTATEcommandisactivetogettextsreadablefromalldirections. Tochangeatext: CHANGE TEXT atthepointoforiginofthetext TheneditthetextandOK. Using CHANGE RATIO youareabletochangethelinewidthinatextinrelationtotheheightofthe Vectorfont(notProportionalorFixedfont).

Special Text Variables


Ifyouplacethetext >SHEET

32

EAGLE 5 Tutorial
thisstringwillbesubstitutedwiththecurrentsheetnumber,e.g.1/1(sheet oneoftotally1). EAGLE offers a number of similar text variables, e.g.fordate/time which reflect the latest change in the file (>LAST_DATE_TIME) or the drawing output(>PLOT_DATE_TIME). Librarypartsaredefinedwithtextvariablesforthename>NAMEandthe value>VALUEofacomponent.Furthermoreonecanuse>PARTand>GATE forsymbols. Apart from the predefined placeholder texts, EAGLE interprets text that begins with the '>' character as a userdefinable, componentspecific or globalattribute.Formore,seethehelppagesoftheATTRIBUTEcommand.

33

EAGLE 5 Tutorial

12 Using Libraries
EAGLEcomeswithalotoflibraryfilesthatcontainthroughholeandsurface mount devices. The tree view in EAGLE's Control Panel offers detailed informationaboutthecontentsofthelibraries. Inthissectionyouwilllearnhowtoinsertschematicsymbolsintoadrawing andhowtousethem. Openanewschematictostartwithablankdrawingarea: File/New/Schematic.

The ADD Command


Toselectsymbolsfromalibrary,ADDinthecommandtoolbar,anda windowpopsup.Ontheleftsidealistofavailablelibrariesshouldappear. Each library entry can be opened by clicking the + character. Now it's contentswillbeshown.Selectanentryandyouwillseethecorresponding previewontheright. ThecursorkeysallowyoutonavigateefficientlywithintheLibrarylist.The cursorrightkeyexpandstheLibraryorDeviceentry.Cursorleftjumpsbackto thesuperiorentry.Hit Cursorleft asecondtimetocloseit. Cursorup/down leadsyoutotheprevious/nextentry. If you type in any letter, the first entry beginning with thisletter will be selected.Typingmorelettersswiftlyoneaftertheother,forexamplecon,the firstentrybeginningwithconwillbeselected. YoucanenteroneormoresearchpatternsintheSearchfield.Youmayuse thenameofaDeviceoranywordoftheDevicedescription.Wildcardslike* and?areallowed. IftherearenoentriesvisibleafterusingADDforthefirsttime,nolibraries havebeenloaded.Inthiscase,pleasereadthefollowingchapterdealingwith theUSEcommand. Wewanttoplace,forexample,thedevice74LS00.EnterintheSearchfield: 74*00* or 74LS00* *isthewildcardofthetechnologyand/orthepackagevariant.Thesearch resultshowsthedeviceinvarioustechnologiesandpackagevariants.Select thedesireddeviceandOK.Nowyoucanplaceitintheschematic. Place the cursor slightly totheleft of the display center and .Movethe cursortotheright,andplaceasecondgatewiththenextmouseclick.Place fourgatesaroundthecenterofthedrawingareainthisway. Nowplaceafifthgatesomewherenearby.PleasenotethatEAGLEhasnamed thefirstfourgatesIC1A..IC1D,whereasthefifthgatehasbeennamedIC2A, sincethisgaterequiresasecondIC. Ifyounowshowthelayer93,Pins,eitherasdescribedbeforeorbytyping

34

EAGLE 5 Tutorial
DISPLAY PINS inthecommandline,furtherpinparametersaredisplayedingreen.Zoomin onthedrawing,sothatagateisshownonalargescale.Youwillseethatthe pinsaremarkedasInput(In)orOutput(Out),andthatanumbershowsthe Swaplevel. A Swaplevel greater than 0 indicates that this pin can be swapped with anotherpinofthesamedevicewhichhasthesameSwaplevelassignment (seecommandPINSWAP).ApinwithaSwaplevelof1,forexample,canbe swappedwithanyotherpinthathasaSwaplevelof1.Swaplevel0means thatthispincannotbeswapped. Thelayer93,Pins,isnotusuallyprinted. AslongastheADDcommandisstillactive,agatesymbolwillbeattachedto thecursor. Now use the Zoomin icon or the F4 key to view a larger portion of the schematiconthedisplay.ThenpresstheEsckeytotheselectionwindowof theADDcommand. EnterthefollowingpatternintheSearchfield: *555N* or *555* Select,forexample,thedeviceLM555Nfromlinear.lbrwith ,rotateit180 degreeswithtworightmouseclicks,andplaceitsomewhereonthedrawing areawiththeleftmousebutton. Repeatthiswithothersymbols.Youwillfindoutthatthelibrariescontain symbolsdrawnintheEuropeanandtheAmericanway.Choosewhateveryou prefer. While the ADD command is active, you can return to the ADD menu by pressing the Esc key. Press the Esc key again and the command will be cancelled. Thequickestwaytoaddacomponentyoualreadyplacedinthedrawingisto rightclick the ADD icon. A popup menu opens thatcontains a list of the previouslyplacedcomponents.Selectoneofthemandplaceit. Anotherwaytoplacedevicesintheschematicistodragthemfromthetree viewintheControlPanelintotheSchematicEditorwindow. Arrangethewindowsinawaythatyoucanseebothonthescreen.Select,for example, the device LM555N from linear.lbr in the tree view (Libraries branch).UseDrag&DroptomovethedeviceintotheSchematicEditor. If you select adevicethat supports more thanonepackageortechnology variant,youwillbeaskedtoselectthevariantinamenubeforedroppingit.

35

EAGLE 5 Tutorial
EAGLE,bydefault,assumesthatallactivecomponentswillbeattachedto the samepower source and ground. Thepower pins aretherefore not shown,andareautomaticallyconnectedtothePowerSourceandGround when generating a board (unless the user connects them to other signals).UsetheINVOKEcommandincaseyouwanttoplaceitinthe schematic. MostoftheEAGLElibrarydevices, whichhaveonly oneVCCandone GNDpin,aredefinedsothatthepowerpins,bydefault,arenotvisible. InsomecasesitmakessensetomakethepowerpinsinanICvisible,as inthe555Nstoredinthelinearlibrary.Insuchacaseconnectthepower pinswiththeappropriatenets. ThehelpfunctioninEAGLEoffersinformationaboutfurtheroptionsofthe commands ADD and UPDATE concerning the update of library objects in schematicandlayoutwiththeirrespectivepartsofthecurrentlibraries.

The USE Command


ThedefaultsettingcausestheADDcommandtosearchinalllibraries thatareavailableinthegivenlibrariesdirectories(Options/Directoriesin theControl Panel). You can exclude libraries from the search functionby clickingthegreenmarkerintheControlPanel'streeview, Librariesbranch. Greenmeansinuse,graynotused.ThisisexactlythefunctionoftheUSE commandyoucanalsotypeonthecommandline. Forexample,thecommand USE * makes available all libraries that can be found in the given library paths. Moreaboutthiscanbefoundinthehelpfunction.

The INVOKE Command


TheINVOKEcommandcanbeusedtoallowtheconnectionofactive componentstoapowersourceotherthanVCCandGND.Todemonstrateits use INVOKE andleftclickonthegateIC2A.Apopupmenuappears. PWRN andthepowerpinsforIC2areattachedtothecursor.Youcan nowplacethemanywherewitha andconnectthemtoanynet. AnotherfeatureoftheINVOKEcommandallowsyoutoalterthesequenceof thereferencedesignatorsbeforeEAGLEautomaticallymakesanassignment. AssumingtheINVOKEcommandisstillactive, IC2A,andthepopupmenu appears. ThegreyfontassignedtogateAindicatesthatthegatehasbeen

36

EAGLE 5 Tutorial
used;thoseprintedinblackfontareavailableforuse. IfyouwantIC2CtobeplacedbeforeIC2B, C inthepopupmenu.The menucloses,andIC2Cisattachedtothecursortobeplacedwitha .Once IC2Cisplaced,EAGLEwilluseuptheremaininggatesinthatpackagebefore assigninganadditionalpackage. Ifyouwanttoplacegatesovermorethanonesheet,usetheINVOKEcom mandonthenewsheetandtypeinthepart'snameinthecommandline. Nowtheinvokemenupopsup. Don't hesitate to experiment with different libraries and with placing and rotatingschematicsymbols. YoucanplaceDevicesinadrawingfromasmanylibrariesasyouwant. DevicesaresavedintheSchematicorBoardfilesintheirentirety.When passingonafile,thereisnoneedtosupplytheLibrarieswithit.

37

EAGLE 5 Tutorial

13 Drawing a Schematic
Inthissectionyouwilllearnhownetsandbusesareusedinadrawing.You willthenbeabletocreateaschematic. Tocreateanemptyschematic,openanewdrawingandenlargetheeditor window.

Grid
Thestandardgridforschematicsis0.1inches.Symbolsshouldbeplaced onthisgridoramultipleofit,sinceotherwiseitcanhappenthatnets cannotbeconnectedtothepins.

Setthealternative gridto0.25 inch.Thiswouldallowtoadjust,for example,labelsinafinergridwhichwillbeactivatedbypressingtheAltkey.

Adding a Frame to a Schematic


Asastart,selectadrawingframefromthelibraryframes.lbr,whichcontains predefinedframesinmiscellaneousformats. ADD,andenterthewordletterorframeinthesearchfield.Selectasuitable frameand forexampleLETTER_P. Aframewithdocumentfiledwhich fitsonaletterformatpage(portrait)isnowattachedtothecursor. Ifyoucannotseeitcompletely,pressfunctionkey F4 untilitmatchesyour screen,thenplaceitwithaclickofthelefthandmousebuttonsothatits lowerleftcornerisplacedonthecoordinates(X=0,Y=0). Nowafurtherframeisattachedtothecursor.Clicktheiconwiththestop symbol toterminatetheADDcommand.PressAlt+F2toshowtheframe intheactiontoolbar.

infullsizeorclicktheZoomtofiticon

YoucouldalsousetheFRAMEcommand( Draw/Frame..) todrawa framebyyourself.SeethehelpfunctionaboutFRAMEfordetails.

Adding and Changing Text


Youcanaddlines,textandotherobjectstopredefinedframesandtextfields inthelibrary. Variabletexts,e.g.theprojecttitleortherevisionnumber,canbeinserted directlyintheSchematicEditorwhereyouarenow. Framesaresavedassymbolsinthelibrary,thereforeitmakessensetowrite

38

EAGLE 5 Tutorial
thetextinlayer94,Symbols. Nowbringtheframetextfieldintotheeditorwindowsothatitiscompletely visible.NextclicktheiconfortheTEXTcommandandenterthefollowing text CadSoft AfterclickingtheOKbutton,thetextisattachedtothecursorandcanbe placedwiththeleftmousebutton.Movethetextintheupperemptylineof thetextfieldandplaceitwitha .Afurthercopyofthetext,whichwill disappearassoonasanothercommandisactivatedorthestopsigniconis clicked,isstillattachedtothecursor. IfyoudidnotdefinethesizeofthetextwhiletheTEXTcommandwasactive, youcanusetheCHANGEcommandtosetittoanothervalue: CHANGE Fromthemenuselect: SIZE andafurtherwindowopensinwhichthepresentlyselectedtextheightis shown. 0.15 andmovethecursortothelowerleftcornerofthetextCadSoft.Clickthe leftmousebuttonandthetextheightwillbechangedto0.15inches.Justin caseyouwouldliketosetasizenotpresentintheCHANGESIZEmenu,like. 0.17,simplytype: CHANGE SIZE 0.17 andthenclickthelowerleftcornerofthetext. Itisalsopossibletotypeinthevalueincombinationwithitsunit.Ifyou prefer,forexample,avalueinMillimetres(withoutchangingthegrid),type in: CHANGE SIZE 3.5mm Usedotsfordecimals!Thecurrentgridsettingdeterminestheunit,unless youspecifyitinthecommandline! Propertychangescanbemadeinthecontextmenu'sPropertiesentry,as well. Practicemanipulatingtextsbyaddinganaddressoradocumentnumberin thetextfield. TITLE:showsthefilenameinuse(textvariable>DRAWING_NAME). DATE: shows the date of the most recent save command (text variable >LAST_DATE_TIME). Bothfieldsareautomaticallyfilledwiththeactualdatawhenthedrawingis saved,sincetheframesstoredinthe frames libraryhavebeendefinedwith theappropriatetextvariables.

39

EAGLE 5 Tutorial

Entering a Schematic
Nowletsstartdrawingaschematic.Wewillbedrawingtheschematicshown inthefollowingfigure,whichyoucanuseforreference.Ifyoudon'twantto enter the whole schematic you can use the file demo1.sch stored in the eagle/examples/tutorialdirectory. Startbypressing Alt+F2 orclickingtheZoomtofiticontofillthewindow withthedrawingframe. Theschematicconsistsofthefollowingelements:
Part
C1 C2 C3 C4 C5 D1 IC1 IC2 JP1 JP2 Q1 R1 F1

Value
30p 30p 10n 47u/25V 47u 1N4148 PIC16F84AP 78L05Z PROG APPL 2,2k

Device
C-EUC1206 C-EUC1206 C-EU025-025X050 CPOL-EUTAP5-45 CPOL-EUTAP5-45 1N4148 PIC16F84AP 78L05Z PINHD-1X4 PINHD-1X17 XTAL/S R-EU_R1206 DINA4_L

Package
C1206 C1206 C025-025X050 TAP5-45 TAP5-45 DO35-10 DIL18 TO92 1X04 1X17 QS R1206

Library
rcl rcl rcl rcl rcl diode microchip linear pinhead pinhead special rcl frames

Sheet
1 1 1 1 1 1 1 1 1 1 1 1 1

UsetheADDcommandtoplacethelisteddevices. Pleasekeepinmind: Youreallyshouldnotchangethedefaultgridof100mil(=2.54mm)in theSchematicEditor.Onlythiswayyoucanbesurethatnetswillbe connectedtotheDevices'pins. YoucantogglethegridonandoffbyclickingtheGRIDiconormoreeasilyby usingF6,tohelpyoulocatingtheparts. OnceyouhaveplacedthepartsyoucanrelocatethemwiththeMOVEcom mand.ActivatetheMOVEcommandbyclickingtheappropriateiconinthe commandtoolbar,thenmovethecursortothepartyouwanttomoveand. EAGLEwillhighlightthepart,toletyouknowthatitisattachedtothecursor andreadytoberelocated. Relocatethepart,andtoplaceitinitsnewlocation.TheMOVEcommand isstillactiveandreadytomovethenextpart.Presstherightmousebuttonif youwanttorotateapart. ForduplicatingpartsyoumayusetheCOPYcommand(forexample,C1and C2).Thusyoudon'thavetofetcheachpartwiththeADDcommand. Whenyouhavelocatedtheparts,startconnectingthemusingtheNETcom mand. UsetheNETcommand,notWIREtodrawnetconnections!

40

EAGLE 5 Tutorial
Keepinmind: Arightmouseclick onanobject opensthecontextmenu.Itoffersall commandsavailablefortheobject. The NET Command Anetisonlyconnectedtoapinifitisplacedontheconnectionpointof the pin. Display the layer 93, Pins, with theDISPLAY command tolocate theseconnectionpoints.Theyaremarkedwithagreencircle. EAGLEautomaticallynameselectricalconnections(nets).Inourexamplede mo1.schthenetlinesatC5pin+,U1pin3(VI),andJP2pin16havethesame name.Thepinsareconnectedtothesamenet,althoughthenetlinesarenot drawn continuously. Activate the SHOW command and click on a net segment:thewholenetisdisplayedhighlightednow. WhiletheNETcommandisactive,thestatusbarbelowshowspropertiesof theselectednet. Netswiththesamenameareaffiliatedwitheachother! The NAME Command EAGLEautomaticallyallocatesnamessuchasB$..forbuses,P$..forpins andN$..fornets. NAMEandthenthenetconnectedtoIC1pinOSC1(16).Apopupmenu showsthepredefinednameofthenet.Typein OSC1 andOK.Thenetimmediatelynowhasthisname. Thenamesofcomponentsandbussescanbechangedinthesameway. The LABEL Command The LABEL command allows you to place bus or net names in any location.LABEL,locatethecursoronthenetMCLR/PGMand. Thenameofthenetisattachedtothecursorandalinepointstothenearest partoftherelatednet.Placethetextatanylocation.Youcanalsorotatethe labelwiththerightmousebutton.Locatethelabelapproximatelyasshown inthefigureand tofixitsposition(nearJP1pin3). Ifnetorbusnamesarechanged,therelevantlabelsarealsochanged.Label textisnotchangedwiththeCHANGETEXTcommandbutwiththeNAME command and a click on the net line or the bus line. CHANGE FONT or CHANGESIZEchangesthefontorthetextsize. If a schematic consists of more than one sheet (not possible in the Light Edition),itispossibletosettheXREFoptionforlabels.Thiscanbeusedfor

41

EAGLE 5 Tutorial
generating a cross reference to the referring net on the next sheet. This optionworksonlyincombinationwithdrawingframesthataredrawnwith the FRAME command. More details about this can be found in the help functionofFRAMEandLABEL. The DELETE Command Youcandeleteobjectswiththiscommand.Ifitisappliedtonets,wires or busses, a single segment is deleted at a time. To use this command, DELETEinthecommandtoolbar,takethecursortotheobjectthatistobe deleted,and. Keep the Shift keypressedwhiledeletinganobjectinordertodeletethe wholenetorbus.Moreaboutthisinthehelpfunction. UNDOandREDOworkhereaswell. Todeletewholegroups,useCtrl+DELETEandarightmouseclickintothe group. The JUNCTION Command Dropping a net on another net line generates a connection between thesetwonets.Theconnectionwillberepresentedbyajunction,thatwillbe setautomatically.Automaticsettingofjunctionscanbeswitchedoffwiththe optionAutosetjunctions(Options/Set/Misc). InthiscasetheJUNCTIONcommandisusedtodrawaconnectingnodeat theintersectionofnetswhicharetobeconnectedtoeachother. JUNCTION andanodeisattachedtothecursor.Locatethenodeatthe junctionoftwonetlinesandtofixitintoplace. The SHOW Command ThisisagoodtimetodemonstratethefunctionoftheSHOWcommand. Thiscommandisusedtoshownamesandotherdetailsofobjectsandobjects. Completesignalsandnetscanbehighlighted,aswellascomponents. ToshowforexamplethenetV+,SHOW inthecommandtoolbarthenmove thecursortotheconnectionpointofIC2pinVI(3)and. PleasenoticethatEAGLEhighlightsthenetwiresandeachpinconnectedby thisnet,aswellasthepinnameofeachparttowhichitisconnected. Inaddition,thesignalislistedinthestatusbaras: Net: V+, Class: 1 Power Whilethe SHOWcommandisactive thenetremainshighlightedalthough you are panning the window by pressing the middle mouse button and movingthemouseorusingtheWINDOWcommand. DeactivatetheSHOW command byclicking the stop sign iconorpressing the Esc key. Nowthe objectsarenolongerhighlighted. Toshowacertainobject,SHOW andtypethename(forexampleRA4)in

42

EAGLE 5 Tutorial
thecommandline.HittheEnterkeythen. Youcansubsequentlytypeothernameswithouttheneedtoreactivatethe SHOWcommand. SHOW RA4 RA3 RA2 Thiswayyoucanmarkonenetaftertheother. TheSHOWcommandworksalsowithplaceholders.Type SHOW RA* togetallnetsbeginningwithRAhighlightedatthesametime. Incaseyouwishtohighlightseveralnetsatthesametime,clickwiththeleft mousebutton,forexampleonnetRA2.NowpresstheCtrlkeyandclickon netsRA3andRA4.Allthreenetsarehighlightednow. ClickagainwithpressedCtrlkeyonnetRA3andthenetwon'tbehighlighted anymore.Ctrlinvertsthehighlight. IftheSHOWcommanddoesn'tfindtheobject,the SHOW windowpopsup andmarksitsSheetcolumnwitha''character.Thistellsusthattheobject doesn'texistonanyofthesheets. The MOVE Command NoelectricalconnectionwillbegeneratedifyouMOVEanetlineovera pin. Ontheotherhand:ifyoumoveapinoveranotherpinoroveranetline,an electricalconnectionwillbegenerated,andanetlinewillbeattachedtothe pinwhenthecomponentismovedfurther.RemembertheUNDOcommandif youwanttodetachthenetline. ChecktheconnectionswiththeSHOWcommand(netandconnectedpinsare highlighted),asmentionedbefore.Additionallyyoucanexportanetlistor pinlistwiththeEXPORTcommand. History Function With the keys uparrow and downarrow you can recall the last keyboard instructionintothecommandlineandexecuteitwiththeEnterkey.TheEsc keywilldeletethecommandline. UseAlt+F2toshowthewholeschematiconthescreen,thentype: SHOW R1 SHOW C1 SHOW IC1 QuittheSHOWcommandbyclickingthestopsignicon.Presstheuparrow and downarrow keysseveraltimes.Asyoucansee,youcanscrollthrough the list of the recently used commands. As soonasthe desired command appearsinthecommandlinepresstheEnterkey.

43

EAGLE 5 Tutorial

Completing the Schematic


UsetheADDcommandtoaddtheremainingcomponentsandthesymbolsfor +5V,V+,andGNDfromsupply1.lbr. Searchpattern:*supply*. Supplysymbolsrepresentthepowersignalsinyourschematicandcausethe ERC(ElectricalRuleCheck)tousespecialchecksforthem. RememberthatyoucanusetheMOVEcommandtomoveobjectsaroundand thatyoucanrotateobjectsattachedtothemousewitharightmouseclick. UsingtheNETcommand,connectthepinsofthecomponentsaccordingto theschematicandconnectthesupplysymbolstotherelatedpins.Usethe rightmousebuttontoalternatebetweentheorthogonalanddiagonalmodes whileusingtheNETcommand.Usetofixasegment. Ifyouplaceanetexactlyonaconnectionpoint,thenetisterminatedatthis location.Otherwisethenetkeepsfollowingthemouse.

TheSchematicdemo1.sch

The SMASH Command Youwillnoticethatwhenyourotateanelementfromthehorizontalto theverticalposition,thereferencedesignatorandvaluetextrotatewiththe part. EAGLE provides a SMASH command that allows you to MOVE and ROTATE the name and value texts independently of the symbol. While

44

EAGLE 5 Tutorial
movingsuchadetached(smashed)text,EAGLEdrawsalinefromthetextto thepart'sorigintoshowwherethetextbelongsto. Toactivatethecommand SMASH Locatethecursoronthediodesymboland. Youcouldalsotypeinthepart'snameinthecommandlineandhittheenter key. ThereisstillanothermethodtoexecutetheSMASHcommand.: Clickontothepartwiththerightmousebuttontoactivatethecontextmenu. SelecttheentryPropertiesandactivateordeactivatetheSmashedoption. Afterseparatingthetextfromthesymbol, MOVE,movethecursortothe designator D1 ofthediode,and .Thetextselectionpointismarkedasa crossandresides,dependingontext'stherotation,onthelowerleftorthe upperrightcorner.Thenameisnowattachedtothecursor.Itcanbemoved toabetterlocationandrotatedwiththerightmousebutton.Whenyouhave rotatedandrelocatedD1,tofixitslocation. If you wantto change the size ofnameandvaluetextswhichhavebeen separatedfromthepartwiththeSMASHcommand,usetheCHANGESIZE command(clicktheCHANGEiconandselectSizefromthemenu). SMASH may be used with groups, too. Therefore activate the SMASH command,presstheCtrlkey,andclickwiththerightmousebuttonintothe drawing. IfyoukeeptheShiftkeypressedwhileyouareclickingwiththeleftmouse buttonontoapart,alltextswillreturntotheiroriginallocationsandwillbe fixedtothepartasitwasbeforeSMASHingthem(unsmash). ForgroupsyouhavetokeeptheShiftandtheCtrlkeypressed.Thecommand will be executed immediately. If you press the Shift keyonly,thecontext menuopensandyouhavetoselectSmash:Groupthere. The VALUE Command EAGLEallowsyoutodefineortochangethevalueforpartslikeresistors orcapacitors.InthecaseofICsthevalueinformsyouabouttheelementtype (e.g.74LS00N). VALUE theresistor, typethenewvalue,2.2k,OK,andthenewvalueisnowdisplayed. Ifyouwanttodefinethesamevalueforseveralcomponents,clickontothe iconwiththerightmousebutton.Alistofrecentlyusedvaluesshowsup. Selectoneoftheentriesandthenclicksuccessivelyontothecomponentsto applythevalue. You can use the NAME command now to change the names of resistors, capacitors,ICs,netsandbusesaccordingly.Youcanchangethenetnames

45

EAGLE 5 Tutorial
butyoudon'thaveto,unlessyouwanttogetadescriptivenetlist.

The Electrical Rule Check (ERC)


Ifyouhaven'tenteredthecompleteschematicyourselfyoucannowloadthe filedemo1.sch. TheERCcommandisusedtotestschematicsforelectricalerrors.Theresults are warnings and error messages listed in the ERC window. To start the ElectricalRuleCheckclicktheERCicon TheERCfindstwowarningsinoursample:
POWER Pin IC1 VSS connected to GND POWER Pin IC1 VDD connected to +5V

inthecommandtoolbar.

These messages inform you that the power pins are connected to other signalsthanexpected.ThepowerpinswerenamedVSSorVDDinthelibrary but are connected to GND and +5V. In our case this has been done on purpose.ClickononeofthemessageentriesandEAGLEwillshowwherethe reasonfortheproblemislocatedintheschematic. Bothwarningsdon'tcauseanyproblemsandcouldbeavoidedbychanging thenames of the power pins in the library definition. Butyoucould also Approve these warnings. The messages are now shown in the Approved branch,nolongerintheWarningsbranchofthemenu. PleasenotethattheERCcanonlydiscoverpossibleerrorsources.Itisup toyoutoproperlyinterprettheERCmessages! IfyouwanttolearnmoreabouttheERCcommand,typeHELP ERCinthe commandline.

Generating a Board from a Schematic


Afterloadingaschematicfromwhichyouwouldliketodesignaboard, clickontheBOARDiconintheactiontoolbar: Aboardfilewillbegeneratedinwhichthepackagesarepositionednexttoan emptyboard. AfurtherdescriptionfollowsinthechapterDesigningaPCBoard. Butnowwewanttointroduceanotherimportantcommandthatisnecessary todesignschematicsfirst.

The BUS Command


Loadtheschematicbus.schfromthe/eagle/examples/tutorialdirectory. Aschematicwithabusstructureappears.Abushastobedrawnwiththe BUScommand.Itisnamedautomatically(B$1..).

46

EAGLE 5 Tutorial
A bus has no logical significance. It is a drawing object only. Logical connections(nets)areonlydefinedwiththeNETcommand.Netswiththe samenameareidenticaleveniftheyareondifferentpagesofaschematicor opticallynotconnected. Thebusnamedeterminesthesignalscontainedinthebus.Inourexample thebuscontainsthesignalsVALVE0toVALVE11andasignalnamedEN. Therefore the bus has been named EN,VALVE[0..11] with the NAME command. The bus in our example has not been finished, yet. There are still some connectionstodraw.StarttoconnectthefollowingsignalstoIC7byselecting theNETcommandandclickingonthebusline: EN IC7 Pin 14 EN VALVE0 IC7 Pin 16 INA VALVE1 IC7 Pin 15 INB VALVE2 IC7 Pin 10 INC VALVE3 IC7 Pin 9 IND NETinthecommandtoolbarandmovethecursoroverthebluebusline, onegridlineoverthepinIC714.Thenetconnectionmustbeginonthebus line,ifyouwanttonameitinaconvenientway. ontothebustosetthe startingpointofthenet.Nowapopupmenuwillappearwhichcontainsthe netnamesdeviatedfromthebusname.theentryENtoselectthenetname EN.MovethecursortoIC714andusetherightmousebuttontochangethe bendstyleuntilitisdrawnliketheothernetlinesinthisarea. thepin's connectionpointtofixthenetline. RepeatthisactionforVALVE0..VALVE3. UsetheLABELcommandtomakethenetnamesvisibleintheschematic. If you want to cancel an action, click the UNDOicon,orusethe F9 key. EitherbyclickingontheREDOiconorbyuseoftheF10keyyoucanperform thecancelledactiononceagain. UsetheMOVEcommandtomoveindividualbussegments.Selectasegment neartotheendinordertomovetheendpoint.Selectasegmentsomewhere inthemiddle,tomoveittoaparallellocation. YoucandeleteindividualsegmentswithDELETE. Ifyouwanttomovethebusthealreadydrawnnetswon'tfollow.Tomove themtogetheryouhavetouseGROUPandMOVE. Thecursortakesontheformoffourarrowswhenyouwanttoselectan objectwhoseoriginisveryclosetotheoriginofanotherobject.Inthis sortofcase,clicktheleftmousebuttontoselectthehighlightedobject. Clicktherightmousebutton,ifyouwanttogoontothenextpossible object.Informationabouttheselectedobjectisshowninthestatusbar.

47

EAGLE 5 Tutorial

14 A utomatic Forward&Back A nnotation


Under the control of the Forward&Back Annotation any change in the schematicresultsinanequivalentchangeoftheboard,andviceversa.Some changescanbemadeeitherintheboardorintheschematic,forexample namingcomponents,nets,andsoon.Otheractionsarepossibleonlyinthe schematic,forexampleaddingcomponents.InsuchacaseEAGLEprevents this operation in the board and prompts you to do this in the Schematic Editorinstead. You should always design your boards using Forward&Back Annotation controls; only then can you be sure that boards and schematics will be consistent with each other. This control mechanism isactivatedwhenyou load a schematic and a board which have the same name and which are consistentwitheachother.EAGLEalwaysloadsbothfilesiftheyexistinthe samedirectory.Consistentinthiscontextimpliesthatthenetlist,components, andvaluesareidentical. Ifyouloadaschematicandaboardwhichhasthesamenameandwhichcan befoundinthesamedirectory(orviceversa),EAGLElaunchesaconsistency check.YououghttostarttheERCifanydifferencesarefound.Theresultsare shownintheERCwindow.TheConsistencyerrorsbranchliststhedifferences betweenschematicandlayout.Usingthisinformationyouareabletomake themstepbystepconsistentagain. TheForward&BackAnnotationwillbecancelledifeitheronlytheschematic windoworonlytheboardwindowisactivated.Anychangesmadecanthen leadtodiscrepanciesinthefilesfortheboardandtheschematic. Thereforealwaysmakefollowthisrule: Whenworkingonaboard,neverclosetheschematicwindow(youcan minimizeittoanicon,however)andviceversa. TomonitortheForward&BackAnnotationloadthedemo2.schfile.Theboard demo2.brdwillbeloadedautomaticallyintotheLayoutEditor. Nowsizebothofthewindowssothatyoucanseethembothonthescreen. ChangesomenamesandvalueswiththeNAMEandVALUEcommands.You willnoticethatthenamesandvalueschangeinbothwindows.Experiment also with the DELETE command and remember the UNDO and REDO commands.

48

EAGLE 5 Tutorial

15 Designing a PC Board
In this section youwill create a smallPCB designandmodifyanexisting design using the Layout Editor. First, you will create a board without a schematic. ThissectionisusefulmainlyforthoseuserswhohavenoSchematicEditor.If youhavetheSchematicEditoryouwouldnormallynothavetodealwiththe stepsdescribedinthefollowingsection.Youshould,however,readthrough thissectionasitdealswithsomegenerallyusefulpoints. The Layout Editor displays the board in top view. Imagine you are holding your printed circuit board in your hands and are looking throughitfromabove.Thisisthereasonwhy,forexample,thetextson thebottomsidearedisplayedmirrored.

Designing a Board without a Schematic


Openanewfile( File/New/Board intheControlPanel)andenlargethe editorwindow. Defining Board Shape Thefirstthingwewilldoisdefinetheshapeoftheboard.Beforedefiningthe shape,wemustestablishtheunitofmeasurementwewillbeusingtodraw theboardoutline.Wewanttousethedefaultgridwhichcanbechosenby clicking the GRID icon in the parameter toolbar. Then the Default buttonandOK. The board outlines must be drawn with the WIRE command in layer 20, Dimension:WIRE,andselectlayer20fromthecomboboxintheparameter toolbar. Positionthecursoratthezeropointofthecoordinates,and todetermine thestartingpointoftheoutline.Movethecursorslightlytotheright,click the right mouse button until both lines are orthogonal (90 degrees), and positionthecursornearthecoordinates(4.00 3.00). Fix the outline at this point with and move the cursor back to the coordinates'zeropoint. willterminatetheWIREcommand.Theboardoutlinesarenowdefined. UsingtheMOVEcommand ,theedgescanbemoved,oruseUNDOand

REDOtorecallthepreviousactionsandperhapsmakechanges. Alt+F2,orclickingtheZoomtofiticon,willfittheboardintothescreen. Placement Grid Beforeplacingcomponents,itisimportanttosetupthegridforcomponent

49

EAGLE 5 Tutorial
placement. Thecomponentplacementgrid maybedifferentfromthegrid usedfordrawingtheboardshape,andisalmostalwaysdifferentfromthe gridusedforroutinginterconnectwires.Forthefollowingexercisewewill usethedefaultgridof0.05,incheswhichisalreadyset. Placing Components ADDinthecommandtoolbar andsearchforDIL14.

ona14pinDILpackageentry.Nowitisattachedtothecursor.Itcanbe rotated with the right mouse button and then placed with the left mouse button.PlacetwoDIL14packages. UsetheF3andF4keytozoominandout. Ifyouliketoplacethecomponentinanyrotationinyourlayoutitispossible to define any value in the Angle field of the parameter toolbar while the componentisattachedtothemouse.Todothisclickintothecombobox, type in the value for rotation, and press the Enter key. Now the rotated componentfollowsthemouseandcanbeplaced. UsetheROTATE command to change the orientationofcomponentsafter theyhavebeenplacedinthelayout. ROTATEworksin90degreestepsbydefault. TorotatecomponentsinanyangleenterthedesiredvalueintheAnglefield of the parameter toolbar while the command is active. Now click the componentto rotate it.Keep the mousebuttonpressedafterselectingthe componentandyoucanrotateitwhilemovingthemouse.Thecurrentangle willbeshownintheparametertoolbar. If you like to use another package than the predefined one (e.g. a SMD insteadofathroughholepackage),youcanusetheREPLACEcommand.For detailedinformationpleasetakealookintothehelpfunction. Placing SMD Packages Now use ADD to place two 1210 packages on the board (search pattern: R1210).Ifyouknowthepackagename,youcantype ADD R1210 or ADD R1210@smd-ipc inthecommandlinetofetchthepackagefromacertainlibrary. Ifyouintendtoplacethepackageinacertainangle,youcanenterthevalue directly: ADD R1210@smd-ipc R22.5 TheSMDpadsappearinred,whichmeans,thattheyareonthelayer1,Top, of the board. To transfer them to the Bottom layer use the MIRROR command.ClicktheMIRRORicon inthecommandtoolbarandonthe packageortypethenameofthepartinthecommandline. AslongastheMIRRORcommandisactive,youcanmovepackagestothe

50

EAGLE 5 Tutorial
othersideoftheboard.Forthenextexercisethepackagesshouldbeplaced ontheToplayer(red). Assoonasacomponentispositionedandyoudon'twanttohaveitmoved again, youcanfixitwith theLOCKcommand.Forclarificationtheorigin crossofalockedcomponentisdisplayedlikean'x'. Shift+LOCKandamouseclickonthecomponentreleasesitagain. Providing Names Toassignanametothepackagesjustplaced: NAMEinthecommandtoolbar .

Movethecursorneartheoriginpoint(markedwithacross)ofthefirstDIL14 and.Apopupwindowappears.Type IC1 andthenewnameisassignedtothepackage.Repeatthisprocesstoname theremainingpackagesIC2,R1,andR2. It's also possible to change the object's name in the command line, for example: NAME R22 R2 InthiscaseR22isrenamedR2. Providing Values Toassignvaluestoacomponent: VALUE inthecommandtoolbar .

MovethecursorneartheoriginofIC1and. Apopupwindowappears.Type CD4001 and IC1 now has the value CD4001. Using the VALUE command assign CD4002toIC2,100ktoR1,and22ktoR2. Defining Signals The next step is to define signals and establish their connections using airwires(rubberbands).First,connectthegroundpads: SIGNAL andtype

GND onpad7ofIC1(IC17)andmovethecursortoIC27andtoterminate theGNDairwire. ThetwopadsarenowconnectedtotheGNDsignal. NextwewillconnectVCC.Type VCC onIC114,movethecursortoIC214andtoterminatetheVCCairwire. Definefurthersignalsusingthesameprocedure. Ifyoudon'twanttospecifynamesforthesignalsatthistimeapadtostart

51

EAGLE 5 Tutorial
asignalandapadtoterminateit(orclickthestopsignicon).EAGLEwill thengeneratenetnamesautomaticallywhichcanbechangedwiththeNAME command. EAGLE terminology: Pads are throughholes for conventional components(usedinpackages).Pinsareconnectionpointsforschematic symbols. SMD's are the pads of surface mounted devices (used in packages). AirwirescanbedeletedwiththeDELETEcommandifyoudon'tworkunder Forward&BackAnnotationcontrol(insuchacaseyouhavetodeleteasignal bydeletingtherelatednetsintheschematic). PleasenotethatUNDO(F9) andREDO(F10)functionunderthecontrolof theForward&BackAnnotation,too. Defining Net Classes TheCLASS command ( Edit/Net classes..) allows youtodefine different propertiesfornets: Widthdefinestheminimumwirewidth, Clearancedefinestheminimumdistancetosignalsofothernetclasses, Drilldefinestheminimumdrilldiameterofvias. Forexample,powersupplysignalsmayberoutedwithagreaterwirewidth (highercurrent)oragreatervalueforclearance(highervoltage). Theautorouter/followmerouterusesthesevaluesforrouting,too. Thedefaultvalueis0forallproperties(noclassesdefined).Thismeansthe valuessetintheDesignRulesarevalidforallsignals. IftherearevaluesdefinedintheDesignRulesandforNetClasses,thehigher oneofbothwillbevalid. Inthecaseyouhavetousedifferentvaluesfortheclearancesbetweeneach single net class, you can set them in the Clearance Matrix which can be accessedwiththe>>buttonintheNetClasseswindow. Asanexamplevariousclassesareusedintheboardfilehexapodu.brd.

Creating a Board from a Schematic


IfyouhavetheSchematicEditorandtheschematicisalreadydrawn,you onlyneed afewstepstogetthesame result as describedintheprevious section: Aboardcontainingpartsthathavealreadynamesandvaluesandwhosepads orSMDsareconnectedthroughairwires. Generating a Board File Loadthefiledemo1.schandclicktheBOARDicon :

Withthiscommandyoucreateaboardfilewiththesamenameastheloaded

52

EAGLE 5 Tutorial
schematic(demo1.brd).AnswertheCreatefile?questionwithOK.Maximize theLayoutEditorwindow. Thewhiteframeontherightofthewindowsymbolizestheboardoutlines.It ismadeupofwiresinthelayer20,Dimension. MOVE,and therightverticaledgeoftheboardshapesomewhereinthe middle.Movethecursoralittletotheleftand. Youhavenowreducedthesizeoftheboard.Youcanchangetheboardsize atanytime. Of course you could also DELETE the border and import, for example, predefinedboardoutlinesviaascriptfile(SCRIPTcommand). Component Placement ClickontheWindowFiticon ,tofitthedrawinginthewindow.The

componentsarelocatedontheleftsideoftheboard. MOVE,thebiggestICsomewhereinitscenterandmovethecursorinside theboardoutlines.Thecomponentandtheairwiresremainattachedtothe cursor.Presstherightmousebuttonifyouwanttorotatethecomponent. tofixthepositionofthecomponent.Placeallofthecomponentsusingthe MOVEcommand. Anotherwaytomoveacomponentistoselectitbyitsname.MOVE

andtypeinthecommandline. JP1 Thispartisnowattachedtothemousecursor. Doyouwanttohaveacomponentfixedatitslocation?ThenusetheLOCK command. Click the RATSNEST icon to calculate the airwires so that they show the shortestpossibleconnections.Repeatthiscommandwheneveryouwantto checkhowgoodyourcurrentplacementis(shortairwires,notwistedbuses etc.). AftergeneratingaboardfilewiththeBOARDcommandEAGLEarranges all packages on the left side of the board outline in the negative coordinates area. In the Light Edition for example, you may drop elementswithinthelimitsofabout3.9x3.2inch.Toroutethelayout manuallyortousetheautorouterorthefollowmerouteryouhaveto moveallcomponentsintothisareafirst. Autorouter: A Brief Example IfyouwouldliketoseeasmalldemooftheAutorouter,clicktheiconforthe AUTOcommand inthecommandtoolbar.ChooseafinerRoutingGrid

53

EAGLE 5 Tutorial
(default50mil),ifnecessaryandOK. Itshouldbefinishedinnotimeatall,providedtheplacementisnottoobad (watchthestatusbar).Ifitistakingtoolong,interrupttheAutorouterby clickingthestopsignicon.ConfirmthequestionInterrupt?withYes. Ifyoudon't like theresult, reverse it with thecommand RIPUP.Ifyou wouldliketochangecertainroutedtracksintoairwires,clickthesetracks andstarttheripupprocessbyaclickonthetrafficlighticonintheaction toolbar. If you would like to change all routed tracksinto airwires, the RIPUPiconandthen thetrafficlighticon.ConfirmthequestionRipupall signals?withOK. YoucanstarttheAutorouteratanytime, regardlessofwhetherthereare routed tracks or only airwires on the board. Typically,supply signalsand othercriticalsignalpathsareroutedmanually,beforetheAutorouterisused. Trackswhicharelayedoutbeforestartingtheautorouterwon'tbechanged anymore. Ifyouwanttohaveaboardroutedsinglesided,drawarestrictedarea for the top side over the whole board in layer 41, tRestrict, withthe RECTcommand. Routing Manually TheROUTEcommand transformstheairwiresintoroutedtracks.

ROUTE inthecommandtoolbar. startingpointofanairwireortypeinthesignal'snameinthe commandline.Thestartingpointofthetrackisnexttothecurrent mousecursorposition. Youcansetfurtherparameters,likewidthorlayer,intheparametertoolbar. Theselectedwidthisvaliduntilyoudecidetochooseanewvalue. Ifanairwirebeginsatanalreadyroutedtrackwhichhasanotherwidththan thecurrentlychosen,andyouwouldliketolayoutthenewtrackwiththis width,keepthe Shift keypressedwhileclickingontotheairwire.Thenew wireadoptsthewidthofthealreadypresenttrack. AllvaluesarerelatedtothecurrentlyselectedGRIDunit. ActivateROUTE,anairwire,movethecursortoroutethesignal,tofixthe currentsegment,andmovethemouseagaintochangetheroutingdirection forthefollowingsegment. tofixthelastsegmentandendtherouting operation for the signal at the current mouse position. Since the ROUTE commandisstillactive,youcanimmediatelystartroutinganewsignal. WhiletheROUTEcommandisactive,itispossibletochangethebendmode

54

EAGLE 5 Tutorial
between two wire segments with the right mouse button. Simply try the various options; it is also possible to lay outtracksasarcs(see also SET command,parameterWire_Bend).Twofollowmemodes(wire_bend8and9) areavailableintheparametertoolbaronly.Theyareexplainedinthenext section. Ifyouchangethetargetlayerduringtheroutingprocessbyselectingitfrom thecomboboxintheparametertoolbar,thefollowingwiresegmentswillbe drawnonthenewlayer.EAGLEsetsthenecessaryviaautomatically. Incaseofendingatrackatthesamepositionasanothertrackwhichbelongs to the same signal but lies in another signal layer, EAGLE does not automaticallysetavia.Tohaveoneplaced,keeptheShiftkeypressedwhile endingthewire. WhilelayingouttracksEAGLEcalculatesatanytimetheshortestconnection tothenextpointwhichbelongstothesamesignalandshowsthiswithan airwire. In case you are approaching a pad or SMD which belongs to the current signal,andthelengthofthecalculatedairwireisgettingshorterthantheso calledsnaplength,thewirewillbesnappedintothecenterofthepadorSMD (magneticpadsfunction). ThevalueforsnaplengthisdefinedintheOptions/Set/Miscmenu. UsetheMITERcommand tobevelwirebends.Youcandothiswitha

straightlineorwithanarc,whichwillbedeterminedbythemiterradius. Somewirebendmodesareinfluencedbythemiterradius.Moredetailscan befoundontheMITER,SET,WIREcommands'helppages. Follow-me Router TheROUTEcommandknowstwooperatingmodes,wirebend8and9,that helpyoutoroutesignals.Simplyselectanairwirewiththemouseandletthe Followmeroutercalculatethetraceoftheconnection.Thepositionofthe mouse cursor influences the process of routing. The socalled Followme routerworkseitherinpartialmode orinfullmode ,dependingon theiconyouclickonintheparametertoolbar. The Followme router is supported only, if the Autorouer module is available. Afterselectinganairwirein partial mode,thetrackwillbecalculatedfrom thecurrentmousepositiontothenearerendoftheairwireanddisplayedon thescreen.ChangethemousecursorandtheFollowmerouterbeginnsto calculateanddisplaythenewtrace.Theconnectionfollowsthemouse.Ifyou liketheresult,fixitwithamouseclick.Goonwiththenextsectionnow. MovethemousecursortoanewpositonandtheFollowmeroutercalculates

55

EAGLE 5 Tutorial
thefurthertraceoftheconnection. InfullmodetheFollowmeroutercalculatesthewholeconnection.Clickonto anairwireandthetracewillbecalculatedbeginningwiththecurrentmouse positionintobothdirectionsoftheairwire. TheFollowmerouterrespectsthestandardsgivenintheDesignRulesand thenetclasses.Settingsthatconcerntheroutingstrategyaredefinedinthe General and Followme tabofthe AutorouterSetup window.Toaccessthis window click onto the AUTO icon in the parameter toolbar of the ROUTE command. This icon is not displayed until clicking on one of the followmeicons. Thecurrent grid setting of the Layout Editor serves as routing grid.Wire width,drilldiameterofvias,andthelayerthewirestartsinatthemouse cursorpositioncanbesetintheparametertoolbar. AdditionalinformationconcerningtheFollowmerouterisfoundinthehelp functionoftheROUTEcommandandintheEAGLEmanual. TheLightEdition doesnotsupport BlindandBuriedviasduetotheir limitationofthenumberofsignallayers. Board Changes Onceyouhavecompletedtheroutingoftheboardyoucanmakechanges, e.g.youcan: moveandarrangewiresegmentsandcomponentswithMOVE andSPLIT usetheRIPUP use DELETE annotation), replacepackagevariantswithCHANGEPACKAGE (alsoPACKAGE)or REPLACE , commandtochangeroutedtrackstoairwires, to erase signals (only without Forward&Back

.In demo3.brd thepackageofIC1

hasbeenreplacedbyaSMDpackage, modifytheDesignRules(forexample,Restringsettings), useSMASH todetachtextsfromcomponentsinorderto

56

EAGLE 5 Tutorial
MOVE MITER ,ROTATE wirejoints. ,orCHANGE them,

Further Usage of the Layout Editor


Inthissectionyouwillmodifyarouteddemoboard.Loadthefile demo2.brd,andenlargetheeditorwindow. Nextafewimportantcommandswillberepeated. The DISPLAY Command Itisofteneasiertomaintainagoodoverviewifsomeinformationisnot shown. DISPLAY anddeselectwithyourmousethelayer21,tPlace,whichshowsthetopside silkscreenoftheboard,and23, tOrigins,25, tNames,27, tValues,and51, tDocu. ToexecutethischangeApply,orOKinordertoclosethedisplaymenu. Itispossibletodefinesocalledaliases.Thisallowsyoutoswitchquickand comfortablyfromonelayercombinationtoanother.Analiascanbedefined withthepopupmenuoftheDISPLAYicon.Seealsothehelppagesofthe DISPLAYcommand. The MOVE Command WiththeMOVEcommandyou can moveforinstancewires(linesor signaltracks).Selectingawiresegmentnearanendpointwillmovetheend pointofthewire.Keepthe Ctrl keypressedwhileselectingitandtheend pointwilljumponthecurrentgrid. Selectingthewireinthemiddlewillmoveitinparallel.KeepingtheCtrlkey pressedchangesthewireintoanarc. Youcanalsomovevias(throughholeswhichconnectTopandBottomlayer tracks).Whenmovingvias,theattachedwiresarealsomoved. TomovecomponentsplacedontheToplayer,layer23tOriginshastobe displayed.ThesameappliestocomponentsplacedontheBottomlayer andlayer24bOrigins. AslongastheMOVEcommandisactive,youcanrotatetheobjectwiththe rightmousebuttonby90degreesorbyanyanglegivenintheAnglecombo boxintheparametertoolbar. TheSpinflag(onlyavailableintheLayoutEditor)determinesiftextswitha rotationof180degreeswillbeshownupsidedownorstayreadablefromthe

57

EAGLE 5 Tutorial
bottom of the drawing (default). This also works with the ROTATE command. Thestatusbarshowsinformationabouttheselectedobject. The GROUP Command OneofthemostusefulcommandsofEAGLEistheGROUPcommand.It allowsyoutoselectseveralobjects,changetheirpropertiesandmove,rotate ormirrorthemallatonce.TousetheGROUPcommand GROUP.Then,by clickingandreleasingtheleftmousebutton,drawapolygonaroundagroup ofobjectsandclosethepolygonbypressingtherightmousebutton(don'tuse thePOLYGONcommand).Theselectedobjectsarenowhighlighted. Alternativelykeeptheleftmousebuttonclickedanddragarectangletomark thegroup'sarea. The command GROUP ALL selects all objects, if the respective layers are displayedandifcomponentsarenotlockedbytheLOCKcommand. Holdingdownthe Shift keywhileclickingthemousethefirsttimeforthe groupselection,analreadyexistinggroup,ifany,willbeextendedbythe selectedobjects. Ctrl+GROUPallowsyoutotogglethegroupmembershipforsingleobjects. Pleasemakesurethatyouonlyselectobjectswhichareinavisiblelayer. Packages on the Toplayercanonly beselectediflayer23 tOrigins is visible,andpackagesattheBottomlayercanonlybeselectediflayer24 bOriginsisvisible.UsetheDISPLAYcommandtoshoworhidelayers. NextselecttheMOVEcommand,presstheCtrlkey,andusetherightmouse buttontoattachthegrouptothecursor.Nowyoucanmovealltheobjects simultaneously.Clicktherightmousebuttontorotatethegroupbyagiven anglecounterclockwise.IfyouadditionallypresstheShiftkey,thegroupwill berotatedclockwise. Theanglecanbespecifieddirectlyintheparameter toolbar's Angle combo box. The left mouse button finally fixes the group again. AfteragrouphasbeendefinedwiththeGROUPcommand,thepropertiesof thecontainedobjectscanbechangedwiththeCHANGEcommand.Selecta groupthatcontainssomewires,CHANGEinthecommandtoolbar,Width, and 0.032.Thenclickthe right mousebutton somewhereintheeditor windowwhiletheCtrlkeyispressed. YoucanreversetheactionwiththeUNDOcommand. The SPLIT Command WiththeSPLITcommandyouaddabendinawire. SPLIT inthecommandtoolbar

58

EAGLE 5 Tutorial
onawiresegment Drag the wire on the screen a bit. You will see that the longer segment remainsasadirectlinetotheselectedpoint,whiletheshortersegmentsplits intotwo. Theangle of the two new segmentsiscontrolledwith theright mouse button. Click the right mouse button several times to explore the variousbendstyles. A further click with the left mouse button fixes the wire segment. The followingwiresegmentisalreadyattachedtothemousecursornow.It'svery easytorerouteatrackwiththismethod.Thehithertoexistingtrackcanbe erased,forexample,withMOVEandRIPUP. TheEsckeyorclickingtheStopiconendsthecommand. The CHANGE Command UsetheCHANGEcommand,tochangethewidthofwiresortomovea wiretoanotherlayer.Tochangethewidthofthewire: CHANGE WIDTH inthepopupmenu thevalueforthenewwidth Thenmovethecursortothewiresegmenttobechangedand. Tochangethewidthtoavaluenotpresentinthemenu,e.g.to0.23inches, theentry....Awindowpopsupwhereyoucantypeinthevalue. Youcouldalsousethecommandline: CHANGE WIDTH .23 andclickthewiresegment. Tomoveawiresegmenttoanotherlayer: CHANGE LAYER desiredlayer wiresegment Incaseaviaisneededtocompletethesignalpath,EAGLEwillautomatically insertit.Ifaviabecomesredundant,EAGLEwillautomaticallyremoveit. The ROUTE Command UsetheROUTEcommandtochangeanairwireintoawire.Youcanfix thepositionofawiresegmentwith,thenchangedirectionandfixthenext segmentuntiltheairwireiscompleted. SeealsothesectionRoutingManuallysomepagesbefore. The RIPUP Command IfyouwouldliketoturnforexampletheroutedsignaltracksGNDand VCCintoairwires(thisprocessiscalled ripup),clicktheRIPUPiconinthe commandtoolbarandtype:

59

EAGLE 5 Tutorial
GND VCC PressingF9twicereversestheaction. IfyouwouldliketoripupallsignalsexceptGNDandVCC,type: ! GND VCC aftertheRIPUPcommandhasbeenactivated.Nowbothsignalsaredisplayed highlighted.ClicktheGoicontoexecutethecommandnow. Youcouldalsoaddasemicoloninthecommandlinetohavethecommand executedimmediately ! GNC VCC ; The SHOW Command UsetheSHOWcommandtohighlightairwires,wiresorcomponents. ClickontheZoomtofiticonandthentheSHOWicon.Thentype: IC1 tolocateIC1.Thestatusbarshowsinformationabouttheobject. Ifyouarelookingforasmallobject,itmighthappenthatyoucan'trecognize theobjectalthoughitisdisplayedwithhighlightedcolors. Inthiscaseuse theSHOWcomandwiththeoption@: SHOW @ IC1 willdrawaframearoundtheobjectandshowyouapointertowardsit.In casethereisaconsistentschematicdrawingloaded,thesamewillhappento thecorrespondingobjectthere. Refresh Screen UsetheF2keytorefreshthescreencontentsorclicktheRedrawicon. Undo/Redo Function AllactionsmentionedcanbereversedwiththeUNDOiconinthe

actiontoolbar(F9)andrepeatedwiththeREDOicon(F10). Inner Layers Innerlayers(Route2...15)canbeusedforroutinginthesamewayastheTop andBottomlayers. ThisisnotpossibleintheLightEdition! Supply Layers OnlypossibleinFreemium,StandardandProfessionalEdition! Innerlayers(Route2..15)canbeusedasasignalorgroundplanesimplyby renamingthelayer$signalname,whenallsignalswiththatnamewillthenbe

60

EAGLE 5 Tutorial
connected to this layer. To demonstrate this feature load the board file demo2.brdandtype: SHOW GND TheGNDsignalwillbehighlighted. Thentype: RIPUP GND ThesignalGNDwillnowbedisplayedasairwiresonly. Nowwewilldefinelayer2asthegroundlayerbynamingit$GND(thename ofthesignalmustbeprecededwiththe$character): LAYER 2 $GND YoucanalsoselectLayer2 Route2 intheDISPLAYmenu,clickthe Change button,activatetheoptionSupplyLayerandtypeinthenameGND. ClicktheRATSNESTicontomaketheairwiresofthesignalGNDdisappear. Tohavealookattheresultswitchofalllayersexceptforthe$GNDlayer. ThiscanbeachievedbyclickingontheDISPLAYicon,orsimplybytypingthe followingcommandonthecommandline: DISPLAY NONE $GND Rememberyoucanuselowercasecharactersandabbreviatekeywords.So youcantype dis none $gnd Nowtype SHOW GND andtheThermalsymbolswhichconnecttheGNDsignaltothesupplylayer arehighlighted.TheAnnulussymbols(round)isolatethethroughholesnot belongingtotheGNDsignal. Inourexample thepartsC1andC2don'thaveaconnectiontotheinner layeryet.YouhavetoROUTEashorttrackoutoftheSMDandplaceaviaon thetrack'send.Toachievethis,keepthe Shift keypressedwhilefixingthe trackwiththeleftmousebutton.Nowtheconnectiontotheinnerlayeris made. Supplylayersdefinedwith$...areplottedinversely,i.e.,objectswiththe colorofthesupplylayerdefinecopperfreeareas.TheThermalsymbols connect thegroundplanewiththethroughholeusingfourconducting paths. Copper Pouring with the POLYGON Command ThePOLYGONcommandenablesyoutodefineareaswhichbelongtoa signal,connectingalloftherelatedpadstothissignalwithThermalsymbols. Suchasignalretainsauserdefineddistancetoanyothersignalpath.You can design layers that contain multiple polygonssuch as different ground

61

EAGLE 5 Tutorial
areas,andyoucandesignpolygonsonmultiplelayers. TodemonstratethisfeatureofEAGLE,let'sfilltheToplayerofaboardwith theGNDsignal.Reloadtheboarddemo2.brdonceagain,enlargethewindow, andripuptheGNDsignal: RIPUP GND UsetheDISPLAYcommandtoswitchonthelayer1 Top, 17 Pads, 18 Vias, and 20 Dimension. Use the button None, in the menu, to switch off the displayofallotherlayersfirst. ClickthePOLYGONiconinthecommandtoolbarandtype: GND toprovidethenameGNDforthepolygontobedefined.Onlythenwillitbe longtotheGNDsignal. SelecttheLayerTopfromthecomboboxintheparametertoolbar.Then: lefthanduppercorneroftheboardoutlines, righthanduppercorner, righthandlowercorner, lefthandlowercorner. Thedoubleclickclosesthepolygon. Tostartthecalculationofthefilledarea,clicktheRATSNESTicon. Thecontourofapolygonintheoutlinemodeisdisplayedasadottedline. Sincethisisaverycomplexoperationitcantakesometime. Asbefore,thepadsbelongingtotheGNDsignalareconnectedwithThermal symbols.Checkthiswith: SHOW GND Afteraboardhasbeenloaded,polygonsaredisplayedwiththeiroutlines. Thefilledareasaredisplayedonly after the RATSNESTcommandhas beenexecuted.Inversely,theRIPUPcommandandasingleclickonthe edgeofapolygonresultsintheoutlinedisplayofthisparticularpolygon. CallupthehelpfunctiontofindoutmoreaboutthePOLYGONcommand.

62

EAGLE 5 Tutorial

16 A utorouter
NoAutorouteronearthwilllayyourboardoutexactlyasyouwouldlike.But itcanfreeyouofalotofboringwork.Inthissectionwewanttodemonstrate thatyoucaneasilycombinemanualandautomatedrouting. Loadtheboardhexapodu.brd. Switch off layers 21, tPlace, 23, tOrigins, 25 tNames,27, tValues, and 51, tDocu,usingtheDISPLAYcommand,sothatthecomponentsarenotshown anymore. ThisboardcontainsmanuallyroutedsignalsnamedAC1andAC2.Rectangles in the layers 41, tRestrict, and 42, bRestrict, have been used to create restrictedareasfortheAutorouter.WithintheseareastheAutorouterisnot allowed to route tracks on the Top or Bottom layers. Component B1 is covered by a restricted area drawn in layer 43, vRestrict. This means the Autoroutermustnotsetviasthere. StarttheAutorouterbyclickingtheAUTOiconinthecommandtoolbar. A popup menu appears where you can enter individualsettings (see help functionandEAGLEmanual). DependingonthewayEAGLEhasbeeninstalled,itmighthappenthat youdon'thaveenoughrightstostartthisjob.Inthiscasepleasecontact your system administrator or copy the contents of this folder into a privatefolderwhereyouhavefullaccessrights. Youshouldchoosearoutinggridof10mil(0.254mm)forhexapodu.brd. Youcanalsoloadtheautorouterparametersforthisfilefromthecontrolfile hexapodu.ctlbyclickingtheLoad..button. AswewanttoroutealloftheunroutedsignalsOK. Incaseyoudon'twanttochangethesettingsoftheAutorouteryoucanstart itbytyping: AUTO; inthecommandline.Themenuisskippedinthiscase. Watchthestatusmessagesappearinginthestatusbar.Theyinformyou,for instance,ofhowmanysignalshavebeenrouted,orofhowmanyviashave been placed atthe moment. You will noticethatthenumber ofviasgoes downduringtheOptimizepasses. IfyouwanttointerrupttheAutorouterclickonthestopicon. Aprotocoloftheroutingrunisstoredinthefilehexapodu.pro.Loaditintoa TextEditorwindowtohavealookatit. The board routed by the Autorouter can be edited like any other board.

63

EAGLE 5 Tutorial
Shouldtheroutingresultbelessthan100%,youcanripupafewcritical signalsandroutesomeoftheremainingairwiresmanually.Ifyouwantto restore the original status, turn routed tracks into airwires (with the exceptionofAC1andAC2)withthecommand RIPUP ! AC1 AC2 The autorouter uses the width given in the Design Rules ( Edit/Design Rules, Sizes tab, Minimumwidth)forhistracks.Iftherearevaluesgivenin theCLASS command to define various net classes (asin the example file hexapod.brd) the autorouter will also take care of them. In this case the greatervaluewillbetaken. Todefinerestrictedareasfortheautorouteruselayer41, tRestrict,forthe Toplayer,respectivelylayer42,bRestrict,fortheBottomlayer. Restrictedareasinlayer43,vRestrict,forbidssettingvias. Theautorouterisnotabletorouteroundedtracks.

64

EAGLE 5 Tutorial

17 Design Rule Check


Whenstarting thelayout developmentyou shouldalreadythinkaboutthe DesignRules.Rulesthathavetobeconfirmedwiththeboardmanufacturer aswell.YoucandefinethemwiththehelpoftheDRCdialog. ClicktheDRCicon andverifyorchangethedefaultvalues.Aclickinto oneoftheparameterfieldsshowsadescribingpicture(forexampleinthe Restringtab). Apply tosavetheDesignRulesintheboardfile. Check startstheDesign RuleCheck.TheSelectbuttonallowsyoutoselectacertainareaofthelayout tobechecked.Simplydragarectanglewiththemousearoundthearea. The DRC command checks if the board correspondswith theuserdefined DesignRules. Load the file demo3.brd. To run the test, click on the DRC icon in the commandtoolbar.AmenuappearswhichallowsyoutosetupyourDesign Rules.ChecktostarttheDRC. Afterfinishingthechecksthestatusbarshouldshowthemessage Noerrors.NowyoucanbesuretheboardmatchesyourDesignRules. Movearedwireacrossafewotherredwires.ThenstarttheDRConceagain bytyping DRC; ThesemicolonpreventstheDRCmenufromappearingandstartsthecheck atonce. Nowthestatusbarshowsthenumberoferrors.AnDRCErrorswindowwill openautomaticallyshowingtheerrorlist. Selectingoneoftheentries,EAGLEshowswheretheerrorislocatedinthe board.Errorsaremarkedwithsocallederrorpolygons. Insomecasesmaybeyouwishtotolerateanerror.Usethe Approve button forthis.Theerrorpolygonoftheapprovederrorwillbedeletedthen. As soonasyouhavecorrected anerror inthelayout,youcanmarkitas Processed.Ifyouwanttodeleteit,clicktheClearbutton. Objects thatcannot bedeletedin yourboardmightbeerror polygons drawnbytheDRC.YoucanerasethemwithDRCCLEAR.

65

EAGLE 5 Tutorial

18 Libraries
The components you are adding to schematics and boards are stored in libraries.TheLibraryEditorhasthesameuserinterfaceastheSchematicand the Layout Editor. Therefore, you only need to know a few additional commandsfordefiningyourowncomponents. Alibrarynormallyconsistsofthreebasicelements: Package:Thefootprintinthelayout Symbol:Thedrawingfortheschematic Device:Therealcomponent,consistingofsymbolsandpackages In case your EAGLE license has a single Schematic Editor or a single Layout Editor module, you nevertheless are able to define complete componentsintheLibraries. Ithasprovedtobeusefultocreatenewcomponentsinyourownlibrary files.Thus,thelibraryfilessuppliedbyCadsoftremainunchangedand can be easily replaced, for example, for an update. Your custom componentswillremainastheyareineachcase. Hereashortexampleforlibrarycreation: OpenanewlibraryfileviathemenuFile/New/LibraryintheControlPanel. TheLibraryEditorwindowsopens.

Resistor Package
Selectthepackageeditingmodeviatheiconintheactiontoolbar,and enterthepackagename R10 inthe New field.Answerthequestion Create newpackage'R10'? with Yes.Laterwhencreatinganewsymbolandanew deviceyouwillagainhavetoanswerthecorrespondingquestionswithYes. Use the GRID command to set an appropriate grid size for the pad placement.0.05inch(i.e.50mil)isusualforstandardcomponentswithlead wires. Foraresistorwithleadwires,selectPAD,andsetthepadshapeandthe drill diameter in the parameter toolbar. Default value forpaddiameter is auto.Itshouldnotbechanged.Thefinaldiameterinthelayoutresultsfrom thevalues given in theDesign Rules. Then place two padsatthedesired distance.Theoriginofthedrawingwilllaterbetheidentifyingpointwith whichacomponentisselected.Forthisreasonitshouldbesomewherenear thecenterofthedevice.

66

EAGLE 5 Tutorial
For a SMD resistor, select SMD, and set the pad dimensions in the parametertoolbar.Youcaneitherselectoneoftheofferedvalues,ordirectly typethelengthandbreadthintotheentryfield. Select Top asthelayer,evenifthecomponentwilllaterbeplacedonthe undersideoftheboard.SMDcomponentsarelocatedontheothersideofa board using the MIRROR command. This moves the objects in all the t.. layersintothecorrespondingb..layers. Place the two SMD pads (which in EAGLE are just called SMDs) at the desireddistance. TouseroundSMDs(BGAs)defineasquareonefirst,thenCHANGEthevalue forRoundness=100%. Youcannowenterthenames,suchas 1 and 2,forthepadsorSMDs usingtheNAMEcommand. Adifferentprocedureishoweverrecommendedforcomponentswithmany sequentiallynumberedpads: Select the PAD command, type in the name of the first pad, e.g. '1' (the invertedcommasmustalsobeentered),thenplacethepadsinsequence. NowusetheWIREcommandtodrawthesilkscreensymbolinlayer21 tPlace.Thislayercontainswhatwillbeprintedontheboard.Itisuptoyou howmuchdetailyougivetothesymbol.Setafinergridsizeifithelps. Taketheinformationprovidedinlibrary.txt(ineagle/doc)asaguidelinefor the design of components.You may also use the ARC, CIRCLE, RECT and POLYGONcommandtodrawsilkscreensymbols. Pleasetakecareinlayer21 tPlace nottocoveranyareasthathavetobe soldered.Inlayer51tDocuamorerealisticappearancecanbegivenwhichis notsubjecttothislimitation.Layer51 tDocu isnotusedtoprintontothe boarditself,butisasupplementtothegraphicalpresentationwhichmightbe usedforprintdocumentation.Intheexampleoftheresistor,thesymbolcan bedrawninlayer21tPlace,butthewires,whichgooverthepads,aredrawn inlayer51tDocu. WiththeTEXTcommandyouplacethetexts>NAMEinlayer25tNames and>VALUEinlayer27tValuesinthoseplaceswhereintheboardtheactual nameandtheactualvaluearetoappear. SMASH and MOVE can be used later to change the position of this text relativetothepackagesymbolontheboard. Werecommendtowritethesetextsinvectorfont.Soyoucanbesurethat itlooksexactlythesameontheprintedboardasitlooksintheLayout Editor.

67

EAGLE 5 Tutorial
The CHANGE command can be used at a later stage to alter object properties suchas the stroke thickness of texts (ratio),textheight,orthe layerinwhichtheobjectislocated. Ifyouwanttochangethepropertiesofseveralobjectsatonego,definea groupwiththeGROUPcommand, click theCHANGEcommand,selectthe parameter and the value, and click into the group with the right mouse buttonwhiletheCtrlkeyispressed. Example:UseGROUPtodefineagroupthatcontainsbothpads,thenselect CHANGEandSHAPE/SQUARE.Pressthe Ctrl keyandclickonthedrawing surfacewiththerightmousebutton.Theshapeofbothpadschanges. TheDESCRIPTIONcommandallowsaninfotextaboutthepackage.Thistext andthepackage'snamewillbetakeninconsiderationbythesearchfunction oftheADDcommand.

Resistor Symbol
Selectthesymboleditingmode,andenterthesymbolname R inthe Newfield.Thisnameonlyhasameaninginternaltotheprogram,anddoes notappearintheschematic. Nowcheckthat0.1inchissetasthegridsize.Thepinsinthesymbolmust beplacedonthisgrid,sincethisiswhatEAGLEexpects. SelectthePINcommand.Youcannowsetthepropertiesofthesepinsin theparametertoolbar,beforeplacingthemwiththeleftmousebutton.All thesepropertiescanbechangedatalaterstagewiththeCHANGEcommand. Groupscanagainbedefined(GROUP)whosepropertiescanthenbealtered withCHANGEandCtrlkeyplustherightmousebutton.Seehelpfunctionfor furtherdetails. The NAME command allows you to name pins after they have been placed. Theschematicsymbolisdrawninlayer94SymbolsusingWIREand

theotherdrawingcommands.Placethetexts >NAME and >VALUE inthe layer95 Names and96 Values withtheTEXTcommand.Placethemwhere thenameandvalueofthecomponentaretoappearintheschematic. Forfineadjustmentchooseafinergrid.ThiscanbedonewhiletheTEXT command is active. Afterwards change the grid to default value 0.1 inch again. Layer 97 Info can be used for further information, for example, descriptivetext.

Resistor Device
CreatethenewdeviceR10withthisicon.WhenyoulaterusetheADD

68

EAGLE 5 Tutorial
commandto fetchthecomponentintotheschematic,youwillselectitby usingthisname.Itisonlyacoincidencethatinthiscasethenameofthe packageandthenameofthedevicearethesame. Todefinedevicesthatareavailableinseveraltechnologiesandpackagevari antsyouhavetousewildcardsinthedevicenametodeterminetheposition ofthesenames. * represents the position of the technology name, ? the package name. Definingforexampleadevicelikea7400 intwotechnologies(L, LS)the correctdevicenameis74*00.Thenameofthepackagevariantwillbeadded attheendofthenameautomatically.Ifyouwishtoseethepackagevariant's name,forexample,atthebeginningofthedevicenameyouhavetousethe? likethis:?74*00. ClicktheNewbuttonontherightlowerareaoftheDeviceEditorwindowto assignapackage.Forourexample,pleasechoosethepackageR10.Toallow furtherpackagevariantsclickNewagain. ThePREFIXcommandisusedtospecifyaprefixforaname.Thenameitself willinitiallybeautomaticallyallocatedintheschematic.Foraresistorthis would,naturallyenough,beR.TheresistorswillthenbeidentifiedasR1,R2, R3etc..ThenamescanbealteredatanytimewiththeNAMEcommand. YoucanspecifywiththeVALUEcommandwhetherthedevice'svaluecanbe alteredintheschematicorintheboard.ValuemustbeOnforresistors.For otherdevicesitmaybewisetosetvalueOff. Thepreviouslydefinedresistorsymbolisfetchedintothedevicewith theADDcommand. If a device consists of several schematic symbols which can be placed independentlyofoneanotherinthecircuit(inEAGLEtheseareknownas gates)theneachgateistobeindividuallybroughtintotheschematicwiththe ADDcommand. SetanAddlevelofNext andaSwaplevelof0intheparametertoolbar,and thenplacethegateneartheorigin. TheSwaplevelofagatebehavesverymuchliketheSwaplevelofapin.The valueof0meansthatthegatecannotbeexchangedforanothergateinthe device.Avaluegreaterthan0meansthatthegatecanbeswappedwithinthe schematic for another gate in the same device and having the same Swaplevel.ThecommandrequiredforthisisGATESWAP. YoucanchangethenameofthegateorgateswiththeNAMEcommand. Thenameisunimportantforadevicewithonlyonegate,sinceitdoesnot appearintheschematic.Ifadeviceconsistsofseveralgatestheelement's nameintheschematicwillbeexpandedbythegatename. Example: ThegatesarecalledA,B,CandD,andthenameofthecomponentinthe schematicisIC1,sothenameswhichappearareIC1A,IC1B,IC1CandIC1D.

69

EAGLE 5 Tutorial
With the CONNECT command you specify which pins are taken to which packagepads. ClicktheConnectbuttonnow.

TheConnectwindow
InthisexampletheresistorgatehasbeennamedG$1automatically.Thisis thereasonwhyyouseethepinnameG$1.1andG$1.2inthecolumnPins. ThecolumnPadshowsthepadsplacedinthepackage.Clickonapinanda padentryandclicktheConnectbutton.Ifyouwanttodisconnectapinfrom apad,selectthepairintheConnectioncolumnandclickDisconnect.OKends thiscommandandclosesthewindow. You can enter descriptive text for your Device clicking the DESCRIPTION command.TheenteredtextwillbedisplayedintheControlPanel,whenyou select the device in the tree view. It will also be checked by the search functionoftheADDcommand.

70

EAGLE 5 Tutorial

TheDeviceEditor
Nowthedefinitionoftheresistoriscomplete.Youcanuseitinaschematic now. KeepinmindtoloadthenewlibrarywiththeUSEcommand.Otherwise itisnotavailableforADD.

71

EAGLE 5 Tutorial

19 Output of Drawings and M anufacturing Data


EAGLEcanoutputdrawings,forexamplefordocumentationpurposes,using thePRINTcommandwhichcanbefoundintheFilemenusoftheSchematic orLayoutEditororinitiatedbyclickingtheprintericon intheAction toolbar. The printer drivers of your operating system are used for the printout.ThedrawingshowninthecurrentlyactiveEditorwindowwillbe printed.ThelayersthatareactuallyvisibleintheEditorwindow(selectable withDISPLAY)willbevisibleontheprintout. ThePRINTcommandallowsgeneratingPDFfiles,too. FilmandmanufacturingdataaregeneratedwiththeCAMProcessor.Startit withtheiconintheactiontoolbaroftheLayoutEditorwindow. TheCAMProcessorusesitsowndrivers,whichcanbedefinedormodifiedby theuser(seefileeagle.defindirectoryeagle/bin). Dataforabillofmaterial,formounting,millingortestingmachinesetc.can begeneratedwiththehelpofEAGLEUserLanguagePrograms.Information about ULP's can be found in the file headers or with the help of the descriptionsintheControlPanel.

Output a Schematic with the PRINT Command


Theschematic demo1.sch istobeprintedinblack/whiteandfullformaton onepage. Loadthefile demo1.sch andchoosethelayerswhichshouldappearonthe printoutwiththeDISPLAYcommand.Alllayersvisibleonthescreenwillbe printed. Clicktheprintericon intheactiontoolbar.ChecktheboxesBlack,Solid and Rotate (asthedrawingisinlandscapeformat).Theboxes Mirror and Upsidedownarenotmarked. ForbothScalefactorandPagelimittypein1.Thisspecifiesthatthedrawing istobeoutputatascalefactorof1,provideditfitsontoonepage.Ifnot, EAGLEchangesthescalefactor,sothatthedrawingdoesfitontoonepage. WithPagelimit0thedrawingwillalwaysbeprintedwiththesetscalefactor. TheprintercanbeselectedbyusingthebuttonPrinter. If the box Caption is checked, the drawing will be printed with a footer, containingthefilename,date,time,andscalefactor.

72

EAGLE 5 Tutorial

Generating Image Files for Documentation Purpose


EAGLEcangeneratePDFfiles.ThereforeselectthePDF..buttoninthePRINT dialogandenterafilenameforthePDFoutputfile. TogenerateimagefilesusetheEXPORTcommand(File/Export..)withits IMAGE option. You can generate different pixel graphic file formats (like bmp,tif,pngandothers)orusetheclipboard.

Generating Gerber Data with the CAM Processor


The same steps are usually required for each board whenever films and manufacturing data are generated. This processcanbe defined asaCAM Processorjob. Thefile gerb274x.cam,which can befoundinthedefaultsubdirectoryfor CAMjobs,automatestheoutputofthemostcommonExtendedGerberdata fordoublesidedboards. Pleasecontactyourboardhousetoconfirmwhichdataareneeded. LoadthejobintotheCAMProcessor,eitherbydoubleclickingtheentrywith thename gerb274x.cam intheControlPanel'streeview(CAMJobs),orby clickingtheCAMProcessoriconintheLayoutEditorwindowandselecting gerb274x.caminthefiledialog(File/Open/Job). IncaseyouhavestartedtheCAMprocessorfromtheControlPanel,loadthe boardfiledemo3.brd:File/Open/Boardanddemo3.brd ClickthebuttonProcessJob. Nowallthenecessaryfileswillbewritteninto thedirectorywheretheboardfileislocated. Thefileshavethefollowingmeanings: demo3.cmp Componentside demo3.sol Solderside demo3.plc Silkscreenforcomponentside demo3.stc Solderingmaskforthecomponentside demo3.sts Solderingmaskforthesolderside demo3.gpi Informationfile,notrelevanthere Thefirstfivefilesneedtobesenttoyourboardmanufacturer.

Generating Drill Data


Drillingdatacanbegeneratedaccordinglybyusingthejobexcellon.cam.This jobconsistsofonesinglestep.TheEXCELLONdevicegeneratesafilethat containsbothdrilldataanddrilltable.Theoutputfilehasthefileextension .drd. Thisfilehasalsotobesenttoyourboardmanufacturer. FurtherinformationcanbefoundontheCAMProcessorhelppagesandin theEAGLEmanual.

73

EAGLE 5 Tutorial

Further Manufacturing Data


EAGLEprovidesanumberofsocalledUserLanguagePrograms,whichare abletogenerateavarietyofdata.Forinstance,dataformountingmachines, testequipment,statisticdatafortheboardmanufacturer(numberofdrills, parts,layerandsoon),billsofmaterial,orevendataformillingaprototype board. AlistofallUserLanguageProgramscanbefoundinthetreeviewofthe Control Panel, User Language Programs branch. Select anentry to getthe descriptionontheright.

74

EAGLE 5 Tutorial

20 Data Exchange
The EAGLE User Language
EAGLEcomeswithanintegratedClikeUserLanguageinterpreterwhichhas accesstovirtuallyalldata(inEAGLEorexternalfiles).UserLanguagepro gramscancreateanyfiletypeandthereforegenerateanydataformatused byothersoftwareorhardware. Agoodexampleisthefilebom.ulpwhichgeneratesabillofmaterial. With the EAGLE User Language one has a powerful tool to define user specificcommandswhichevencouldbeassigned,forexample,toacertain functionkey. Pleasehavealookatthefileswiththeextension*.ulpandtheUserLanguage sectionofthehelpfunctiontogetabetterideaofthepossibilitiesinherentin theprogram. UserLanguageProgramsarestartedwiththeRUNicon toolbar. Additional User Language programs can be found on our web pages: http://www.cadsoftusa.com/download.htm. intheaction

Script Files A Flexible Input Interface


ScriptfilesaretextfileswhichcancontainanyEAGLEcommand(see SCRIPT command). Script files enable the user to implement his own functions. Thus you have a flexible input interface defined by the EAGLE commandsyntax(seeEAGLEhelp). StarttheLibraryEditoranduseEXPORTSCRIPTtogenerateaScriptfileof this library. This is a good example to learn about the EAGLE command syntax.

75