Skip to content

Latest commit

 

History

History
180 lines (125 loc) · 8.57 KB

2.2_tips_and_tricks.md

File metadata and controls

180 lines (125 loc) · 8.57 KB

Tips & Tricks

Refdesses

Refdesses need to be a upper case or digit if one letter, else it needs a final digit.

Examples:

  • U
  • 1
  • U1

Is there a way to save the file as an older version ?

As new features are added to the file format, older versions of pcb might choke on portions of the layout using the bright new features. To prevent this kind of misbehavior, the pcb file contains a note on the minimum version string for the binary. Older versions of pcb refuse to load a layout saved by a newer pcb binary. This was the case for the addition of holes in polygons in 2010. You need a pcb version that was compiled from source later than June 2010 to open these layouts.

Unfortunately, there is no way to save the layout in a way that allows older versions of pcb to read the file. However, if don't use the holes in polygon features, you can just hand-edit the file version header back to 20070407 and open the file with the older pcb binary.

The delete key sometimes refuses to delete

Probably you try to delete a selected object. In pcb the "Delete" button does not act on the selection, but on the object currently under the mouse. Consequently nothing will be deleted if an object is selected and the mouse hovers at some other place. Bottom line: Just position the mouse over an object and press the "Delete" button. No need to select the object.

However, you can delete the current selection with the "Backspace" key.

I try to move an object, but pcb won't let me!

Most probably the object is locked. Locked objects won't highlight. To see, whether it indeed is, Select all connected objects from the Select menu. Locked footprints are shown with a little L at their diamond shaped insertion mark. Use the lock tool to unlock the object in question. Note, that the lock tool always toggles the lock state of the object you click at. Afterward, an object report pops up that contains the lock state in the last line.

If you want to remove all locks, you may consider to remove all instances of the string lock in the *.pcb file with your favorite ascii editor.

A different reason for numb objects is “Only Names” in the settings menu. When checked, the selection tool will exclusively act on text. This is useful with crammed layouts. There is a complementary setting “Lock Names”, too.

How do I rotate a selection (i.e. of more than one item)?

  1. Select the items
  2. Buffer → Cut selection to buffer
  3. Buffer → Rotate buffer 90 deg CCW (or CW)
  4. Click anywhere on the board and the selection is pasted on the design again.

Note: Square pads may not clear polygons correctly. Rectangular pads are ok, though. This is a known issue caused by the difficulty to know the reference direction of a square pad.

How do I rotate objects by an arbitrary angle?

  1. Cut the object into the paste buffer.
  2. Type “:FreeRotateBuffer(45)”. The ":" key will open the command line. Replace “45” with the angle you want to rotate by.
  3. Paste the object back to your board.

Note: For internal reasons, FreeRotateBuffer does not work with exact squares. As workaround use two or more polygons that add to give a square.

How do I move objects by an arbitrary distance?

  1. Let the mouse hover over the object to be moved.
  2. Type “:MoveObject(x,y,unit)”. The ":" key will open the command line. Replace “x” and “y” with the desired coordinates and “unit” with either “mm”, or “mil”.
  3. Type "Enter".

If both coordinates are prefixed with a “+”, or “-” the move is relative to the current position, else the object is moved to absolute coordinates.

How do I move objects to an absolute location?

Use the command “MoveObject()” as described above.

How do I change the size of a graphical object (such as text, silkscreen lines, etc)?

  • Mouse over the object and hit S. This will increase the size of the object you are mousing over.

  • Mouse over the object and hit Shift+S. This will decrease the size of the object you are mousing over.

You can alter the increase/decrease quantum using the File / Preferences… / Increments menu.

Note, this setting is currently broken.

How do I put components on both faces in PCB?

There are two ways to do it:

  • Pressing the Tab key will alternate the active side between the component and solder sides. When you place components, they will go on the active side.
  • If you are viewing one side of the board, place a component there and (with the cursor over it) press the B key (which means, send the component to the Back side) the component go to the other side of the board.

I can't move the components on the other side of the board!

The mouse is only sensitive to components on the active side of the board. This prevents ambiguities with components placed on both, top and bottom. By default, top side is active and the bottom side is the “far side” whose components are ignored by the mouse. You can swap the roles of the sides to make components on the far side accessible. The key-accels Tab, Shift+Tab, Ctrl+Tab and Ctrl+Shift+Tab will do the trick. These accels combine the swap with different vertical and horizontal flips.

Specifically:

  • Tab: swap sides and mirror along horizontal axis. This is like flipping a real board upside-down.

  • Shift+Tab: swap sides and mirror along vertical axis. This mimics flipping a real board like a page in a book.

  • Ctrl+Tab: swap sides and mirror along both axis. That is, do an inversion. This cannot be done with a real board …

  • Ctrl+Shift+Tab: No mirroring, just swap front side and far side. This is like an x-ray view.

How do I know, which side a component sits on?

If the component is on the currently far side of the layout, its silk layer is drawn in grey. If unsure, deactivate the far side with the “far side” button, at the bottom of the layer button row. This should remove the silk of all far side components from the view.

How do I define a silkscreen layer for the other side of the board?

Although only one silk layer button is visible in the GUI, silkscreen for both sides is automatically configured. In default view the silk layer button refers to silkscreen on the component side of the board. To place text or lines on solder silk you have to flip the board with the Tab key (or Shift+Tab if you prefer a left-right flip). This is like physically turning the board to the other side. It turns the solder layer on top, and component layer on bottom. Objects on component silk layer will be greyed out. If you draw to silk, lines will always go to the current top silk layer, which is solder now. The same happens to components and their silk screen. Flip the board again to return to default view.

Why text I add to the solder side not reversed?

Add it while the board is flipped (Tab). Just selecting the solder side is insufficient. New text always reads correctly from the side you're looking at.

Is it possible to use an arbitrary grid spacing?

Yes. You can use the command setvalue(grid,value,unit). To do this:

  1. Type “:SetValue(grid,=x,unit)”. The : key will open the command line. Replace “x” with the desired grid spacing and “unit” with either “mm”, or “mil”.

  2. Type Enter.

How do I set the origin in pcb?

The absolute origin is always in the upper left corner of the accessible area. This cannot be set to some other place. However, coordinates of objects can also be given relative to the current grid. In the GTK2 version of pcb coordinates are shown in the upper right corner of the main window. The right pair is the absolute position, while the left pair reflects the position relative to an arbitrary marker. This marker is set to the current position of the mouse by the key sequence Ctrl+M. You may want to set the marker to a grid point or a specific pin.

How do I measure distances and dimensions of components?

Use Ctrl+M to set the origin and read the distance of the mouse pointer relative to this point on the upper right of the pcb window. Some objects like vias and tracks yield useful information in object reports. Access the report of the object currently under the mouse pointer with Ctrl+R.

How do I hide rats of specific nets?

In the Netlist window, double-click on the specific rat name, then press O on your board window. Your rats are hidden for that net. In the Netlist window an asterisk appears in from of the rat name. To reverse: follow the same procedure.