Category Archives
Search the blogs:

Printed Circuit Board (PCB) layout software

There are a number of software packages for laying out printed circuit boards for fabrication, and deciding where to start is difficult. What follows is a brief introduction.

What you're doing is drawing connections between the appropriate parts of your ICs, resistors, capacitors, voltage regulators, and so forth, all on a flat board. You have to make sure that no lines cross each other if they're not meant to be connected electrically. You generally have at least two layers, top and bottom, so you can make a hole that's copper-lined (called a via) to connect lines on top and bottom, to jump one signal over another. The layout process is a topological puzzle, and it's all about coming up with the simplest layout of components to make your board.

In order to do this, you need the exact dimensions of every component you're using, so you can draw its footprint in a CAD program to lay out the board. Most layout programs have libraries of common components, but if your component isn't available, you can always look up its datasheet and find the physical dimensions and recommended board layout. When you have to make a new component yourself, save it in a file by itself for later use! It'll save you time later. In most programs, this is called making a library of parts.

You can make your own PCBs at home, if you have copper clad boards (which you can get from Radio Shack or most electronic suppliers) and acid etchant solution, and a lot of patience. Kentaro Okuda has a nice tutorial online. Basically what happens is that you print your pattern on a sheet of acetate, mask the board where you want copper to remain, and etch the rest off. Then you drill holes where needed.

The easier (though more expensive) way to do this is to design the board using CAD software, and get a board fabrication house to make it. There's a standard image file format called Gerber files that includes information about the copper layers on top and bottom, the silkscreen for the lettering, the drill locations and sizes, and so forth. Many software packages will do the work for you, and let you just lay out the board.

The easiest place to start is probably with a company like ExpressPCB. I like them because their software is very simple for the beginner, and their introductory offer (three boards for $59) is a pretty good deal in PCB-land. You have to use their software (a free download, compatible with Windows only), and it's a bit limited, but it does the job. First you lay out the schematic in ExpressSCH. This generates a net of connections between components, which you then open in ExpressPCB and arrange. They have a library of parts from Digikey, which is useful. ExpressPCB and their competitor, PCBExpress, don't generate industry-standard files, though, so if you design your boards using their software, you're stuck using only them to make your boards. Their chepest boards come without a solder mask, which is a layer of protective coating over the connections to keep you from inavertently soldering them. They also come without silkscreen labels, which is inconvenient. But they are simple to learn on, and you get a decent basic board.

Lately I've been using Eagle CAD from Cadsoft. Daniel Hirschmann gave me a quick intro tutorial, and I was off and running. Jamie Allen found a nice online reference site too, though Eagle's docs are pretty good, in my opinion. Eagle generates standard Gerber files that you can take to any fabrication company to make your files. It's got versions for PC, Mac, and Linux. And it's got a good free version. Well worth the money too, if you decide to upgrade to the paid version. As with other programs, in Eagle you start by designing a schematic, using standard components from their libraries where you can, and designing your own device libraries where you need to. Then you generate a net of connections for the board, then you lay the board out in the board editor. There is an auto-route tool that will attempt to make the connections for you, but I don't recommend it; it makes messy spaghetti of your board. Once you're done,you run an error check which checks that you made all the connections in your schematic, and didn't cross any wires, and a Design Rule Check (DRC), which checks to see that you've left enough clearance between lines (called traces), vias (or pads), and so forth. From there, you send it to any fab house for fabrication, pay them, and they send you a board.

I've been using Advanced Circuits, at the recommendation of Daniel and Gary Schober, to fabricate my boards. They have a decent special for $33 a board that's a nice deal. They also have a good design rule check online, freeDFM.com, which checks your board on their machines before you buy to see if there are any mistakes. And they are very friendly people.

There's a book from O'Reilly, Designing Embedded Hardware, by John Catsoulis, that has some more notes on PCB design that can be useful as well. Al Williams' book Build Your OWn Printed Circuit Board is a good explanation too, and includes notes on Eagle.

James Tu sent this paper on photoplotting techniques for PCBs. Not a bad read if you want all the technical details.

Posted by tigoe at November 14, 2004 09:16 AM