The DRC function doesn't actually *change* anything about the layout. Instead, it's a way to automatically check that your board doesn't require anything that the PCB fabricator can't do. For example, Advanced Circuits (4pcb.com)
lists the following design rules for its basic fabrication services:
I bolded the ones that are specifically applicable for the DRC. Translation:
• No two traces (or pads, or whatever) can be closer than .006". if they are, the manuf. can't guarantee that they'll actually be separated properly. Also, no trace can be less than .006" wide.
• No hole can be smaller than .015"
(as an aside: .001" is often called "1 mil", not to be confused with 1 millimeter. this is why you set the grid to 'mils' when you're doing layout -- but that's another topic.)
You put these types of parameters into the DRC, it will review your board, and tell you if the design violates these at any point. The DRC does this, in part, by looking at how the layers work (see below for info on that.) There's a bunch of other good stuff the DRC can check, too - but again, another time.
If it passes, you're more likely to end up with a working board. The next step is to generate the Gerber files for the CAM machines and send them off to the fab house. Advanced Circuits has an online DFM (design for manufacturing) check utility, which has a similar purpose to the DRC but looks at the CAM files directly -- but not all places have that kind of thing, and if you have DRC errors (or forget to check it) you're setting yourself up to have some non-functional boards delivered.
Some other points:
The practical downside to this is that the board takes longer to etch; as a result, the traces you do want are more likely to end up 'pitted' or otherwise imperfect, since the etchant has more time to eat away at (or under) the resist mask. This is more of a concern if you're etching it yourself, but still. There are other good reasons for this, more on that in a moment...
Also good points (as were the others I neglected to quote); seeing how this is a 'first PCB design' thread, here's some 'why':
* [Assuming you're doing a 2 layer board] having a 'fill' ground plane is a good idea because it ensures that any current has a good, short return path. If you run traces on the bottom, they'll have to cut into the plane; just make sure you don't have any long 'peninsulas' of ground plane.
* If you're just doing a single layer board, make the power/ground traces big to minimize resistive losses (good idea regardless) and increase current handling capability (remember, by kirchoff's current law, the power/ground traces carry as much current as the rest of the traces combined.)
* For components sensitive to fluctuations in supply voltage (read: IC's) you should always put decoupling caps (between V+ and Ground) as close as you can to the +V supply pins on the chip. If something big turns on and the supply voltage suddenly drops, without decoupling caps, the voltage ripple may result in logic errors or other erratic behavior from the chip.
* If you do have caps, during normal operation they will charge up to the supply voltage and stay there. So, if the supply voltage fluctuates suddenly, the stored charge flows out and helps keep the +V supply pin more stable. (kind of like the chip version of a power conditioner.)
* Having wide traces also helps out with this somewhat - charge can flow to/from where it's needed more easily.
misc other EAGLE things...
This might have been mentioned, but to get the big oddly-shaped fills, instead of running thick wires back and forth, use the polygon tool to create a shape. When you hit ratsnest, it'll get filled in. Use the 'name' tool, then click on the polygon (the edge thereof, not the fill) and set it to the same name as the trace you want it to be connected to. i.e. GND, or +5V. (The part name is how EAGLE determines what's part of the same electrical network, or 'net'. This is how the little yellow 'airwires' work. Play around with naming things the same and you'll see airwires pop up when you hit ratsnest... neat, eh?)
* 'route' is not the same as 'wire'. Route grabs an airwire and lays down a trace that's on the same net, whereas Wire just makes a new wire not pre-connected to a net.
* When routing airwires, you'll end up hitting Ratsnest really often. The actual primary function of that button can be described as "Draw Shortest Airwires". After you do a lot of routing/ripping up routes, you'll probably see what this means. (It also fills in polygons, cleans/redraws the screen, etc.)
oh boy, now that I have EAGLE open I'm remembering all sorts of useful tidbits...
* In my experience (yours may differ) the most useful grid setting is
* This is good if you're working with standard/"hand-assembly" parts like DIP IC's, which are almost always on a .100" grid. Surface mount stuff can get really wacky (and/or metric), which is a pain.
* Note that there are two grids defined: when placing/moving a part, hold the ALT key to 'snap' onto the Alt grid. With the settings above, it's exactly half of the main grid, but if you need to, you can change it to a different unit system entirely, which is how you must route to pads of a different grid spacing.
* Note the little + marks in the center of the part, called the origin. That's what actually grabs on to the grid when you're moving the part, not the pins, which is helpful to know.
* Something I found helpful is the command line (the white bar at the top of the interface.) you can do everything from that, but two commands stick out in my mind:
1. "display". usage: "display layernum" to show a layer, "display -layernum" to turn it off. "display all" works, and ranges work too. (see note on layers below.) sure, you can do it with the Layers button, but this is faster once you know the layer numbers.
2. "assign". usage: "assign" by itself brings up the keyboard shortcut binding menu, or you can do it directly, i.e. "assign c+r route" makes CTRL+R the route command. a good set of shortcuts is INVALUABLE, it'll make layout ten times faster.
this post will go on forever if I let myself... i'm not going to get into the CAM side of things (much... although doing it well is nearly as much work as doing the layout in the first place, and about as important) but here's a bit about...
* Layers! There are some 'standard' layers which mean certain things in generating the CAM files. For basic stuff you only need to know about a few, so here's some important ones:
(note: if a layer name begins with 't', it probably means top, and 'b' for bottom, and they come in pairs, so i'll just talk about them that way.)
• 1 through 16 are the top to bottom layers, respectively (but in a standard 2-layer board, you only use 1 = red = top and 16 = blue = bottom.)
• 17/pads and 18/vias are what they say they are.
• 19/unrouted is the airwires.
• 20/dimension is used to indicate the outside boundaries for the CAM.
• 23/25/27 are the origins/names/values for parts on the top. 24/26/28 are likewise for the bottom. 21 is a shortcut for the top ones, and 22 is a shortcut for the bottom ones.
• 29/30 = stop. this is the area where traces should not go, unless they connect to that pad.
• 31/32 = cream (only used when placing solder paste for SMT components)
• 39/40 = keepout. used with the autorouter to indicate large areas where the computer should not put traces. 41/42 (restrict) are something similar, but I don't remember exactly.
• 44/drills and 45/holes: what they say.
* There are some others, but nothing jumps out at me. Note that layers above 100 are not standardized - feel free to make your own (i.e. to indicate dimensions for an external attachment, etc.) Nothing on a layer above 100 will go into the CAM files. Conversely, don't change/delete/make new layers lower than 100.
* Oh, back on the topic of EAGLE usage: markiemrboo mentioned it above, but be sure to make friends with the 'Change' tool. It lets you modify pretty much any property of any item very easily. Select the tool, find the item from the drop-down, select the desired value, and then click on the part(s) you want to apply said value to. This is the best way to flip things between layers, change trace widths, etc.
All right, that's all I can type for now. Sorry if it's kind of jumbled... but I hope someone finds it useful! We should have a dedicated 'PCB design help' thread in here... I forgot how much I enjoy this stuff