Intro: Make Hobbyist PCBs With Professional CAD Tools by Modifying "Design Rules"
It's nice that there are some professional circuit board tools available to the hobbyists. Here are some tips for using them ito design boards that don't need a professional fabricator to actually MAKE them...
Step 1: Introduction, Part 1 - My Gripe
There are numerous tutorials on the net about making your own printed circuit boards (PCBs.) Toner transfer, photo-sensitized PCBs, sharpies; all sorts of information...
Likewise, there are are a number of Computer Aided Design packages (CAD) designed to help create PCB designs, possibly with accompanying schematics. Some of these have low-cost versions aimed at students and hobbyists.
But I see on various web pages PCBs created with these CAD packages, by hobbyists, that are not "friendly" to actually being fabricated by hobbyists using the methods described on the PCB pages. A lovely published PCB is not nearly so useful if it requires the $50+ typical minimum price from a professional board maker.
I don't have any doubt that with the right equipment, and supplies, and some practice, you can get good enough at home PCB fabrication techniques (take your pick) to produce high quality board of significant complexity, with fine traces, small holes, and so on. But a lot of PCBs don't really need that complexity, and it would be nice if they were DESIGNED in such a way that you didn't NEED a lot of experience in PCB making to get a working PCB.
This document contains some hints on configuring a CAD package to create boards that are easier to manufacture in a hobbyist environment. It's based around Cadsoft's Eagle CAD package, but the principles are relatively general and should be applicable to other CAD packages as well.
Step 2: Intro, Part 2 - Cadsoft EAGLE
Cadsoft EAGLE: http://www.cadsoftusa.com/
Cadsoft is a German company that is a veritable mecca of software distribution enlightenment. In addition to the reasonably-priced professional PCB design packages ($1200), they have freeware, lite, non-profit, and other intermediate licenses. Their software runs under windows, linux, and MacOSX. It's slightly quirky, with a steep (but not too high) learning curve on the front end, but from most reports it is not any more so than other professional CAD packages. They have online support forums that are active from both the company and other users, the package is under current development and gets better with each release. A number of PCB fabricators will accept their CAD files directly. It's good stuff.
Use it. Propagate it. Buy it when you "go pro."
This document is not a tutorial on how to use EAGLE, although it'll probably be somewhat useful in that role. It's more about how to configure and customize an Eagle installation to better suit the hobbyist.
Create PCB from schematic
Creating Library parts
Design rule modification
Send CAD Files to manufacturers
Step 3: Our Sample Circuit: Blink Some LEDs.
As an example, I'm going to use a simple and rather standard two-transistor, two-led "blinky" circuit. It looks like this.
(If you decide to actually build this, the transistors can be any general purpose silicon NPN types like
2n4401, 2n2222, 2n3904.) The ON time for each LED is about R*C (one second for the values here.)
The battery can be 3V up to ... whatever, although you may need to adjust the current limiting resistors
for higher voltages.) The caps should have a voltage rating a bit higher than the power source you intend
to use. For a 9V battery, I used 16V caps. Resistors are 1/4 watt. )
Step 4: Placing the Parts
It looks pretty simple, so we'll throw the components onto a board just about the way they look on the schematic:
Step 5: Autorouted Using the Defaults, and What's Wrong With It...
Then we fiddle with the autorouter a bit, being careful to set the top later direction to "N.A." to get a one-sided board (but using all the other default settings.) We gets something that looks like this.
That actually looks pretty nice. So what's the problem? The problem is that if you try to make that board in your kitchen, you'll probably be in for a lot of frustration. There are two main issues:
1) Trace width. The default trace width is 10mil (a mil is 1/1000 of an inch) or about 0.2mm That's fine for most professional PCB fabricators; most can routinely and reliably make boards down to 6mils. But it's VERY fine to accomplish using something like toner transfer (recall that a fine-lead mechanical pencil is 0.5mm - nearly 3 times bigger!)
There's a similar problem with the amount of pad left around the holes; while it's fine for a fancy CNC-drilling machine, if you try to drill the holes with typical home equipment you'll probably end up removing the whole pad.
2) Clearance. This is the space left between tracks (or between tracks and pads.) Like the trace width, it defaults to a small number: 8 mils. that's just not a realistic value for a hobbyist...
Step 6: Let's Fix the DESIGN RULES
Collectively, these parameters (and many others) are called the "Design rules" for the board. Fortunately, they are designed to be changeable to meet the requirements for different PCB fabricators, and they can be changed to better match the needs of the hobbyist as well. You can get to the design rule check and options with the DRC command or button. It looks like this.
The DRC panel is usually used to do a design rule CHECK. After a board is laid out (usually with significant hand routing) you'd click the "CHECK" button and Eagle would go and make sure that what you've done conforms to the design rules you've specified. However, the autorouter also pays attention to the design rules you've set; it wouldn't be a very useful feature if the autorouter created boards that were "illegal."
As you can see, there are LOTS of parameters you can change. We're only interested in a few of them. (the individual parameters usually are illustrated with a nice picture showing the object you're actually changing.
A nice help feature...)
Step 7: Modifying the CLEARANCE Rules
In the CLEARANCE panel, we can control the desired clearance between several different sorts of objects. The default clearance is 8mils for everything...
At some point you need to decide what you want the values to be. This is just an example, so I get to pick. I like 0.8mm, which is very close to 1/32 inch. So we can set a bunch of the clearance values to 0.8mm:
The "same signal" clearances can stay at small numbers; we don't care a lot about that. The PAD to PAD clearance has to be a significantly smaller 0.5mm; more about that later...
Step 8: Modifying the SIZES Rules
The SIZES panel has the next set of parameters to change.
We don't have to worry about micro or blind vias, cause they're not appropriate to hobbyists in the first place, and not supported by the freeware Eagle in the second place. We can set the minimum width and minimum drill to
(again) 0.8mm (incidentally, .8mm is about a number 68 drill.)
Step 9: Changing Pad Sizes With the RESTRING Rules
The RESTRING panel controls the size of pads. It'd be nice if we could make the ring be 0.8mm thick too, but by the time you have .8mm of hole and .8mm of ring on each side, you have 2.4mm diameter pads. Since many parts have the pads on 0.1inch (2.54mm) centers, that doesn't leave enough space BETWEEN
pads. So I'll use 0.6mm here, and I'll still have to use the smaller clearance values between pads that I mentioned above. I'll still have problems with PADs that are much bigger than .8mm (it takes about a 1mm hole
to hold a .025inch square post as found on many connectors.) You can trade off pad-pad clearance against pad diameters forced by the restring settings, depending on where you have more problems with whatever PCB technique you're using. One advantage of a large pad is it makes you less sensitive to the drill you actually use; even if the library is set up for a .6mm drill and you use a .8mm drill, you should have enough copper left so that you won't have a big problem. You don't need to set inner layer or micro-via values:
Step 10: Optional: Adjust Pad SHAPES
In the SHAPES panel, I like to force the pad shape to ROUND, since I've already made the pads very large in the RESTRING panel. The oval pads get VERY large when you use big restring values... This is optional, though:
Step 11: Save Your Chosen Rules, and Autoroute Again
Having changed all those parameters, we should APPLY them, and then we can go back to the FILE panel and save them somewhere appropriate:
When creating future boards, you can use the FILE panel of the DRC window to read in the hobbyist-friendly parameters instead of having to retype them all. (Or just get the honny.dru file from the top page.) You can even suck them in you your init file.
Getting back to the circuit, if I run the autorouter NOW, I get a much more reasonable looking result...
Step 12: But Why Stop There?
We could stop there, but we don't have to. The autorouter operates on a grid (defaults to 50mils), so what it's done is put tracks along the grid in places that don't violate the design rules. That probably means that there's significantly MORE room for even wider tracks or clearances. If we GROUP the entire board, we can "change width 1.0mm" or equiv, and use the DRC "check" option to see if we STILL pass our specs. Or we could have
another DRC file with different parameters. In fact, this board can have it's trace width increased to 1.4mm without violating our clearance rules:
Step 13: Finalizing the PCB Design
At this point, there are some traces that are reasonably close together, and it might make sense to manually move them apart a bit more, and clean up some of the stranger things that the autorouter has done. And I can decide that I want this to be one of those edge-of-stage warning lights that stands on its own by virtue of the 9V battery, which means I should reposition some of the components a bit. I can move around the silkscreen so that I can use toner transfer for that too. I end up with this:
Step 14: But Did It WORK?
Let's see. I can be intentionally sloppy here, so as to better emulate someone without much experience, right? (Sure. That's a good excuse. I normally run off my boards on an LPKF PCB "plotter", so I genuinely suck at doing this the hard way.)
Scrap of board, magazine paper/toner transfer; looks not so wonderful at this point. Touch up with a sharpie.. etch, drill, clean... More toner transfer for the "silkscreen", add components and power it on...
Step 15: Summary
This is just an example, based on some personal opinions. The key thought is
that the wider your traces, and the more space between them, the easier your
board will be to fabricate by hobbyists. And most PCB packages have settings
that can be modified so that they'll do most of the work for you...