From ElectroDragon
Jump to navigation Jump to search


Setup your environment

In the main windows of eagle, setup the directories in directly setup, library and projects folder are really important from our points of view.

Design a package

  • Firstly, you should figure which package you will need. Check in this page.
  • In the main window, click new - part library. or double click current library to edit it.
  • You should understand the three main important functions here, 1. Make a device, 2. Make a IC package of board design, 3. make a symbol for schemtic, so let's do the 2 & 3 firstly and go 1 at last.
Package icons.png
  • You can copy the package from other library, just make sure your current part libary is on editing, and open other library in the tree list of eagle main windows, right click, and copy to current part library. Most package you can find at "ref-library.lbr"
  • when you are copying the device, the package and symbol will copy together into your new library. And there is no way to copy only symbol I think.

Editing package

  • when you are editing the package, make sure the "grid" is turn on, and use 0.005 inches will be a nice choice.
  • Draw all kinds of slik screen by using text function, pads or smd for connections, outline for ICs or so.

Drawing symbol

  • basically you need to draw a symbol, like a resistor, transitor or so
  • add parts name that will display on schematic on it
  • add pins by using "pin", the line end WITH the ball should are set to connect to other parts, don't make it vice verse.
  • finally add some pin definition to make the device "function" clear.

symmetrical Package

IC footprint.png
  • Normall pins are also symmetrical
  • Use 0,0 as center point of package, find +x +y corner
  • Draw package outline in on side, mirror x y data to -x -y to other side
  • draw pins in certer, change grid to pin pitch
  • rename all pads

Connect package and symbol into device

  • click the 1 icon for making a final device, click "add" on the left menu to add symbol firstly, and click "new" for package on the left bottom.
  • Click connect to connect symbol and package, this is done!

Enabling the Value FieldCreated

Enabling the Value FieldCreated.png

If you don't enable this option, all parts will use the device name as the default text for >VALUE, so it's generally a good idea to enable it. There are often variations of packages, and enabling this option allows end users to specify the exact part they intended to use!

Polygon and Gound Fill

  • Polygon, for example for power supply net, set:
un-tick thermal
set rank to top 1
normally turn off orphans
set higher isolate to avoid ground or touch.
  • For ground fills
turn off orphans
turn off termal
set rank to lowest 6

Finally we are to the actual creation of the groundplace itself. This is done by using the Polygon tool in Eagle. Click on the Polygon button and a new menu will popup directly above the pc board layout. This is the parameters that will be used for the polygon that will be drawn on the board. Make sure that the bottom layer is selected, which will be the far left item of the new menu.

Before we draw the polygon, a couple of the default values need to be changed. The width of the line should be changed to 0.010. The Isolate value, which is how much space will be between the groundplace polygon and the other non-grounded elements needs to be selected. On the current version of Eagle it defaults to 0 which is not useful. I select 0.016 or sometimes 0.024 for the Isolate value.

When you have the polygon drawn completely around the perimeter of the circuit, it should look similar to the example here.

The polygon is the blue box just inside the white border of the pcb.

To make the groundplane, we rename the polygon to the same name that is used for the traces connected to the ground pad. If you have changed the name as taught earlier in this article, it will be called GND. To rename the polygon, we go to "Edit" on the top menu, then "Name" from the dropdown list. Now click on the blue polygon line and the box will popup that allows you to enter a new name for the polygon, which we will enter as GND.

There will be another popup box to confirm that you want to connect the polygon to GND, so select it from the choices and hit the OKAY button. The groundplane should automatically fill the bottom layer of the pcb as shown here. You can hit the F2 key to refresh the view and cleanup any stray bits.

If the groundplane does not appear, click the Ratsnest button on the sidebar. Should it still not appear, you likely do not have the polygon and the ground traces using the same name. Did you rename "S1" as instructed in an earlier paragraph?

Note that the pads for all of the components that were connected to ground are now isolated but tied to the groundplane with short copper traces. The components that are not grounded are isolated electrically from the groundplane by a clear space around each pad and trace, which will be the width that was selected in the "Isolate" menu item.

The groundplane does not have to encompass the entire perimeter of the board nor does it even have to be rectangular. Here I have made a small irregular ground fill that just covers the transistor and a few of the component pads. It is not typically done this way on small boards but on larger, more complex layouts this may come in handy.

This type of copper pour is also used to create small heatsink pads on the pcb for transistors or voltage regulators.



A common problem that will happen when you are penalizing Eagle boards is the name will increase it's number instead of keep the same, for example, when you have U1 named IC in your first PCB board, and no more U2, U3 in this board. So when you done the penalization you will see U2 instead of U1 in the copied board. The following steps will overcome this problem.

  • Open your brd file which you to penalizing
  • Run script "penalizing.ulp" to copy the layer 25 which are tNames into 125, so when you copy and paste the board, the parts names on the board which not automatically changed in layer 125, but still changed in layer 25
    (Now this step can be directly now by click "tool - penalize" in the menu)
  • After the above steps, use layer 125 instead of 25 in the following steps, but still can use 25 layer for designing.
  • Now just copy all of the board, use "group" command to select all and "copy"
  • Do command - "menu" - "file" - "new", now you should have a new brd empty file opened
  • Do command "paste", and paste again and again untill you reach a fixed size like 5*5 or 10*10 as you except to penalizing for. Use the dimension command to check it. For V-cut, 0.3mm is necessary space between each pasted board.
  • You can see the wrong part "name" in layer 25, so when you output them, use layer 125 instead of 25
  • Go next step to make Gerber file. When you output gerber_rs274, in the silk screen CMP section, de-select layer 25 and select layer 125

Recommanded Dimensions

  • Text Size: 1 mm standard, or 0.8 smaller and 1.2 bigger size.
  • Trace Width: vary from 8 mil to 16 mil, power line can be big and signal line can be small.
  • Distance to the board edge: 12 mils
  • Trace space: 8 mil or 6 mil is no problem too


These are my notes on creating a Gerber file from Eagle CadSoft.

Run gerber274x.cam for main gerber files

  • open CAM processor = File | Cam Processor
  • open CAM Processor ,  job file = File | Open | Job ...
  • click "Process Job" and select "gerber274x.cam", in this step, if you panelizing your file, you should not use the 25 tNames layer anymore, but use 125 layer instead.
  • you should have the similar setting like picture below, but you may have more if you have SMD parts on the bottom side, since we only have parts on the top side in this case.

Check the exported file according to the Gerber file extension of Eagle on this page.

  • Review

Adding a second silk screen (Optional)

If you look at the tabs, you will see that you don’t have a file for silk screen bottom. For simple boards, the silk screen is usually on the top layer so that you don’t need the bottom. Some of the cheap circuit board manufacturers don’t even allow bottom silk screen.

But if you need silk screen on bottom layer as well, follow these steps:

  • Click “Add”
  • Change Section to something like “Silk Screen SOL”
  • Change File to “%N.pls”
  • Deselect all layers
  • Select layers 20 “Dimension”, 22 “bPlace” and 26 “bNames”
  • There you go.
  • The above options can also be found on gerb274x-4layers.cam
Eagle gerber double side export.png

Run Excellons for hole files

  • Repeat the step from 1-4,but this time run "excellon.cam"  work。

Zip and check

  • now you have all the gerber files under the fold, zip it.
  • check the zipped gerber file by pantalogix tool to see if any forgot things or error

Layers in Gerber

Layerlist of eagle.png
Number Name Descrpition
1 Top topper copper trace
2-15 Middle On multi-layer boards with the professional version of Eagle, you also have access to layers 2-15
16 Bottom bottom copper trace
17 Pads Normal pads for PTH components (Parts through holes)
18 Vias Example (For lines goes from bottom to top or vice verse, help you draw lines easy)
19 Unrouted unrouted airwires
20 Dimension draw the outline of your PCB on this layer, help the manufacturer to cut it easily, without this outline, it's can't be made.
21 tPlace is used to draw lines that will be rendered as the silk screen on your PCBs
22 bPlace -
23 tOrigins -
24 bOrigins -
25 tNames is used to hold the unique 'names' for each part on your PCB (ex. C1, R5, X12, etc.)
26 bNames -
27 tValues is used to hold the value for each part (such as 10K, 0.1µF, AT86RF212, etc.)
28 bValues -
51 tDocu is used for documentation purposes, such as drawing the mechanical dimensions of your part (more on that shortly!). Normally this layer isn't printed on the PCBs, but it's very important for documentation and for PCB design.

Setup default layer color

  • use script for each design project
  • copy and edit mycolor.scr, edit your own color, color number 0 is white in color palette, and same for the rest


  • How to put SMD components on the bottom side?
Use the "mirror" command (GUI button just below "move") to flip things to the other side. Or use the middle mouse button during a "move" operation. This is also more quicker can be done that just click middle mouse key
  • How to select the other part which are stack together (top, bottom)
right click and select different parts in either top or bottom.
  • How to delete Symbol, device or package in the device library design?
Open one of them, either symbol, device or package, which is the one you want to delete, select library-remove in the menu, and then type the name to delete it. it's not very convenient anyway.



  • Add Vias: Hold shift and click.
  • Switch bottom/top trace : Middle Click
  • Switch trace routing style: Right Click


Library Description Items and buy link Types
con-jst Example Example Con
con-jack Example Example Con
Pinheader.lbr standard DIP 2.54 pinheader Example Con
ref-package.lbr all kinds of package available Example Reference
Com-3m.lbr - ZIF; DIP Toggle Switch; Con
Special.lbr DIP switches, heatsink Example Con
con-cypressindustries.lbr A few types of USB available Example Con
Crystal.lbr Crystal Crystal hc49s PRT
LED.lbr LED 3mm led; 5mm led, 0805 led PRT
RCL.lbr RCL * PTH Ceramic Cap - C-EU025-025X050; PTH Resistor - C-EU_0207/10 PRT
Silab.lbr CP210X Example IC
ULN-UDN.lbr ULN2003AD Example IC
Supply1.lbr Power Supply symbol N/A Reference
v-reg.lbr 78XX, LM317 Example IC
con-xmultiple.lbr RJ11, RJ45 RJ11, RJ45 PRT
con-harting-ml.lbr shrouded header shrouded header Con
74xx-eu.lbr 7400 Series IC 7400 Series IC

Useful ULP

File Description Use
Penalize.ulp copy the silk screen of layer 25 tname to layer 125, so when you copy and paste the total board, tnames will stay not change.
bom.ulp to generate CSV files for all the devices on a board.
exp-project-lib.ulp to export all the components from a project to a library, could be helpful in some cases, for example, you want to copy some items out from boards build by somebody else.
normalize-text.ulp Let you save work that to change all the size of the text into one
import-bmp.ulp Get a logo on board
PCB-Service.ulp help you to see the board size, number of holes, SMD pads, your design errors, etc.
copy-wire-to-any-layer Useful to copy trace, for example from top to bottom, from top to bstop, etc. choose list, double click .. from layer, double click .. to layer

The following Ulp are downloaded from eagle site:

  • createsymsmdpackage_rel3.zip - create smd package, this can generate many kinds of SMD package directly instead of find them in other libraries, can only work on dual and quad lines IC, read the parameters as input here. package
  • eagleup - for making PCB board in 3D visualization, see more in next section of this page.
  • fixdrills - normalize all the holes into inches, for example from 0.6 mm into 0.3 mils

Pcb service eagle.png

3D Visualization

Get all the relevant stuffs eagleup here.

  • You will need to install eagleup4.4.zip into your eagle, sketchup.
  1. eagleUp_export.ulp goes to \EAGLE\ulp
  2. eagleUp_import.rb goes to \Program Files\Google\Google SketchUp 8\Plugins
  3. the content of /models to \EAGLE\models
  4. eagle demo files to your nrormal eagle project folders, and you can delete later after you stopped use it anymore
  • Imagemagick
  • sketchup

After finish the first trial out, you can get all the user-contributed sketchup part models ready, download them from here.

Eagle Advance

Smash all parts in board design

  • group select all
  • type "smash"
  • hold left control
  • right click on mouse

Auto Route