We are all familiar with Arduino shields available in the market. These allow us to increase the functions and capabilities of Arduino boards. Without these it is difficult to connect the circuit to an Arduino board.
Generally, we use jumper wires for connecting an Arduino board to a circuit assembled on a breadboard. Management of cable connections and troubleshooting becomes very difficult while using jumper wires.
Most people find it difficult to design an Arduino shield using conventional or professional printed circuit board (PCB) designing software since these require typical measurements of Arduino for matching connector locations. Fig. 1 shows the interfacing of a circuit assembled on a breadboard to an Arduino Board.
We can easily make Arduino shields using Fritzing software. It is easy to use as compared to other software because here we do not have to provide any dimension details or alignment for proper placement of the connectors that are used to connect the shield with Arduino.
Fritzing is an open source software initiative that supports designers and artists who are ready to move from physical prototyping to the actual product. It was developed at University of Applied Sciences of Potsdam, Germany. The software allows designers, artists, researchers or hobbyists to document their Arduino based prototypes and create PCB layouts for manufacturing. The associated website helps users share and discuss drafts and experiences as well as reduce manufacturing costs.
Fritzing can be seen as an electronic design automation (EDA) tool for non-engineers. It has a code-view option, where one can modify code and upload it directly to an Arduino device.
There is a huge library in Fritzing to help us make shields for different Arduino and Raspberry Pi boards. We can get the artwork by simply making the schematic, which can be further adjusted in Arduino shield form. There are many routing options available in the software. In this article, we explain the making of an Arduino shield using Fritzing version 0.91 for Arduino UNO R3 for a single-sided PCB.