Circuit design is the first step for building the electronics. There are a number of free or low cost schematic and layout tools available.
- Eagle– Eagle CAD is very common (you can directly upload Eagle board files to OSHpark), low cost and relatively easy to use. Tutorials are available here, here, and here.
- KiCAD – An open source free tool that is also popular.
- Fritzing – Fritzing is another open source tool.
If you’ve created a breadboard version of an Arduino compatible board then you have a good idea what the circuit schematic should look like. If not, begin by looking at some open source examples of microcontroller boards. All of the Arduino boards are open source and have a schematic available. Also, examine the datasheet for the Atmel processor and other components going on the board. The integrated circuit vendors often have helpful information in the data sheets and application notes. Component selection must also be considered during the design process. Don’t be afraid to use SMT devices – they can easily be soldered to the board by a number of DIY methods (fine pitch BGAs are a bit scarier though). Ideally, when the schematic is complete, you will have all the components correctly selected. This means you have identified the type of package each component has as well as a vendor for every part (Octopart can really help here). For the example project, we’re making a board with an Atmega328p and a MMA8652 3 axis accelerometer on board as can be seen in the schematic. This PCB also has a built in charger for a LiPo battery and a six pin connection for programming via an AVR type connection.