LABEL | LAUNCH | LAYER | LINE | LOCK
Function
Attaches text labels to buses and nets.
Syntax
LABEL [XREF] [orientation] ..
Mouse keys
Center selects the layer.
Right rotates the label.
Shift+Right reverses the direction of rotating.
Bus or net names may be placed on a schematic in any location by using the label command. When the bus or net is clicked, the relevant label attaches to the mouse cursor and may be rotated, changed to another layer, or moved to a different location. The second mouse click defines the location of the label.
The orientation of the label may be defined textually using the usual definitions as listed in the ADD command (R0, R90 etc.).
Buses and nets may have any number of labels.
Labels cannot be changed with "CHANGE TEXT".
Labels are handled by the program as text, but their value corresponds to the name of the appropriate bus or net. If a bus or net is renamed with the NAME command, all associated labels are renamed automatically.
If a bus, net, or label is selected with the SHOW command, all connected buses, nets and labels are highlighted.
If the optional keyword XREF is given, the label will be a "cross-reference" label. Cross-reference labels can be used in multi-sheet schematics to indicate the next sheet a particular net appears on (note that this only works for nets, not for busses!). The XREF keyword is mainly for use in scripts. Normally the setting is taken from what has previously been set with CHANGE XREF, or by clicking the Xref button in the parameter toolbar. The format in which a cross-reference label is displayed can be controlled through the "Xref label format" string, which is defined in the "Options/Set/Misc" dialog, or with the SET command. The following placeholders are defined, and can be used in any order:
%F | enables drawing a flag border around the label | |
%N | the name of the net | |
%S | the next sheet number | |
%C | the column on the next sheet | |
%R | the row on the next sheet |
The default format string is "%F%N/%S.%C%R". Apart from the defined placeholders, you can also use any other ASCII characters.
The column and row values only work if there is a frame on the next sheet on which the net appears. If %C or %R is used and there is no frame on that sheet, they will display a question mark ('?').
When determining the column and row of a net on a sheet, first the column and then the row within that column is taken into account. Here XREF labels take precedence over normal labels, which again take precedence over net wires. For a higher sheet number, the frame coordinates of the left- and topmost field are taken, while for a lower sheet number those of the right- and bottommost field are used.
The orientation of a cross-reference label defines whether it will point to a "higher" or a "lower" sheet number. Labels with an orientation of R0 or R270 point to the right or bottom border of the drawing, and will therefore refer to a higher sheet number. Accordingly, labels with an orientation of R90 or R180 will refer to a lower sheet number. If a label has an orientation of R0 or R270, but the net it is attached to is not present on any higher sheet, a reference to the next lower sheet is displayed instead (the same applies accordingly to R90 and R180). If the net appears only on the current sheet, no cross-reference is shown at all, and only the net name is displayed (surrounded by the flag border, if the format string contains the %F placeholder).
A cross-reference label that is placed on the end of a net wire will connect to the wire so that the wire is moved with the label, and vice versa.
The cross-reference label format string is stored within the schematic drawing file.
Change a cross-reference label to a normal label using either the CHANGE command or the label's Properties dialog.
Unlike other commands (like LINE, for instance), the LABEL command keeps track of its last used layer by itself. This has the advantage of making sure that labels are always drawn into the right layer, no matter what layers other commands draw into. The downside of this is that the usual way of setting the layer in a script, as in
LAYER _layer_; LINE (1 2) (3 4);
doesn't work here. The layer needs to be selected while the LABEL command is already active, which can be done like this
LABEL _parameters_ LAYER _layer_ _more parameters_;
Note that the LABEL line is not terminated with a ';', and that the LAYER command starts on a new line.
The commands
LABEL LAYER _layer_;
set the layer to use with subsequent LABEL commands.
Function
Launch web-based 3D package generator and search.
Syntax
LAUNCH PACKAGE3D-GENERATOR
LAUNCH PACKAGE3D-WEB-SEARCH
This command is used to launch the web-based 3D package generator and search. It can be used in the device editor, to create a new device variant (the same as the PACKAGE command), as well in the library editor, to import a package to a library (the same as the COPY command).
Function
Changes and defines layers.
Syntax
 LAYER layer_number
 LAYER layer_name
 LAYER layer_number layer_name
 LAYER [??] -layer_number
See also DISPLAY.
The LAYER command with one parameter is used to change the current layer, i.e. the layer onto which wires, circles etc. will be drawn. If LAYER is selected from the menu, a popup menu will appear in which you may change to the desired layer. If entered from the command line, 'layer_number' may be the number of any valid layer, and 'layer_name' may be the name of a layer as displayed in the popup menu. Certain layers are not available in all modes.
Note that only the signal layers (1 through 16) are available that have been entered into the layer setup in the Design Rules.
The LAYER command with two parameters is used to define a new layer or to rename an existing one. If you type in at the command prompt, for example
LAYER 101 SAMPLE;
you define a new layer with layer number 101 and layer name SAMPLE. If a footprint contains layers not yet specified in the board, these layers are added to the board as soon as you place the package into the board (ADD or REPLACE).
The predefined layers have a special function. You can change their names, but their functions (related with their number) remain the same.
If you define your own layers, you should use only numbers greater than 100. Numbers below may be assigned for special purposes in later EAGLE versions.
Top/bottom pairs of layers have the property of mirroring upon each other using the MIRROR command (see "Predefined Layers - Current and Legacy" below). Besides using the predefined layers TestTop/TestBottom for custom purposes, it is also possible to define a custom pair like
LAYER 53 SomethingTop; LAYER 54 SomethingBottom;
This is supported for the layer pairs 53/54, 55/56, 57/58 and 59/60. It should be used with care regarding later EAGLE versions.
The LAYER command with the minus sign and a layer_number deletes the layer with the specified number, for example
LAYER -103;
deletes the layer number 103. Layers to be deleted must be empty. If this is not the case, the program generates the error message "layer is not empty: #"
where "#" represents the layer number. If you want to avoid any error messages in a layer delete operation you can use the '??' option. This may be useful in scripts that try to delete certain layers, but don't consider it an error if any of these layers is not empty or not present at all.
Important: Layer names have been updated to map more closely with industry terms. This change does not affect legacy files. You may see new names, legacy names, or a combination of the two as you work with the product.
Layer | Name | Legacy Name | Usage |
---|---|---|---|
1 | Top | Top | Tracks, top side |
2 | Route2 | Route2 | Inner layer |
3 | Route3 | Route3 | Inner layer |
4 | Route4 | Route4 | Inner layer |
5 | Route5 | Route5 | Inner layer |
6 | Route6 | Route6 | Inner layer |
7 | Route7 | Route7 | Inner layer |
8 | Route8 | Route8 | Inner layer |
9 | Route9 | Route9 | Inner layer |
10 | Route10 | Route10 | Inner layer |
11 | Route11 | Route11 | Inner layer |
12 | Route12 | Route12 | Inner layer |
13 | Route13 | Route13 | Inner layer |
14 | Route14 | Route14 | Inner layer |
15 | Route15 | Route15 | Inner layer |
16 | Bottom | Bottom | Traces, bottom side |
17 | Pads | Pads | Pads (through-hole) |
18 | Vias | Vias | Vias (through all layers) |
19 | Unrouted | Unrouted | Airwires (rubber bands) |
20 | BoardOutline | Dimension | Board outlines (circles for holes) * |
21 | SilkscreenTop | Top Silkscreen (tplace) | Silk screen, top side |
22 | SilkscreenBottom | Bottom Silkscreen (bplace) | Silk screen, bottom side |
23 | OriginsTop | tOrigins | Origins, top side (generated autom.) |
24 | OriginsBottom | bOrigins | Origins, bottom side (generated autom.) |
25 | NamesTop | tNames | Service print, top side (component NAME) |
26 | NamesBottom | bNames | Service print, bottom side (component NAME) |
27 | ValuesTop | tValues | Component VALUE, top side |
28 | ValuesBottom | bValues | Component VALUE, bottom side |
29 | SolderMaskTop | Top SolderMask (tStop) | Solder stop mask, top side (gen. autom.) |
30 | SolderMaskBottom | Bottom SolderMask (bStop) | Solder stop mask, bottom side (gen. autom.) |
31 | StencilTop | Top SolderPaste (tCream) | Solder cream, top side |
32 | StencilBottom | Bottom SolderPaste (bCream) | Solder cream, bottom side |
33 | FinishTop | tFinish | Special finish/plating, top side |
34 | FinishBottom | bFinish | Special finish/plating, bottom side |
35 | GlueTop | tGlue | Glue mask, top side |
36 | GlueBottom | bGlue | Glue mask, bottom side |
37 | TestTop | tTest | Testing features, top side |
38 | TestBottom | bTest | Testing features, bottom side |
39 | ComponentExcludeTop | tKeepout | Restricted areas for components, top side |
40 | ComponentExcludeBottom | bKeepout | Restricted areas for components, bottom side |
41 | RestrictTop | tRestrict | Restricted areas for copper, top side |
42 | RestrictBottom | bRestrict | Restricted areas for copper, bottom side |
43 | RestrictVias | vRestrict | Restricted areas for vias |
44 | Drills | Drills | Conducting through-holes |
45 | Holes | Holes | Non-conducting holes |
46 | Milling | Milling | Milling |
47 | Measures | Measures | Measures |
48 | Document | Document | Additional manufacturing notes |
49 | Reference | ReferenceLC | Reference marks for fiducials |
51 | DocumentTop | tDocu | Detailed top screen print |
52 | DocumentBottom | bDocu | Detailed bottom screen print |
* Holes generate circles with their diameter in this layer. They are used to place restrictions on the Autorouter.
88 | SimResults | Simulation Results |
89 | SimProbes | Simulation Probes |
90 | Modules | Module instances and ports |
91 | Nets | Nets |
92 | Busses | Busses |
93 | Pins | Connection points for symbols with additional information |
94 | Symbols | Shapes of components |
95 | Names | Names of component symbols |
96 | Values | Values/component types |
97 | Info | Additional information/hints |
98 | Guide | Guiding lines for symbol alignment |
There are two types of layer groups in EAGLE: preset layer groups, and user-defined layer groups. They are available for both schematic and board editor modes, but will not overlap between the two. Preset groups are predefined in eagle.scr, and can be edited, renamed, and removed from that location only, not from the EAGLE editor.
User-defined layer groups have already existed in EAGLE for some time but we have added them to the layer display dialog popup menu.
To add a new layer set, first select the layer you want to include in the group, then press the ADD NEW button. Enter the name of your layer set, press the OK button, and you are done. You may have up to 9 presets for both the schematic and board editors.
Be careful with naming your layer presets, they may interfere with your expected behavior of the DISPLAY command. For example, if you name a layer preset 'top', it will override the normal action of DISPLAY (which would be to show the top layer only), and instead display the set of layers in your layer preset.
To remove a user-defined layer group, select the group you wish to delete from the drop-down menu, then press the REMOVE button.
Function
Adds lines to a drawing.
Syntax
LINE ['signal_name'] [width] ..
LINE ['signal_name'] [width] [ROUND | FLAT] [curve | @radius] ..
Mouse keys
Center selects the layer.
Right changes the bend style (see SET Wire_Bend).
Shift+Right reverses the direction of switching bend styles.
Ctrl+Left when starting a line snaps it to the next existing line end point.
Ctrl+Right toggles between corresponding bend styles.
Ctrl+Left when placing a line end point defines arc radius.
See also MITER, SIGNAL, ROUTE, CHANGE, NET, BUS, DELETE, RIPUP, ARC.
The LINE command is used to add lines (tracks) to a drawing. The line begins at the first point specified and runs to the second. Additional points draw additional line segments. Two mouse clicks at the same position finish the line and a new one can be started at the position of the next mouse click.
Depending on the currently active bend style, one or two line segments will be drawn between every two points. The bend style defines the angle between the segments and can be changed with the right mouse button (holding the Shift key down while clicking the right mouse button reverses the direction in which the bend styles are gone through, and the Ctrl key makes it toggle between corresponding bend styles).
Pressing the center mouse button brings up a popup menu from which you may select the layer into which the line will be drawn.
The special keywords ROUND and FLAT, as well as the curve parameter, can be used to draw an arc (see below).
Starting a LINE with the Ctrl key pressed snaps the starting point of the new line to the coordinates of the closest existing line. This is especially useful if the existing line is off grid. It also adjusts the current width, layer and style to those of the existing line. If the current bend style is 7 ("Freehand"), the new line will form a smooth continuation of the existing line.
Although it's possible to create wires for nets, busses or signals with the LINE command (depending on the current layer), it's not recommended to do so. It's better to use NET, BUS, or SIGNAL instead. The signal_name parameter is intended mainly to be used in script files that read in generated data. If a signal_name is given, all subsequent lines will be added as wires to that signal and no automatic checks will be performed.
This feature should be used with great care because it could result in short circuits, if a wire is placed in a way that it would connect different signals. Run a Design Rule Check after using the LINE command with the signal_name parameter for signals!
Wires are distinguished from lines ("plain wires") because of their "electrical" meaning as part of a signal, net or bus. For historical reasons, wire is widely used for both in EAGLE help.
Entering a number after activating the LINE command changes the width of the line (in the present unit) which can be up to 200 mm (7.8740 inch). The line width can be changed with the command
CHANGE WIDTH width
at any time.
Lines can have one of the following styles:
The line style can be changed with the CHANGE command. Note that the DRC and Autorouter always treat lines as "Continuous", even if their style is different. Line styles are mainly for electrical and mechanical drawings and should not be used on signal layers. It is an explicit DRC error to use a noncontinuous line as part of a signal that is connected to any pad.
Lines in the layers Top, Bottom, and ROUTE2...15 are treated as signals. If you draw a line in either of these layers starting from an existing signal, then all of the segments of this line belong to that signal (only if the center of the line is placed exactly onto the center of the existing signal wire or pad). If you finish this drawing operation with a line segment connected to a different signal, then Electronics asks you if you want to connect the two signals. Note that Electronics treats each line segment as a single object (for example when deleting a line).
When the LINE command is active, the center mouse button can be used to change the layer on which the line is drawn.
Lines and arcs are basically the same objects, so you can draw an arc either by using the ARC command, or by adding the necessary parameters to the LINE command. To make a line an arc, it needs either the curve parameter, which defines the "curvature" of the arc, or the @radius parameter, which defines the radius of the arc (note the '@', which is necessary to be able to tell apart curve and radius). The valid range for curve is ]-360..+360[ (without the limits +-360), and its value means what part of a full circle the arc consists of. A value of 90, for instance, would result in a 90° arc, while 180 would give you a semicircle. Full circles cannot be created this way (for this use the CIRCLE command). Positive values for curve mean that the arc is drawn in a mathematically positive sense (i.e. counterclockwise). If curve is 0, the arc is straight ("no curvature"), which is actually a line. Note that in order to distinguish the curve parameter from the width parameter, it always has to be given with a sign ('+' or '-'), even if it is a positive value.
As an example, the command
LINE (0 0) +180 (0 10);
would draw a semicircle from the point (0 0) to (0 10), in counterclockwise direction. If a radius is given, the arc will have that radius. Just like the curve parameter, radius also must have a sign in order to determine the arcs orientation. For example, the command
LINE (0 0) @+100 (0 200);
would draw a semicircle from the point (0 0) to (0 200) (with a radius of 100), in counterclockwise direction. Note that if the end point is more than twice the radius away from the start point, a straight line will be drawn. The arc radius can also be defined by placing the line end point with the Ctrl key pressed (typically at the center of the circle on which the arc shall lie). In that case the point is not taken as an actual end point, but is rather used to set the radius of an arc. You can then move the cursor around and place an arc with the given radius (the right mouse button together with Ctrl will toggle the arc's orientation). If you move the cursor more than twice the radius away from the start point, a straight line will be drawn.
In order to be able to draw any arc with the LINE command (which is especially important for generated script files), the keywords ROUND and FLAT are also allowed in the LINE command. Note, though, that these apply only to actual arcs (straight lines always have round endings). By default, arcs created with the LINE command have round endings.
Function
Locks the position and orientation of a part in the board.
Syntax
LOCK ..
LOCK name .. LOCK - LOCK ; LOCK -;
Mouse keys
Ctrl+Right applies the command to the group.
Shift+Left reverses the lock operation ("unlocks" the object).
Ctrl+Shift+Right "unlocks" all objects in the group that have the lock property.
See also MIRROR, MOVE, ROTATE REPOSITION.
The LOCK command can be applied to parts, wires, vias, polygons, and holes in a board, and prevents them from being moved, rotated, or mirrored. This is useful for things like connectors, which need to be mounted at a particular location and must not be inadvertently moved.
The origin of a locked part is displayed as an 'x' to have a visual indication that the part is locked. For locked wires and vias a padlock symbol is shown on the object to show the locked state.
If a group is moved and it contains locked objects, these objects will not move with the group.
Detached texts of a locked part can still be moved individually, but they won't move with a group.
Parts can also be selected by their name, which is especially useful if the object is outside the currently shown window area.
A "locked" object can be "unlocked" by clicking it with the Shift key pressed while the LOCK command is active.