Arduino Shield Scaffold
For reasons that are not generally understood, the original designers of the Arduino PCB spaced the top two headers 160 mil apart, instead of 100 mil or 200 mil. If the headers had been on 100 mil centers, a standard prototyping board would easily fit on the headers, making it simple to create prototyped Arduino shields. The 160 mil spacing essentially requires that a PCB is designed as part of the prototyping process. Several members of the Arduino community have created special prototyping boards that adapt to the 160 mil spacing. Others have created their own Arduino boards that fix the 160 mil problem while maintaining compatibility with existing shields.
However, if you plan to create your own shield PCB, it's still not very easy to get started. You'll either need to measure the Arduino very accurately, or base your board on an existing layout. Usually this means grabbing PCB and schematic files for an unrelated project, and deleting everything you don't want. This can be messy and take too much time, and you can end up with non-standard layer names and colors, or accidentally delete parts, or fail to delete parts on hidden layers.
To make it easier on myself, I created a very basic Arduino shield scaffold; the schematic has only the standard Arduino headers, and the PCB has the correct header spacing and labels. The PCB headers are locked so they can't be accidentally moved. Also, the PCB has a dashed line showing the edge of the parts on the Diecimila board that extend higher than the female headers; if your PCB is kept behind this line, it won't short on the USB connector when using standard length header pins.
Download the Eagle CAD project here: ArduinoShieldScaffold.zip
Submitted by Garrett on Wed, 12/03/2008 - 02:29.