Rocky Masthead Image

The Black Art of PCB Making

OK, you've breadboarded your heart out, and you're pretty sure about the circuit. But you know if you stick your breadboard on your robot, it's not going to survive the first tumble down the stairs. So what do you do?

Easy - make yourself a PCB! Or, if you haven't a clue, but you do have a working breadboard/prototype/schematic, I can design a PCB for you! See here for more details on this offer!

What's out there?

I'd have to say that finding and using a PCB creator package is a lot easier these days than way back when! I started my PCB designs using a system called "Bishop's Graphics". This consisted of rolls of sticky black tape, sheets of press-on IC and component pads, and mylar film. You placed the PCB patterns on the mylar by hand, then used the black tape to make the 'connections' between the various pads. Everything had to be stuck down by hand, and everything had to be opaque, and nothing was cut to length. Boy we used to go through razor blades!

When the circuit was ready, you'd place the 1:1 circuit layout (you could get 2:1 and 5:1 and 10:1 if you had access to a photography studio) on top of a pre-sensitised blank PCB, then shine ultraviolet light, then develop, then stop, then strip the resist, then etch, then strip the coating, then... You get the idea. It was fun, but horribly time-consuming. And you wouldn't believe how many times you could add some components to a circuit, only to find that you had the mylar upside-down...

So things are much simpler and much, much more streamlined these days!

I've heard it's really complicated and technical!

It's not that complicated, but it is pretty technical, mainly because you need to be precise with your measurements and layout and so on.

Basically, most PCB design packages consist of 2 or more parts. (Some applications break everything down into modules, which can be confusing as hell, so I'm ignoring those for now.) These are the Schematic Editor, and the PCB editor.

The schematic editor is where you place your components in the schematic. You basically drag and drop components from a library of components. Each component has a graphical part - which is what it looks like when you're working with it in schematic view - and a "footprint", which is what gets put on the PCB when you're finished.

Your graphical part shows all the logical connections - power, ground, signals, address bus, and so on, depending on the part. A NAND gate looks just like a normal NAND gate, an inverter looks like an inverter, and so on. Then you use a wiring tool to join the appropriate pins together, and when you're finished, you save that as either a schematic file or as a 'netlist'. A netlist is just a text listing of all the pins, where they're located, and what they connect to.

Then your PCB editor is used to import the netlist, which tells it what footprints (component packages) it wants to use, and sets up the virtual connections between the actual hardware pins and pads. You get to move all the bits around until you've got the layout you want, and then you get to join all the pads up according to the netlist. As all this happens graphically, it's a lot simpler to do than it is to describe, trust me!

There are some differences between different packages. Some will automatically import the netlist for you, some require you to start a separate program and import the netlist manually. Some will do what's called 'autorouting', where the PC runs a terrifically sophisticated and complex algorithm repeatedly until all the pads are connected together, some will provide some assistance in the form of highlighting where you can place the track, and others won't do diddly squat.

I've heard about automatic routing. Is that worth it?

The packages that provide autorouting are horrifically expensive, costing many thousands of dollars, because of the complex routines used to figure stuff out. But they're basically "set and forget" - you start off by placing the components where you want them, then you click 'autoroute', and minutes, hours, or days later, you have a connected PCB. But remember, even the very best autorouters make some basic mistakes, and you'll still need to spend a few hours or days cleaning up the loops, loose ends, and short circuits yourself.

Gerber files and etching

Finally, the PCB application creates a bunch of "Gerber" files. These are universally understood formatted files that tell the CNC machine at the PCB fabrication plant where to etch and where to drill, and so on and so forth.

You can also just print the 1:1 PCB diagram out on Press'N'Peel film, printed in a laser printer, and you iron that on to your blank circuit board and etch it yourself. This generally only works for single-sided designs, where the components are all on one side of the board, and the tracks are all on the other. Double-sided PCBs are fiendishly difficult to etch manually, and shouldn't be attempted if you wish to stay sane. Trust me on this - it can take a day or more to get a good double-sided board etched properly - and it will definitely cost you far more than taking it to a manufacturer to make it for you!

There are probably 4 or 5 really good PCB design packages out there. The best is Protel, it's now called Altium 6 Designer. It would want to be good too - it's over eight thousand dollars!

So the best free PCB packages out there are probably Eagle Designer, which has limited functionality unless you buy the professional version, and KiCad, which is a linux-only package developed by a European engineering student. Both packages can definitely be used to create really good, solid designs that can be manufactured by just about anyone. You will have to put up with a lot of problems with library components being wrong, upside down, or  missing, having to learn how to create Gerber files, and so on, but with a couple of weeks' practice, you should find that you get used to how they work, and they both have pretty good forums for assistance.

A very special offer!

I've been there and done that with PCB designing. So I now have a fully working system, where I can take anyone's design and create a PCB fileset ready to be sent to any PCB manufacturer, in about a day.

So, if you have a circuit design that you're sure will work, you can send it to me, and I will be making this process available to you for $65 per design. That is, you send me your technical drawing, circuit diagram, etc; and I'll either send you back a bunch of files you can then use to make your own PCBs, or I'll send you back finished PCBs, silkscreened and soldermasked, ready for you to start soldering. This option will cost whatever it costs me to get the boards made, in addition to the $65, but that price covers everything. Let me know if this is useful!

Hopefully, this will help you get kick-started with your own designs! And trust me, there's nothing quite like getting your very own circuit board back, ready to start making!

If you're interested, please drop me a line at PCBs[at]audiography.com.au, and I'll get in touch with you and we can take it from there.

If there's enough interest in this, I'll specify a few more things, like the package footprints I use, board sizes, rule-of-thumb board costs, and so on, so there's no possible misunderstandings.