[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2. Getting Started

The goal of this chapter is to give you enough information to learn how Pcb works and how to develop your layouts to make the best use of Pcb's features. All event translations (i.e. the buttons and keys you press) refer to the default application resource file shipped with Pcb. There is probably no need to change this unless your window manager uses some of the button events itself; however, if you want to customize the behavior of Pcb then changing the resource file is usually the best way to do it.

Get yourself a printout of this chapter and User Commands, if you haven't already done so, and follow the examples.

Start Pcb (the actual command will use all lower-case letters) without any additional options. If you get the error message:

 
    can't find default font-symbol-file 'default_font'
then the font searchpath or filename in the application resource file is wrong. Be sure that your m4 program supports searchpaths. If not, get GNU m4. For other messages, see A.2 Troubleshooting. Another quick-start is provided by pcbtest.sh in the `src' directory. If some features don't seem to work, try running pcbtest.sh, if that works, then Pcb hasn't been installed properly.

2.1 The Application Window  The elements of the main window.
2.2 Log Window  The optional logging window
2.3 Library Window  The circuit selection window
2.4 Netlist Window  The desired connections window
2.5 Drawing and Removing Basic Objects  
2.6 Moving and Copying  
2.7 Loading and Saving  
2.8 Printing  Creating Gerber files or postscript files
2.10 Arrow Tool  Selecting/Moving objects.
2.11 Rats Nest  Helps you place and route tracks against a netlist.
2.12 Design Rule Checking  Check for manufactureability
2.9 Connection Lists  How to get a list of all or some connections.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1 The Application Window

The main window consists of six areas: the menu at the top, the panner control in the upper left corner, the layer controls located below the panner, the tool buttons located below the layer controls, the Layout area to the right of these, and the status line at the bottom of the window.

2.1.1 Menus  
2.1.2 The Status-line and Input-field  What is the program configuration.
2.1.3 The Panner Control  Used to pan the layout view when zoomed in.
2.1.4 The Layer Controls  Switch layers on/off; change current one.
2.1.5 The Tool Selectors  Select a layout tool.
2.1.6 Layout Area  Where the layout is drawn.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1.1 Menus

The menus are located at the top of the Layout area. Most, but not all, of their functions are also available from the keyboard. Similarly, some functions are only achievable through the keyboard or command entry. Some menu entries such as `center layout' in the Screen menu require a certain cross hair position. In this case a promt message will popup at the bottom of the screen with wording similar to the following:
 
move pointer to the appropriate screen position and press a button
Any mouse button will do the job, whereas any key except the arrow (cursor) keys will cancel the operation. If it seems like the menu hasn't done what you expected, check to see if it is waiting for the position click. For details see 5.2 Actions.

Pressing Btn3 in the Layout area also pops up a menu with many of the most common operations (except when you're in the midst of drawing a line or arc). When a choice in the Btn3 popup menu needs a cross hair position, it uses the position where the cross hair was when Btn3 was pressed. For example, to get detailed information on an object, place the cross hair over the object, press Btn3, then choose `object report'. If you pop up the Btn3 menu but don't want to take any of the actions, click on one of the headers in the menu.

File
This menu offers a choice of loading, saving and printing data, saving connection information to a file or quitting the application. Most of the entries in the File menu are self explanatory. Selecting `print layout' pops up a printer control dialog. A selection of several device drivers is available from the printer control dialog. Presently PostScript, encapsulated PostScript, and GerberX are supported. The GerberX driver produces all of the files necessary to have the board professionaly manufactured. The connection saving features in the File menu produce outputs in an arcane format that is not too useful. They do not produce netlist files.

Edit
The Edit menu provides the usual cut, copy, paste which work on selections. To learn how to create complex selections, see 2.10 Arrow Tool. The Edit menu also provides access to Undo and Redo of the last operation. These can also be accomplished with the U key and Shift-R key. Finally, the Edit menu allows you to change the names of: the layout, the active layer, or text objects on the layout.

Screen
The Screen menu supports most functions related to the whole Layout area. There are various entries to change the grid to some popular values, the zoom factor, and which kind of element name is displayed. You can also re-align the grid origin and turn on and off the display of the grid. Before changing the grid alignment, I recommend that you zoom in as close as possible so that you're sure the grid points appear exactly where you want them.

The Screen menu also allows you to turn on and off the visiblity of the solder-mask layer. When the solder-mask layer is made visible it obscures most of the layout, so only turn this on when you really want to know what the solder-mask will look like. The solder-mask that you see belongs to the side of the board you are viewing, which can be changed with the `view solder side' option, also found in the Screen menu. When the solder-mask is displayed, the pin and pad clearance adjustments (see section 1.5 Lines) alter the size of mask cut-outs.

Sizes
The Sizes menu allows you to select a group of line thickness, via diameter, via drill size, and clearance (keepaway) (collectively called a "routing style") to be coppied to the "active" sizes. You can also change the names given to the routing styles and adjust their values from this menu. The "active" sizes are also adjustable from this menu. The "active" sizes are shown in the status-line and control the initial size of new vias, drilling holes, lines, clearances, text-objects and also the maximum dimensions of the board layout.

Settings
The Settings menu controls several operating configuration parameters. The `edit layer groups' entry brings up a dialog that allows you to change the way layers are grouped. Layer grouping is described in 1.4 Layers. The `all-direction lines' entry controls the clipping of lines to 45-degree angles. You can also control whether moving individual objects causes the attached lines to "rubber band" with the move or not from the Settings menu. Another entry controls whether the starting clip angle for the two-line mode (see section 1.5 Lines) alternates every other line. You can also control whether element names must be unique from the Settings menu. When unique element names are enforced, copying a new element will automatically create a unique `layout-name' name for it provided that the name originally ended with a digit (e.g. U7 or R6). The Settings menu allows you to control whether the cross hair will snap to pins and pads even when they are off-grid. Finally you can control whether new lines and arcs touch or clear intersecting polygons from this menu.

Select
This menu covers most of the operations that work with selected objects. You may either (un)select all visible objects on a layout or only the ones which have been found by the last connection scan see @xref{find connections}. You can delete all selected objects from this menu. Other entries in the Select menu change the sizes of selected objects. Note that a select action only affects those objects that are selected and have their visibility turned on in the Layer Control panel. The Select menu also provides a means for selecting objects by name using unix regular expressions.

Buffer
TFrom the Buffer menu you may select one out of five buffers to use, rotate or clear its contents or save the buffer contents to a file. You can also use the `break buffer element to pieces' entry to de-compose an element into pieces for editing. Note: only objects with visibility turned on are pasted to the layout. If you have something in a buffer, then change which side of the board you are viewing, the contents of the buffer will automatically be mirrored for pasting on the side you are viewing. It is not necessary to clear a buffer before cutting or copying something into it - it will automatically be cleared first.

Connects
The entries available through the Connects menu allow you to find connections from objects and to manipulate these. You can also optimize or erase rat's nests from this menu. Finally, the `auto-route all rats' entry allows you to auto-route all connections show by the rat's nest. The auto-router will use any visible copper layer for routing, so turn off the visibility of any layers you don't want it to use. The auto-router will automatically understand and avoid any traces that are already on the board, but it is not restricted to the grid. Finally, the auto-router routes using the active sizes (except for nets that have a route-style defined). Pcb always knows which tracks were routed by the auto-router, and you can selectively remove them without fear of changing tracks that you have manually routed with the `rip-up all auto-routed tracks' entry in the Connects menu. The `design rule checker' entry runs a check for copper areas that are too close together, or connections that touch too tenously for reliable production. The DRC stops when the first problem is encountered so after fixing a problem be sure to run it again until no problems are found.
 
Warning: COPPER TEXT IS IGNORED BY THE DRC CHECKER.

Info
The `generate object report' entry from the Info menu provides a way to get detailed information about an object, such as its coordinates, dimensions, etc. You can also get a report summerizing all of the drills used on the board with `generate drill summary'. Lastly, you can get a list of all pins, pads and vias that were found during a connection search.

Window
The Window menu provides a way to bring each of Pcb's windows to the front. The Library window is used to bring elements from the library into the paste-buffer. The Message Log window holds the various messages that Pcb sends to the user. The Netlist window shows the list of connections desired.

Now that you're familiar with the various menus, it's time to try some things out. From the File menu choose `load layout', navigate to the tutorial folder, then load the file `tut1.pcb'.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1.2 The Status-line and Input-field

The status-line is located at the bottom edge of the main window. During normal operation the status information is visible there. When a selected menu operation requires an additional button click, the status-line is replaced by a message telling you to position the cursor and click. When a text input is required, the status-line is replaced by the Input-field which has a prompt for typing the input.

The status-line shows, from left to right, the side of the board that you are viewing (Tab key changes this), the current grid values, if new lines are restricted to 45 degrees, which type of 45 degree line mode is active, whether rubberband move and rotate mode is on (R), and the zoom factor. This information is followed by the active line-width, via-size and drilling hole, keepaway spacing, and text scaling. Last is the active buffer number and the name of the layout. An asterisk appearing at the far left indicates that the layout has been modified since the last save. Note that the name of the layout is not the same thing as the filename of the layout. Change the grid factor to 1.0 mm from the Screen menu. Observe how the status line shows the new grid setting. Except for the case of the metric grid, all dimensions in the status line are in units of 0.001 inch (1 mil).

The input-field pops up (temporarily replacing the status-line) whenever user input is required. Two keys are bound to the input field: the Escape key aborts the input, Return accepts it. Let's change the name of a component on the board to see how the input-field works. Position the cross hair over R5, and press the N key. The input field pops-up showing the name for you to edit. Go ahead and change the name, then hit return. Notice the name of the element changed. Now undo the change by pressing the U key. You can position the cross hair over the name, or the element before pressing the N key.

Now select `realign grid' from the Screen menu. Notice that the status line has been replaced with an instruction to position the cursor where you want a grid point to fall. In this case, since the cross hair can only fall on a grid point, you must move the tip of the finger cursor to the place where you want a grid point to appear. Do not worry that the cross hair is not coincident with the cursor. Click Btn1 at your chosen location. See how the grid has shifted, and the status line has returned.

The present cross hair position is displayed in the upper right corner of the window. Normally this position is an absolute coordinate, but you can anchor a marker at the cross hair location by pressing Ctrl-M (try it now) and then the display will read both the absolute cross hair position as well as the difference between it and the marker. The numbers enclosed in < > are the X and Y distances between the cross hair and the mark, while the numbers enclosed in parenthesis are the distance and angle from the mark to the cross hair. The values displayed are always in units of 0.001 inch (1 mil). Pressing Ctrl-M again turns the marker off.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1.3 The Panner Control

The panner control, located at the upper left side of the window, is used to adjust what portion of the layout is seen in the Layout area. The outer rectangle of the panner represents the whole layout (extended to have the panner aspect ratio), while the inner control rectangle represents the portion seen through the Layout area. Slowly drag this part around with the mouse (Btn1) to see how it pans the layout. Release the panner control, but leave the pointer within the outer most rectangle of the control. Now hit a few keyboard arrow keys. Each arrow key moves the region seen one-half window size in the arrow direction. If you want to see a portion of the layout that is off the top of the screen, you need to drag the panner up, or hit the up arrow key.

Move the pointer back into the Layout area. Increase the zoom by hitting the Z key. See how the inner part of the panner becomes smaller to reflect that you are viewing a smaller part of the layout. Now zoom out by hitting Shift-Z. If you hit the arrow key with the pointer in the Layout area, it moves the pointer rather than scrolling the window. In general the keyboard shortcuts depend on which region of Pcb's window the pointer is over. For the most part, the key strokes in this manual refer to the case when the pointer is in the Layout area. You can do fine scrolling in the Layout area by dragging it directly with the Panner tool. Press the Escape key to select the panner tool. Now drag in the layout area with Btn1 down. You can scroll the drawing window while the pointer is inside it with Mod-Arrow keys.

If you are moving or drawing an object and go beyond the drawing window borders, the window will auto-scroll. If you want to stop the auto-scrolling while the pointer is outside the Layout area, simply pass the pointer briefly over the panner control area, or a menu button.

Another way to navigate around a layout is with Shift-Btn3. When pressed down, the layout will zoom so the whole extent of objects is visible, and will return to the previous zoom when you release the button, but will be centered at the cross hair position where the button is released. You can do this while in the middle of drawing an object. Try it now to center near U7.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1.4 The Layer Controls

The layer control panel, located below the panner control, is used to turn on and off the display of layer groups and to select the active drawing layer. If a layer hasn't been named, the label "(unknown)" is used as the default. If this happens, it probably means the application resources are not installed properly.

The upper buttons are used to switch layers on and off. Click <Btn1> on one or more of them. Each click toggles the setting. If you turn off the currently active layer, another one that is visible will become active. If there are no others visible, you will not be able to turn off the active layer. When the layers are grouped, clicking on these buttons will toggle the visibility of all layers in the same group. This is a good idea because layers in the same group reside on the same physical layer of the actual board. Notice that this example has 2 groups each having 3 layers, plus two other layers named `unused'. Use the `Edit layer groups' option in the `Settings' menu to change the layer groupings. Note that changing the groupings can radically alter the connectivity on the board. Grouping layers is only useful for helping you to color-code signals in your layout. Note that grouping layers actually reduces the number of different physical layers available for your board, so to make an eight layer board, you cannot group any layers.

The far side button turns on and off the visibility of elements (including SMD pads) on the opposite (to the side you're viewing) board side, as well as silk screening on that side. It does not hide the x-ray view of the other copper layers, these must be turned off separately if desired. Use the tab key to view the entire board from the other side. To see a view of what the back side of the board will actually look like, make the solder layer the active layer then press tab until the status line says "solder" on the right, then turn off the visibility of all layers except solder, pins/pads, vias, and silk. Now turn them all back on.

The lowest button, named active, is used to change the active drawing layer. Pressing <Btn1> on it pops up a menu to select which layer should be active. Each entry is labeled with the layer's name and drawn in its color. The active layer is automatically made visible. The active layer is always drawn on top of the other layers, so the ordering of layers on the screen does not generally reflect the ordering of the manufactured board. Only the solder, component, silkscreen, and solder-mask layers are always drawn in their physical order. Bringing the active layer to the top makes it easier to select and change objects on the active layer. Try changing the active layer's name to ABC by selecting `edit name of active layer' from the `Edit' menu. Changing the active layer can also be done by pressing keys 1..8.

Turn off the visibility of the component layer. Now make the component layer the active layer. Notice that it automatically became visible. Try setting a few other layers as the active layer. You should also experiment with turning on and off each of the layers to see what happens.

The netlist layer is a special layer for adding connections to the netlist by drawing rat lines. This is not the recommended way to add to the netlist, but occasionally may be convenient. To learn how to use the netlist layer see 1.9 Nets.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1.5 The Tool Selectors

The tool selector buttons reside below the layer controls. They are used to select which layout tool to use in the drawing area. Each tool performs its function when Btn1 is pressed. Every tool gives the cursor a unique shape that identifies it. The tool selector buttons themselves are icons that illustrate their function. Each layout tool can also be selected from the keyboard:
 
    Escape key   Panner tool
    F1 key       Via tool
    F2 key       Line tool
    F3 key       Arc tool
    F4 key       Text tool
    F5 key       Rectangle tool
    F6 key       Polygon tool
    F7 key       Buffer tool
    F8 key       Delete tool
    F9 key       Rotate tool
    Insert key   Insert-point tool
    F10 key      Thermal tool
    F11 key      Arrow tool
    F12 key      Lock tool

Some of the tools are very simple, such as the Via tool. Clicking Btn1 with the Via tool creates a via at the cross hair position. The via will have the diameter and drill sizes that are active, as shown in the status line. The Buffer tool is similar. With it, <Btn1> copies the contents of the active buffer to the layout, but only those parts that reside on visible layers are copied. The Rotate tool allows you to rotate elements, arcs, and text objects 90 degrees counter-clockwise with each click. Holding the Shift key down changes the Rotate tool to clockwise operation. Anything including groups of objects can be rotated inside a buffer using the rotate buffer menu option.

The Line tool is explained in detail in 1.5 Lines. Go read that section if you haven't already. Activate the Line tool. Set the active layer to the solder layer. Try drawing some lines. Use the U key to undo some of the lines you just created. Zoom in a bit closer with the Z key. Draw some more lines. Be sure to draw some separate lines by starting a new anchor point with Ctrl-Btn1. Change the `crosshair snaps to pin/pads' behavior in the Settings menu. Now draw a line. Notice that the new line points must now always be on a grid point. It might not be able to reach some pins or pads with this setting. Increase the active line thickness by pressing the L key. Note that the status line updates to reflect the new active line thickness. Now draw another line. Before completing the next line, make the component layer active by pressing the 4 key. Now finish the line. Notice that a via was automatically placed where you switched layers. Pcb does not do any checks to make sure that the via could safely be placed there. Neither does it interfere with your desire to place lines haphazardly. It is up to you to place things properly when doing manual routing with the Line tool.

The Arc tool is explained in detail in 1.6 Arcs. Its use is very similar to the Line tool.

The Rectangle tool, Polygon tool and Thermal tool are explained in detail in 1.7 Polygons. Go read that section. Remember that the Thermal tool will only create and destroy thermals to polygons on the active layer. Use the Rectangle tool to make a small copper plane on the component layer. Now place a via in the middle of the plane. Notice that it does not touch the plane, and they are not electrically connected. Use the Thermal tool to make the via connect to the plane. Thermals allow the via or pin to be heated by a soldering iron without having to heat the entire plane. If solid connections were made to the plane, it could be nearly impossible to solder. Click on the via again with the Thermal tool to remove the connection to the plane.

The Insert-point tool is an editing tool that allows you to add points into lines and polygons. The Insert-point tool enforces the 45 degree line rule. You can force only the shorter line segment to 45 degrees by holding the Shift key down while inserting the point. Try adding a point into one of the lines you created. Since line clipping is turned on, you may need to move the cross hair quite far from the point where you first clicked on the line. Turn off the line clipping by selecting `all-direction lines' from the Settings menu (or hit the Period key). Now you can place an inserted point anywhere. Try adding a point to the rectangle you made earlier. Start by clicking somewhere along an edge of the rectangle, then move the pointer to a new location and click again.

The delete-mode deletes the object beneath the cursor with each Btn1 click. If you click at an end-point that two lines have in common, it will replace the two lines with a single line spanning the two remaining points. This can be used to delete an "inserted" point in a line, restoring the previous line. Now delete one of the original corner points of the polygon you were just playing with. To do this, place the cross hair over the corner and click on it with the Delete tool. You could also use the Backspace key if some other tool is active. Try deleting some of the lines and intermediate points that you created earlier. Use undo repeatedly to undo all the changes that you've made. Use redo a few times to see what happens. Now add a new line. Notice that you can no longer use redo since the layout has changed since the last undo happened. The undo/redo tree is always pruned in this way (i.e. it has a root, but no branches).

The Arrow tool is so important, it has its own section: 2.10 Arrow Tool. Go read it now.

The Lock tool allows you to lock objects on the layout. When an object is locked, it can't be selected, moved, rotated, or resized. This is useful for very large objects like ground planes, or board-outlines that are definied as an element. With such large objects, nearly anywhere you click with the Arrow tool will be on the large object, so it could be hard to draw box selections. If you lock an object, the Arrow tool will behave as if it didn't exist. You cannot unlock an object with undo. You must click on it again with the Lock tool. If an object is locked, previous changes to it cannot be undone either. When you lock an object, a report message about it is popped up and will always tell you what object it is, and that it is locked if you just locked it. Other than noticing your inability to manipulate something, the only way to tell an object is locked is with a report from the Info menu. Use the Lock tool sparingly.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.1.6 Layout Area

The layout area is where you see the layout. The cursor shape depends on the active tool when the pointer is moved into the layout area. A cross hair follows the X11 pointer with respect to the grid setting. Select a new grid from the Screen menu. The new value is updated in the status line. A different way to change the grid is Shift<Key>g to decrease or <Key>g to increase it, but this only works for English (integer mil) grids. The grid setting is saved along with the data when you save a pcb layout. For homemade layouts a value around 50 is a good setting. The cursor can also be moved in the layout area with the cursor (arrow) keys or, for larger distances, by pressing the Shift modifier together with a cursor key.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.2 Log Window

This optional window is used to display all kind of messages including the ones written to stderr by external commands. The main advantage of using it is that its contents are saved in a scrolling list until the program exits. Disabling this feature by setting the resource useLogWindow to false will generate popup windows to display messages. The stderr of external commands will appear on Pcbs stderr which normally is the parent shell. I suggest you iconify the log window after startup for example by setting *log.iconic to true in the resource file. If raiseLogWindow is set true, the window will deiconify and raise itself whenever new messages are to be displayed.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.3 Library Window

The library window makes loading elements (or even partial layouts) easy. Just click the appropriate library from the list on the left. A list of its elements then appears on the right. Select an element from the list by clicking on its description. Selecting an element from the library will also automatically copy the element into the active buffer, then invoke the Buffer tool so you can paste it to the layout. Elements in the old library should be taken with a grain of salt (i.e. check them carefully before using). The old library names all begin with ~ so you can easily distinguish between the old and new libraries. All of the elements in the new library should be thoroughly vetted, so you can use them with confidence. The new libraries are stored simply as directories full of element files, so making additions to the new library is easy since there is no need to learn m4. For details on the old libraries, check-out 6.7 Library File Format and 6.6 Library Contents File Format. For details on the format of an element file used for the new libraries, see 6.3 Element File Format.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.4 Netlist Window

The netlist window is very similar to the library window. On the left is a list of all of the nets, on the right is the list of connections belonging to the chosen net. The chosen net is highlighted in the list and also shown on the second line of the window in red. If the net name has a star to the left of it then it is "disabled". A disabled net is treated as if it were not in the net list. This is useful, for example, if you plan to use a ground plane and don't want the ground net showing up in the rat's nest. You can enable/disable individual nets by double-clicking the net name. If you want to enable or disable all nets at once, there are two buttons at the top of the netlist window for this purpose.

The button labeled `Sel Net On Layout' can be used to select (on the layout) everything that is connected (or is supposed to be connected) to the net. If you click on a connection in the connection list, it will select/deselect the corresponding pin or pad in the layout and also center the layout window where it is located. If you "Find" (`lookup connection to object' in the Connects menu [also F key]), a pin or pad it will also choose the net and connection in the netlist window if it exists in the netlist.

If no netlist exists for the layout, then the netlist window does not appear. You can load a netlist from a file from the File menu. The format for netlist files is described in 6.5 Netlist File Format.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5 Drawing and Removing Basic Objects

hace begging gutting here, and do a real-world tutorial example.

There are several ways of creating new objects: you can draw them yourself, you can copy an existing object (or selection), or you can load an element from a file or from the Library window. Each type of object has a particular tool for creating it.

The active tool can be selected from the tool selectors in the bottom left corner or by one of the function keys listed earlier in this chapter. Each <Btn1> press with the tool tells the application to create or change the appropriate object or at least take the first step to do so. Each tools causes the cursor to take on a unique shape and also causes the cooresponding tool selector button to be highlighted. You can use either cue to see which tool is active.

Insert mode provides the capability of inserting new points into existing polygons or lines. The 45 degree line clipping is now enforced when selected. Press and hold the shift key while positioning the new point to only clip the line segment to the nearer of the two existing points to 45 degrees. You can also toggle the 45-degree clipping in the middle of a point insertion by pressing the <Key>. If the shift key is not depressed and the 45 degree line clipping mode is on, both new line segments must be on 45 degree angles - greatly restricting where the new point may be placed. In some cases this can cause confusion as to whether an insertion has been started since the two new lines may be forced to lie parallel on top of the original line until the pointer is moved far from the end points.

Removing objects, changing their size or moving them only applies to objects that are visible when the command is executed.

2.5.1 Lines  
2.5.2 Arcs  
2.5.3 Polygons and Rectangles  Drawing polygons and rectangles.
2.5.4 Text  
2.5.5 Vias  
2.5.6 Elements  
2.5.7 Pastebuffer  A multi-purpose buffer.

There are several keystrokes and button events refering to an object without identifying its type. Here's a list of them:

<Btn1> creates (or deletes) an object depending on the current mode.

<Key>BackSpace or <Key>Delete removes the visible object at the cursor location. When more than one object exists at the location, the order of removal is: via, line, text, polygon and element. The drawn layer order also affects the search - whatever is top - most (except elements) is affected before lower items. Basically all this means that what is removed is probably just what you expect. If for some reason it isn't, undo and try again. Only one object is removed for each keystroke. If two or more of the same type match, the newest one is removed.

Use <Key>s and Shift<Key>s to change the size (width) of lines, arcs, text objects, pins, pads and vias, or to toggle the style of polygons (whether pins and vias automatically have clearances).

<Key>n changes the name of pins, pads, vias, the string of a text object, or the currently displayed label of an element.

<Key>m moves the line, arc, or polygon under the cross hair to the active layer if it wasn't on that layer already.

<Key>u (undo) recovers from an unlimited number of operations such as creating, removing, moving, copying, selecting etc. It works like you'd expect even if you're in the midst of creating something.

Shift<Key>r restores the last undone operation provided no other changes have been made since the undo was performed.

<Key>tab changes the board side you are viewing.

For a complete list of keystrokes and button events see 5.3 Default Translations.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5.1 Lines

To draw new lines you have to be in line-mode. Get there either by selecting it from the Tool palette or by pressing <Key>F2. Each successive notify event creates a new line. The adjustment to 45 degree lines is done automatically if it is selected from the Display menu. You can toggle the 45 degree mode setting by pressing the <Key>. (That is the period key). When 45 degree enforcement is turned on there are three distinct modes of line creation: a single line on the closest 45 degree vector towards the cross hair (but not necessarily actually ending at the cross hair), two lines created such that the first leaves the start point on a 90 degree vector and the second arrives at the cross hair on a 45 degree vector, and finally two lines created such that the first leaves the start point on a 45 degree vector and the second arrives at the cross hair on a 90 degree vector. These last two modes always connect all the way from the start and end points, and all lines have angles in 45 degree multiples. The <Key>/ cycles through the three modes. The status line shows a text icon to indicate which of the modes is active and the lines following the cross hair motion show the outline of the line(s) that will actually be created. Press <Key>Escape to leave line-mode.

<Key>l, Shift<Key>l and the entries in the Sizes menu change the initial width of new lines. This width is also displayed in the status line.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5.2 Arcs

An Arc is drawn with the arc-tool. Get there either by selecting it from the Tool palette or by pressing <Key>F8. Press Btn1 to define the starting point for the arc. Drag the mouse towards the desired end point along the path you want the arc to follow. The outline of the arc that will be created is shown on the screen as you move the mouse. Arcs are always forced to be 90 degrees and have symmetrical length and width ( i.e. they are a quarter circle). The next Btn1 click creates the arc. It will have the same width as new lines (displayed in the status line) and appear on the active layer. The arc leaves the starting point towards the cross hair along the axis whose distance from the cross hair is largest. Normally this means that if you drag along the path you want the arc to follow, you'll get what you want. If the grid is set to the arc radius, then the two distances will be equal and you won't be able to get all of the possible directions. If this is thwarting your desires, reduce the grid spacing (!Shift<Key>G) and try again.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5.3 Polygons and Rectangles

A polygon is drawn by defining all of its segments as a series of consecutive line segments. If the first point matches a new one and if the number of points is greater than two, then the polygon is closed. Since matching up with the first point may be difficult, you may use Shift<Key>p to close the polygon. The Shift<Key>p won't work if clipping to 45 degree lines is selected and the final segment cannot match this condition. I suggest you create simple convex polygons in order to avoid a strong negative impact on the performance of the connection scanning routines. The rectangle-mode is just an easy way to generate rectangular polygons. Polygon-mode also is selected by <Key>F6 whereas rectangle-mode uses <Key>F4. Pressing a <Btn1> at two locations creates a rectangle by defining two of its corners. <Key>Insert brings you to insert-point-mode which lets you add additional points to an already existing polygon. Single points may be removed by moving the cross hair to them and selecting one of the delete actions (remove-mode, BackSpace, or Delete. This only works if the remaining polygon will still have three or more corners. Pressing <Key>u or <Key>p while entering a new polygon brings you back to the previous corner. Removing a point does not force clipping to 45 degree angles (because it's not generally possible). Newly created polygons will not connect to pins or vias that pierce it unless you create a thermal (using the thermal mode) to make the connection. If the edge of a polygon gets too close to a pin or via that lies outside of it, a warning will be issued and the pin will be given a special color. Increasing the distance between them will remove the warning color.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5.4 Text

Pressing <Key>F5 or clicking one of the text selector buttons changes to text-mode. Each successive notify event (<Btn1>) pops up the input line at the bottom and queries for a string. Enter it and press <Key>Return to confirm or <Key>Escape to abort. The text object is created with its upper left corner at the current pointer location. The initial scaling is changed by <Key>t and Shift<Key>t or from the Sizes menu.

Now switch to rotate-mode and press <Btn1> at the text-objects location. Text objects on the solder side of the layout are automatically mirrored and flipped so that they are seen correctly when viewing the solder-side.

Use <Key>n to edit the string.

TEXT OBJECTS ON COPPER LAYERS CREATE COPPER LINES BUT THEY ARE NOT SCANNED FOR CONNECTIONS. If they are moved to the silkscreen layer, they no longer create copper.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5.5 Vias

The initial size of new vias may be changed by <Key>v and Shift<Key>v or by selecting the appropriate entry from the Sizes menu. Mod1<Key>v and Mod1 Shift<Key>v do the same for the drilling hole of the via. The statusline is updated with the new values. Creating a via is similar to the other objects. Switch to via-mode by using either the selector button or <Key>F1 then press <Key>] or <Btn1> to create one. <Key>n changes the name of a via. If you want to create a mounting hole for your board, then you can place a via where you want the hole to be then convert the via into a hole. The conversion is done by pressing !Ctrl<Key>h with the cross hair over the via. Conceptually it is still a via, but it has no copper annulus. If you create such a hole in the middle of two polygons on different layers, it will short the layers. Theoretically you could arrange for such a hole not to be plated, but a metal screw inserted in the hole would still risk shorting the layers. A good rule is to realize that holes in the board really are vias between the layers and so place them where they won't interfere with connectivity. You can convert a hole back into a normal via with the same keystroke used to convery it in the first place.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5.6 Elements

Some of the functions related to elements only work if both the package layer and the pin layer are switched on.

Now that you're familiar with many of the basic commands, it is time to put the first element on the layout. First of all, you have to load data into the paste buffer. There are four ways to do this:

 
   1) load the data from a library
   2) load the data from a file
   3) copy data from an already existing element
   4) convert objects in the buffer into an element
We don't have any elements on the screen yet nor anything in the buffer, so we use number one.

Select lsi from the menu in the library window press <Btn1> twice at the appropriate text-line to get the MC68030 CPU. The data is loaded and the mode is switched to pastebuffer-mode. Each notify event now creates one of these beasts. Leave the mode by selecting a different one or by <Key>Escape which resets all modes.. The cross hair is located at the mark position as defined by the data file. Rotating the buffer contents is done by selecting the rotate entry of the Buffer menu or by pressing Shift<Key>F3. The contents of the buffer are valid until new data is loaded into it either by a cut-to-buffer operation, copy-to-buffer operation or by loading a new data file. There are 5 buffers available. Switching between them is done by selecting a menu entry or by Shift<Key>1..5. Each of the two board sides has its own buffers.

The release includes all data files for the circuits that are used by the demo layout. The elements in the LED example are not found in the library, but you can lift them from the example itself if you want. If you have problems with the color of the cross hair, change the resource cross hairColor setting to a different one.

Now load a second circuit, the MC68882 FPU for example. Create the circuit as explained above. You now have two different unnamed elements. Unnamed means that the layout-name of the element hasn't been set yet. Selecting description from the Display menu displays the description string of the two circuits which are CPU and FPU. The values of the circuits are set to MC68030 and MC68882. Each of the names of an element may be changed by <Key>n at the elements location and editing the old name in the bottom input line. Naming pins and vias is similar to elements. You can hide the element name so that it won't appear on the board silkscreen by pressing <key>h with the cursor over the element. Doing so again un-hides the element name.

Entering :le and selecting an element data file is the second way to load circuits.

The third way to create a new element is to copy an existing one. Please refer to 2.6 Moving and Copying.

The fourth way to create a new element is to convert a buffer's contents into an element. Here's how it's done: Select the Via-tool from the Tool pallette. Set the grid spacing to something appropriate for the element pin spacing. Now create a series of vias where the pins go. Create them in pin number order. It is often handy to place a reference point (!Ctrl<Key>m) in the center of the first pin in order to measure the location of the other pins. Next make a solder-side layer the active layer from the active-layer popup menu. Now draw the outline of the element using lines and arcs. When you're done, select everything that makes up the element with a box selection (<Btn3Down> drag, <Btn3Up>). Now select "cut selection to buffer" from the Buffer menu. Position the cursor over the center of pin 1 and press the left button to load the data into the buffer. Finally select "convert buffer to element" from the Buffer menu. You'll only want to create elements this way if they aren't already in the library. It's also probably a good idea to do this before starting any of the other aspects of a layout, but it isn't necessary.

To display the pinout of a circuit move to it and press Shift<Key>d or select show pinout from the Objects menu. A new window pops up and displays the complete pinout of the element. This display can be difficult to read if the component has been rotated 90 degrees :-( therefore, the new window will show an un-rotated view so the pin names are readable. <Key>d displays the name of one or all pins/pads inside the Layout area, this is only for display on-screen, it has no effect on any printing of the layout.

You also may want to change a pin's or pad's current size by pressing <Key>s to increase or Shift<Key>s to decrease it. While this is possible, it is not recommended since care was probably taken to define the element structure in the first place. You can also change the thickness of the element's silkscreen outline with the same keys. You can change whether a pin or SMD pad is rounded or square with the <Key>q. SMD pads should usually have squared ends. Finally, you can change whether the non-square pins are round or octagonal with the !Ctrl<Key>o.

SMD elements and silkscreen objects are drawn in the "invisible object" color if they are located on the opposite side of the board.

For information on element connections refer to 2.9 Connection Lists.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.5.7 Pastebuffer

The linestack and element-buffer of former releases have been replaced by 5 multi-purpose buffers that are selected by Shift<Key>1..5. The status line shows which buffer is the active one. You may load data from a file or layout into them. Cut-and-paste works too. If you followed the instructions earlier in this chapter you should now have several objects on the screen. Move the cross hair to one of them and press <Btn3Down> to toggle its selection flag. (If you drag the mouse while the button is down, a box selection will be attempted instead of toggling the selection.) The object is redrawn in a different color. You also may want to try moving the pointer while holding the third button down and release it on a different location. This selects all objects inside the rectangle and unselects everything else. If you want to add a box selection to an existing selection, drag with Mod1<Btn3Down> instead. Dragging Shift Mod1<Btn3Down> unselects objects in a box. Now change to pastebuffer-mode and select some operations from the Buffer menu. Copying objects to the buffer is available as Mod1<Key>c while cutting them uses Mod1<Key>x as shortcut. Both clear the buffer before new data is added. If you use the menu entries, you have to supply a cross hair position by pressing a mouse button. The objects are attached to the pastebuffer relative to that cross hair location. Element data or PCB data may be merged into an existing layout by loading the datafiles into the pastebuffer. Both operations are available from the File menu or as user commands.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.6 Moving and Copying

All objects can be moved including element-names, by <Btn2Down>, draging the pointer while holding the button down and releasing it at the new location of the object. If you use Mod1<Btn2Down> instead, the object is copied. Copying does not work for element-names of course. You can move all selected objects with Shift <Btn1>. This uses the Pastebuffer, so it will remove whatever was previously in the Pastebuffer. Please refer to 2.5.7 Pastebuffer. If you want to give a small nudge to an object, but you don't think that the mouse will give you the fine level of control that you want, you can position the cursor over the object, press <Key>[, move it with the arrow keys, then press <Key>] when it's at the desired position. Remember that all movements are forced onto grid coordinates, so you may want to change the grid spacing first.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.7 Loading and Saving

After your first experience with Pcb you will probably want to save your work. :s name passes the data to an external program which is responsible for saving it. For details see saveCommand in 5.1 Non-Standard X11 Application Resources. Saving also is available from the File menu, either with or without supplying a filename. Pcb reuses the last filename if you do not pass a new one to the save routine.

To load an existing layout either select load layout data from the File menu or use :l filename. A file select box pops up if you don't specify a filename. Merging existing layouts into the new one is supported either by the File menu or by :m filename.

Pcb saves a backup of the current layout depending on the resource backup. The file is named `/tmp/PCB.%i.backup'. During critical sections of the program or when data would be lost it is saved as `/tmp/PCB.%i.save'. %i is replaced by the process ID.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.8 Printing

Pcb now has support for device drivers, PostScript, encapsulated PostScript, and Gerber X drivers are available so far. The Gerber X driver generates a NC drill file for automated drilling. I recommend the use of GhostScript if you don't have a PostScript printer for handling the PostScript output. Printing always generates a complete set of files for a specified driver. See the page about the Print() action for addtional information about the filenames. The control panel offers a number of options. Most of them are not avilable for Gerber output because it wouldn't make sense, for example, to scale the gerber output (you'd get an incorrectly made board!) The options are:

`device'
The top menu button selects from the available device drivers.

`rotate'
Rotate layout 90 degrees counter-clockwise before printing (default).

`mirror'
Mirror layout before printing. Use this option depending on your production line.

`color'
Created colored output. All colors will be converted to black if this option is inactive.

`outline'
Add a board outline to the output file. The size is determined by the maximum boardsize changeable from the sizes menu. The outline appears on the top and bottom sides of the board, but not on the internal layers. An outline can be useful for determining where to shear the board from the panel, but be aware that it creates a copper line. Thus it has the potential to cause short circuits if you don't leave enough room from your wiring to the board edge. Use a viewer to see what the output outline looks like if you want to know what it looks like.

`alignment'
Additional alignement targets are added to the output. The distances between the board outline is set by the resource alignmentDistance. Alignment targets should only be used if you know for certain that YOU WILL BE USING THEM YOURSELF. It is extremely unlikely that you will want to have alignment targets if you send gerber files to a commercial pcb manufacture to be made.

`scaling'
It's quite useful to enlarge your printout for checking the layout. Use the scrollbar to adjust the scaling factor to your needs.

`media'
Select the size of the output media from this menu. The user defined size may be set by the resource media either from one of the well known paper sizes or by a X11 geometry specification. This entry is only available if you use X11R5 or later. For earlier releases the user defined size or, if not available, A4 is used. Well known size are:
 
	A3
	A4
	A5
	letter
	tabloid
	ledger
	legal
	executive

`offset'
Adjust the offsets of the printout by using the panner at the right side of the dialog box. This entry is only available if you use X11R5 or later. A zero offset is used for earlier releases.

`8.3 filenames'
Select this button to generate DOS compatible filenames for the output files. The command input area will disappear if selected.

`commandline'
Use this line to enter a command (starts with |) or a filename. A %f is replaced by the current filename. The default is set by the resource printCommand.

The created file includes some labels which are guaranteed to stay unchanged

`PCBMIN'
identifies the lowest x and y coordinates in mil.

`PCBMAX'
identifies the highest x and y coordinates in mil.

`PCBOFFSET'
is set to the x and y offset in mil.

`PCBSCALE'
is a floating point value which identifies the scaling factor.

`PCBSTARTDATA'
`PCBENDDATA'
all layout data is included between these two marks. You may use them with an awk script to produce several printouts on one piece of paper by duplicating the code and putting some translate commands in front. Note, the normal PostScript units are 1/72 inch.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.9 Connection Lists

After completing parts of your layout you may want to check if all drawn connections match the ones you have in mind. This is probably best done in conjunction with a net-list file: see 2.11 Rats Nest. The following examples give more rudimentary ways to examine the connections.
 
    1) create at least two elements and name them
    2) create some connections between their pins
    3) optionally add some vias and connections to them

Now select lookup connection from the Connections menu, move the cursor to a pin or via and press any mouse button. Pcb will look for all other pins and/or vias connected to the one you have selected and display the objects in a different color. Now try some of the reset options available from the same menu.

There also is a way to scan all connections of one element. Select a single element from the menu and press any button at the element's location. All connections of this element will be saved to the specified file. Either the layout name of the element or its canonical name is used to identify pins depending on the one which is displayed on the screen (may be changed by Display menu).

An automatic scan of all elements is initiated by choosing all elements. It behaves in a similar fashion to scanning a single element except the resource resetAfterElement is used to determine if connections should be reset before a new element is scanned. Doing so will produce very long lists because the power lines are rescanned for every element. By default the resource is set to false for this reason.

To scan for unconnected pins select unused pins from the same menu.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.10 Arrow Tool

Some commands mentioned earlier in this chapter also are able to operate on all selected and visible objects. The Arrow tool is used to select/deselect objects and also to move objects or selections. If you click and release on an object with the Arrow tool, it will unselect everything else and select the object. Selected objects change color to reflect that they are selected. If you Shift click, it will add the object to (or remove) the object from the existing selection. If you drag with the mouse button down with the Arrow tool, one of several things could happen: if you first pressed the button on a selected object, you will be moving the selection to where you release the button. If you first pressed the button on an unselected object, you will be moving that object. If you first pressed the button over empty space, you will be drawing a box to select everything inside the box. The Shift key works the same way with box selections as it does with single objects.

Moving a single un-selected object is different from moving a selection. First of all, you can move the end of line, or a point in a polygon this way which is impossible by moving selections. Secondly, if rubber banding is turned on, moving a single object will rubber-band the attached lines. Finally, it is faster to move a single object this way since there is no need to select it first.

You can select any visible object unless it is locked. If you select an object, then turn off its visibility with the Layer controls, it won't be moved if you move the remaining visible selection.

If you have not configured to use strokes in the Pcb user interface, then the middle mouse button is automatically bound to the arrow tool, regardless of the active tool (which is bound to the first mouse button). So using the middle button any time is just like using the first mouse button with the Arrow tool active.

The entries of the Selection menu are hopefully self-explanatory. Many of the Action Commands can take various key words that make them function on all or some of the selected items.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.11 Rats Nest

If you have a netlist that corresponds to the layout you are working on, you can use the rats-nest feature to add rat-lines to the layout. First you will need to load a netlist file (see :rn, 3. User Commands). <Key>w adds rat-lines on the active layer using the current line thickness shown in the status line (usually you'll want them to be thin lines). Only those rat-lines that fill in missing connectivity (since you have probably routed some connections already) are added. If the layout is already completely wired, nothing will be added, and you will get a message that the wiring is complete.

Rat-lines are lines having the special property that they only connect to pins and pads at their end points. Rat-lines are drawn on the screen with a stippled pattern to make them easier to identify since they have special behavior and cannot remain in a completed layout. Rat-lines are added in the minimum length straight-line tree pattern (always ending on pins or pads) that satisfies the missing connectivity in the circuit. Used in connection with moves and rotates of the elements, they are extremely useful for deciding where to place elements on the board. The rat-lines will always automatically rubberband to the elements whether or not the rubberband mode is on. The only way for you to move them is by moving the parts they connect to. This is because it is never desireable to have the rat-lines disconnected from their element pins. Rat-lines will normally criss-cross all over which gives rise to the name "rats nest" describing a layout connected with them. If a SMD pad is unreachable on the active layer, a warning will be issued about it and the rat-line to that pad will not be generated.

A common way to use rats nests is to place some elements on the board, add the rat-lines, and then use a series of moves/rotates of the elements until the rats nest appears to have minimum tangling. You may want to iterate this step several times. Don't worry if the layout looks messy - as long as you can get a sense for whether the criss-crossing is better or worse as you move things, you're fine. After moving some elements arround, you may want to optimize the rats nest <Key>o so that the lines are drawn between the closest points (this can change once you've moved components). Adding rat-lines only to selected pads/pins (Shift<Key>w) is often useful to layout a circuit a little bit at a time. Sometimes you'll want to delete all the rat-lines (<Key>e) or selected rat-lines (Shift<Key>e) in order to reduce confusion. With a little practice you'll be able to achieve a near optimal component placement with the use of a rats nest.

Rat-lines are not only used for assisting your element placement, they can also help you to route traces on the board. Use the <Key>m to convert a rat-line under the cursor into a normal line on the active layer. Inserting a point into a rat-line will also cause the two new lines to be normal lines on the board. Another way that you can use rat-lines is to use the <Key>f with the cursor over a pad or pin. All of the pins and pads and rat-lines belonging to that net will be highlighted. This is a helpful way to distinguish one net from the rest of the rats nest. You can then route those tracks, turn off the highlighting (Shift<Key>f) and repeat the process. This will work even if the layer that the rat-lines reside on is made invisible - so only the pins and pads are highlighted. Be sure to erase the rat-lines (<Key>e erases them all) once you've duplicated their connectivity by adding your own lines. When in doubt, the <Key>o will delete only those rat-lines that are no longer needed.

If connections exist on the board that are not listed in the netlist when <Key>w is pressed, warning messages are issued and the affected pins and pads are drawn in a special warnColor until the next Notify() event. If the entire layout agrees completely with the netlist, a message informs you that the layout is complete and no rat-lines will be added (since none are needed). If the layout is complete, but still has rat-lines then you will be warned that rat-lines remain. If you get no message at all it's probably because some elements listed in the net list can't be found and where reported in an earlier message. There shouldn't be any rat-lines left in a completed layout, only normal lines.

The Shift<Key>w is used to add rat-lines to only those missing connections among the selected pins and pads. This can be used to add rat-lines in an incremental manner, or to force a rat-line to route between two points that are not the closest points within the net. Often it is best to add the rats nest in an incremental fashion, laying out a sub-section of the board before going further. This is easy to accomplish since new rat-lines are never added where routed connectivity already makes the necessary connections.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

2.12 Design Rule Checking

After you've finished laying out a board, you may want to check to be certain that none of your interconnections are too closely spaced or too tenuously touching to be reliably fabricated. The design rule checking (DRC) function does this for you. Use the command ":DRC()" (without the quotes of course) to invoke the checker. If there are no problem areas, you'll get a message to that effect. If any problem is encountered, you will get a message about it and the affected traces will be highlighted. One part of the tracks of concern will be selected, while the other parts of concern will have the "FindConnection" highlighting. The screen will automatically be centered in the middle of the object having the "FindConnection" (Green) highlighting. The middle of the object is also the coordinates reported to be "near" the problem. The actual trouble region will be somewhere on the boundary of this object. If the two parts are from different nets then there is some place where they approach each other closer than the minimum rule. If the parts are from the same net, then there is place where they are only barely connected. Find that place and connect them better.

After a DRC error is found and corrected you must run the DRC again because the search for errors is halted as soon as the first problem is found. Unless you've been extremely careless there should be no more than a few design rule errors in your layout. The DRC checker does not check for minimum spacing rules to copper text, so always be very careful when adding copper text to a layout. The rules for the DRC are specified in the application resource file. The minimum spacing value (in mils) is given by the Settings.Bloat value. The default is 7 mils. The minimum touching overlap (in mils) is given by the Settings.Shrink value. This value defaults to 5 mils. Check with your fabrication process people to determine the values that are right for you.

If you want to turn off the highlighting produced by the DRC, perform an undo (assuming no other changes have been made). To restore the highlighting, use redo. The redo will restore the highlighting quickly without re-running the DRC checker.


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Build Daemon user on November, 19 2004 using texi2html