Pre-PCB checklist: DRC & airwires!

PCBs are custom, expensive and non-returnable. That means you have to get it as close to perfect the first time or risk losing $!

One thing some people may not realize is that the EAGLECad DRC (Design Rule Check) will make sure your pads arent touching, traces aren’t crossing, drills are large enough, etc. but DRC doesn’t check for airwires!

For example, in this PCB layout, we have a DRC with no errors


But if you check the number of remaining airwires (click on the airwire tool and look at the bottom of the window) you’ll see that there are 2 of them.


When you’re done it will say “Nothing to do!” (which is a great feeling)


Remember: moving parts, changing the DRC, etc. can create little airwires. Be especially aware of shifting ground planes (which can be done by editing the DRC) that can create hairline airwires!

Join 7,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

CircuitPython in 2018 – Python on Microcontrollers is here!

Have an amazing project to share? Join the SHOW-AND-TELL every Wednesday night at 7:30pm ET on Google+ Hangouts.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behinds the scenes and more https://www.instagram.com/adafruit/

Maker Business — The many, many manufacturing processes listed on Wikipedia

Wearables — A bevel illusion

Electronics — Donโ€™t float!

Biohacking — Optimizing the Warm Up

Python for Microcontrollers — CircuitPython 3.0.0 released!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !


  1. Great tip … no more pouring over my boards at 3000x magnification looking for stray yellow lines! ๐Ÿ™‚ Can’t believe I never noticed it before but it’ll definately remove some of the anxiety of sending more complex designs out for manufacturing (especially with a lot of side-by-side 0603s, etc.). It’s not so much the money (though that stinks) as it is the lost days or weeks while the design makes another round trip to Ireland or China. Beers on me if you’re ever in France! ๐Ÿ™‚

  2. Kevin – it still doesn’t tell you where the damn airwires are. (The best way I’ve found is to turn off all the other layers and zoom in / out until you find the bugger)

    Not to mention that Eagle allows you to make a schematic where two parts are touching but aren’t connected (must run that damn ERC over and over and over). These days whenever I see a photo of a board with a little wire added to connect two points (eg http://leaflabs.com/img/wiki_up/DSC_0456.jpg ) I think “Ahh, another Eagle special”.

  3. Getting rid of the little airwires is a major chore in Eagle, especially when they occur on inner layers (for 4-8 layer boards) due to moved vias, etc. On the flipside, its a great inventive to clean off your monitor, so that speck doesn’t look like a 1 pixel airwire ๐Ÿ™‚

  4. In a prev version of eagle, the routing tool would ‘snap’ to the nearest airwire. I will admit to selecting the routing tool and then just clicking around to try and snap to one of the micro-airwires

    man, that sucks when its described that way ๐Ÿ˜€

  5. While we are talking eagle: I find “set pad on” to be very useful. You can also do this under Options->Set->’Display pad names’. And the big cursor makes a world of difference in layout. That one is under Options->’User Interface’ and then there are two Cursor radio button sets: small and large for schematic and layout. Big cursor got real slow though in the Qt change so I don’t know if they’ve fixed that yet or not.

  6. There’s a zoom-unrouted.ulp that zooms max to unrouted wires (is that the same as airwires?). I always run it before sending a board to be fabbed.

  7. When you have a micro air wire use the route tool and zoom out has far as you can. Then click on the board and the cursor will snap to it.

Sorry, the comment form is closed at this time.