User Tools

Site Tools


PCB Design Tips


There are two common free (as in beer) software choices. All are Mac/Linux/Windows supporting.

As of 2013, Eagle is more widespread in use, there is a much stronger library support available but KiCAD is catching up.

On the other hand, Eagle's free version is quite limited. 2 layers, 10cm by 8cm, 1 schematic sheet only, and non-commercial. They don't seem much in the beginning, but it's highly likely that you will hit at least 1 of them eventually (I have hit all of them in the same project except non-commercial), and will either have to pay or switch. KiCAD has no arbitrary restrictions, and is almost equally capable. Eagle added differential routing and delay matching and BGA fanout in v6 (not sure if they are in the free version), and that's the only thing I noticed that KiCAD doesn't have.

Eagle Libraries

Lots of open hardware vendors use Eagle for their PCBs so there is an excellent range of libraries available. Some examples are

KiCAD Libraries

Eagle Example Designs

Eagle Tutorials

Get PCBs Made

There is an excellent tutorial at Dangerous Prototypes about exporting gerber and drill files to send to a manufacturer. It is wise to use a gerber viewer to check the files before sending them off (there are lots, use google to find one).


  • OSH Park in Portland, economic, local, reasonably quick, good quality
  • iTeadStudio/iMall in China, cheap, reasonably quick, good quality
  • (please add some in Canada)

VHS Member Notes

Tom's Tips

This is how I work in Eagle. I am not a perfectionist, everything is a time tradeoff, near enough is good enough for me. This is what I do in Eagle

  • Draw the schematic and make sure the ERC (Engineering Rules Check) is ok
  • Switch to the PCB view and use one of the Dangerous Prototypes PCB outlines (see Eagle libraries above) These have nice curved corner and a matching set of laser cutter templates for cover plates.
  • Lay out parts that have fixed locations (mostly connectors but also LEDs and switches too)
  • Save and rename so you can come back here easily
  • Lay out the rest of the parts rotating them to minimise the number of crossed connections
  • Save and rename
  • Lay out the power using thick traces (24mil if possible), leave the ground unconnected for later
  • Save and rename
  • Load the itead studio design rules file and increase the minimum track size to something like 12 or 14 mil
  • Use the autorouter to see if it can lay the board out, if not decrease the minimum track size and repeat until close
  • Save and rename
  • Hand work remaining tracks by ripping up, using ratnest to cleanup the unwired traces and then laying out manually
  • Run DRC again and ensure all is clean, fix any issues
  • Follow the steps in this Tutorial to add a ground plane to both sides

Richard's Tips

I generally follow a very similar process to Tom, with a few additions and differences:

  • Make use of Net names in the schematic. This allows you to have visually disconnected components that are electrically connected, and makes the schematic a lot cleaner and easier to rearrange as you work. Give yourself room, and make use of Group to move blocks around.
  • When doing a tight PCB layout, change the grid to a multiple of your desired trace/space. i.e. if I'm routing 0.2mm (8mil) tracks, I'll use a 0.4mm grid.
  • Generally I'll have the schematic in Inches (by convention schematic symbols are almost always on 0.1" grids) and the PCB in Millimeters (almost all SMT packages are metric). I'll change the PCB to Inches when it makes sense, but as Eagle will snap traces to pins, it's not normally required even when routing through-hole components.
  • Remember that PCB traces are wires, and wires have resistance - and thus a voltage drop that is a function of their length and the current being drawn. This becomes important at higher currents (motors, high-power LEDs, displays, etc), where a component on the 'far' side of a PCB may see a noticeably lower voltage than expected. Thicker traces will have a lower resistance; use a calculator like this if you want to be sure you're not going to run into issues:
tutorials/pcb_design_tips.txt · Last modified: 2015/12/12 14:31 by

Except where otherwise noted, content on this wiki is licensed under the following license: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki