pcb-rnd knowledge pool


Index: user guide

Iuguide by Tibor 'Igor2' Palinkas on 2018-02-23

Tags: index, beginner, user, guide, howto, tutorial, intro, introduction

node source



Abstract: Editing a PCB board is a complex workflow with many aspects. This user guide targets new users and demonstrates some of the most common aspects referencing to mini-howtos.


Using the GUI to edit the board

The usual board consists of traces (thin copper tracks), which are built of lines and arcs in pcb-rnd. If the board shape is not a simple rectangle, or it has cutouts, it needs an outline drawn.

There are also large regions of solid copper; some EDA tools may call them "pours" or "zones". In pcb-rnd these are drawn using polygons . A common application is drawing the "ground pour" .

Another atomic object is the text object, which provides multi-font, vector-graphics text on any layer (silk, copper, solder mask, etc.).

TODO: padstack

TODO: subcircuit

New objects are drawn using the current routing style (TODO).

Once objects are drawn, their properties can be changed using the property editor (e.g. from the right click context menu). Objects can be selected manually by clicking them one by one (with shift for selecting multiple objects) or using box selection (with or whout shift for multiple selection).

Grabbing the endpoint of a connected object, e.g. grabbing a junction where multiple lines or arcs meet, may select the "wrong" object. The object selection can be toggled using the cycle drag feature. Moving objects may break existing networks; the optional rubber band (TODO) feature attempts to keep networks connected.

It is possible to automatically place curves (arcs) instead of sharp 45 degree turns, setting a route radius


By default, copper lines, arcs, padstacks and texts will have a clearance to the sorrunding copper polygons. This is controlled on a per object basis (by flags and the clearance property) (TODO). It is possible to draw polygons that will have clearance to other polygons , which is useful for drawing high current tracks.

When a padtsack needs to connect to a polygon on a specific layer, a thermal relief is used. Such connection is controlled per padstack per layer.



The layer stack can also be edited on a cross-section view, using simple drag&drop operations.

Buffer, copy&paste


Using the grid


Drawing a board using sources

Most boards are drawn to match a predefined netlist, which is usually derived from a schmeatics (although it is possible to draw a board without netlist).

Importing a netlist is usually done by importing a schematics - which means importing the netlist and some footprint data at once. pcb-rnd does not include a schematics editor (as pcb-rnd is a PCB editor), but it supports loading from various schematics editors, e.g. from kicad's eeschema , gschem (TODO) TinyCAD LTSpice Mentor Graphics Design Capture

Sometimes the netlist has to be changed during the layout (e.g. swap pins or replace footprints). These changes must be carried back and applied to the schematics. Pcb-rnd offers a semi-automated back-annotation mechanism when used together with a schematic editor that also supports this feature.

Often the resulting board needs to follow a specific outline. For this you may want to import a hpgl plot (most mechanical CADs can plot to hpgl) or use a background image . It is also possible to convert SVG data to importable vectors, using inkscape

Routing, rats, short circuits

When a netlist is loaded, pcb-rnd is tracing what connections need to be made. Missing connections are drawn as straight rat lines (TODO) and the whole set of rat lines is called rats nest . The goal of the routing is to replace these "to be done" rat line connections with real copper connections.

If two networks are connected that is called a short circuit . Shorts are indicated by coloring the offending objects.

Footprint libraries

Components that will be soldered on the board need dedicated pads and drills on the board. This repetitive problem is solved by using footprints. In pcb-rnd the terminology goes like this: a footprint is a "land pattern" (e.g. 1206) that is stored in the library ; when the you place it on the board, it becomes a subcircuit (e.g. your 1206 sized resistor R2 and capacitor C4).

The file format of a footprint is any footprint/element/subcircuit format pcb-rnd can load. The native format is lihata subcircuit.

The simplest library is the file system library: you can configure different paths (TODO) and footprint files from those directories are loaded recursively. It is possible to use (locally cached) "cloud" libraries directly from the web. Sometimes you want to reuse footprints found in an existing board

There are two types of footprints: static and parametric . A static footprint is a hardwired geometry, a parametric footprint is a program that can generate the geometry using input parameters (e.g. number of pins for an IC).

Automatic routing, assisted routing

Automatic routing, or autorouting, is a process when the software draws the board automatically. This has two parts: placing and routing .

Placing means arranging the subcircuits on the board. The simpler implementation is disperse (TODO) that arranges subcircuits in a grid in random order. A more advanced implemnetation is the autoplace plugin (TODO), that places the subcircuits in a way that will make routing easier.

Once subcircuits are placed, the autorouter can be invoked to draw tracks replacing rat lines. There's a built in autorouter (TODO), but pcb-rnd exports and imports enough formats that external autorouters (e.g. freerouting.net or c-pcb ) can also be used.

checking the board - DRC


fabbing the board: exporting

The two most common fabrication methods are: "send the design to a fab house and get the boards via mail" and "etching at home, in your kitchen".

Most fab houses work from gerber files and drill files that adhere to the RS-274X format, which pcb-rnd can reliably export (TODO).

Home etching is usually done with either Toner Transfer (laser printer, hot iron) or photo lithography. Both are commonly done using pcb-rnd's ps or png exporters (TODO).