How To Build Arduino Protoshield
How To Build Arduino Protoshield
This document was written to help you build and test your Arduino Proto-Shield and hopefully learn
how to solder.
Table of Contents
Set-up
Arduino
Software Development Toolchains
Arduino IDE
Soldering Tools and Supplies
Required Tools and Soldering Supplies
Recommended Tools and Soldering Supplies
Where to buy
Learn to Solder
Soldering Tips and Tricks
Step-by-Step Assembly Instructions
Testing
Trouble-Shooting Tips and Tricks
Appendix
A. Arduino Proto-Shield Parts List
B. Arduino Proto-Shield Schematic
C. Arduino Proto-Shield PCB Layout
Set-up
Arduino
If you have not done so already purchase an Arduino Duemilnove with an Atmel ATmega328
microcontroller. The Arduino Duemilnove also comes with an ATmega168. I would only
recommend this version of the Duemilnove if you can get a really good deal. The Duemilnove with
the ATmega328 typically costs $30.00 - some places a few dollars less, other a few dollars more.
An alternative to the Arduino Duemilnove is the Arduino Mega with an ATmega1280
microcontroller. This version of the Arduino typically costs $65.00. The Arduino Proto-Shield has
been designed to work with the Duemilnove and Mega boards. Most of the step-by-step
instructions assume an Arduino Duemilnove with the Atmel ATmega328 microcontroller.
1|Hill
If you do not already own a USB cable make sure your Arduino comes with one or purchase
separately.
USB cable
Although it is not required, you may wish to purchase a 9v DC power adapter. If you plan on using
your adapter in the lab you will also need to purchase short extension cord.
9v DC power adapter
2|Hill
Arduino IDE
Additional Watching and Reading:
How-to Tuesday Video: Arduino 101 blink an LED
Download the Arduino development environment at www.arduino.cc/en/Main/Software
Unzip the arduino-0015 folder and follow the instructions provided in the readme text file. This file
will ultimately point you to How To Get Arduino Running on Windows and the Blink example. Here
is a summary of the steps you will follow.
Download Arduino from site
Install included drivers
Restart machine
Put LED into 13 & GND on Arduino
Plug Arduino into USB
Start Arduino IDE
Select Tools > Serial Port > Your Port
Compile
Upload to IO Board
If you are running Windows 7 read driver installation instructions, which are summarized here.
3|Hill
Plug in your board and wait for Windows to begin it's driver installation process. After a
few moments, the process will fail, despite its best efforts
Click on the Start Menu, and open up the Control Panel.
While in the Control Panel, navigate to System and Security. Next, click on System. Once
the System window is up, open the Device Manager.
Look under Ports (COM & LPT). You should see an open port named "Arduino UNO
(COMxx)"
Right click on the "Arduino UNO (COmxx)" port and choose the "Update Driver Software"
option.
Next, choose the "Browse my computer for Driver software" option.
Finally, navigate to and select the Uno's driver directory (not the "FTDI USB Drivers" subdirectory).
Windows will finish up the driver installation from there.
Safety goggles
Simple pliers
Digital Multimeter
4|Hill
Solder wick
Isopropyl Alcohol
Exato knife
Solder sucker
5|Hill
Where to buy
There are any number of companies on the web and in the Southern California area to purchase
your electronic supplies. A nice one stop place to purchase the Arduion and tools is
www.adafruit.com
Learn to Solder
There are numerous soldering tutorials on the web. Using your favorite search engine look for
good soldering turotials and/or tips and tricks. Let me know if you find any you really liked.
Student Provided Link(s)
6|Hill
How to Solder
Here is a handy tool for through-hole components that acts as a wire cutter and a crimper--it
cuts the lead just past the mounting hole but then flattens out a portion of the end of the wire
so that the component doesn't fall back through the hole.
Check the contents of your proto-shield kit against the part list in Appendix A.
2.
3.
Find on the PCB and/or Appendic C, labels R1, R2, R3, and R4.
Using the color codes shown in the following photos install/solder the resistors. If you are not
sure use your volt-ohm meter.
10 K Resistors R1 and R2
If your are building the MEGA version install 680 Resistor R3 (not shown)
7|Hill
4.
5.
Locate on the PCB labels LED8 to LED1 (Red) and INDLED (Green).
Starting with LED8 to LED1 (Red). Looking at the board you will see a line wider than the
others running between the DIP switches and the LEDs on the bottom of the Printed Circuit
Board (PCB) - this is the ground line. Also locate and add the INDLED, TEST0 and TEST1
8|Hill
6.
Green LEDs. The cathode (short pin) of each diode goes to ground. The ground line is the
wire on the top of the PCB connecting the pins on the right.
Install two (2) Push-buttons.
The buttons should be inserted so the bottom of the button is flush with the PCB.
7.
Locate and place on the board (do not solder them in place yet) two (2) 1 Kohm Resistor DIP
packages. Look for 1-102 printed on the IC.
Locate and place on the board (again do not solder them in place yet) one (1) 14-pin and
two (2) 16-pin IC sockets.
Be sure to verify orientation (identifiable by a half circle or notch ) before you solder.
IMPORTANT The metal USB connector on the Arduino 2009 may potentially short 595 IC
Socket pins 6, 7, 8, 9, 10, 11 and resistor pins 6, 7, 8 if extra lead length is not removed. If
you have placed these parts on the board, and not yet soldered them in place as requested,
place the protot-shield over your Arduino so you can approximately see where the short
may occur. The USB port is at the right in the photo below.
9|Hill
If you you are happy with your soldering abilities, solder the pins in place and trim to fit using
diagonal cutters. If your solder joints tend to be on the blobbing side, you may want to back
off the interfering parts from the board before soldering. Another option is to pre-trim the
parts before soldering using your diagonal cutters.
Once you understand the potential problem and have decided on a solution solder the parts
in place. Do not install 2 74HC595 and 74ALS74 ICs.
8.
Verify orientation before soldering. If you are constructing the Mega shield option skip this
step for now.
Plug in 2 DIP switches.
10 | H i l l
You are most likely building the Arduino Duemilnove with an Atmel ATmega328
microcontroller version of the proto-shield. If you are then you may skip this step. If you are
using the Arduino Mega with an ATmega1280 microcontroller then break the shorting traces
on the PCB using an Xacto knife. The shorting traces are very thin and are therefore very
hard to see. I would recommend using a magnifying glass to locate them.
Next, ask me for the four 3-pin jumper headers you will need to install (they are not included
with the basic kit). The shorting wire is between two of the pins on the PCB. To make it easier
to break it is very thin and consequently, hard to see. I would recommend using a multi-meter
and magnifying glass to identify these small shorting wires.
Verify using a multi-meter that you having broken the shorting traces before soldering the
jumper.
10.
Unlike the other capacitors, this is a polarized device! Be sure minus lead is wired to ground.
The minus lead is easily identified as the shorted of the two leads. It is also identified by a
white stripe with minus sign on the capacitor. The positive side is labeled on the PCB. See
top view photo below if you are not sure.
11 | H i l l
Once you are sure you have the polarized capacitor oriented correctly, solder in place.
PLEASE READ AND FOLLOW THE INSTRUCTIONS IN THE NEXT STEP. YOU HAVE BEEN
WARNED!
11.
Ask if you are not sure, before you solder anything. If I have not done so already, break off
two (2) 6-pin and two (2) 8-pin headers. Insert these four (4) headers and 2x3 ICSP socket
into your Arduino Duemilanove board. If your Arduino Duemilanove has not yet arrived then
do not do this step until it does!
Unlike the other components, the headers and ICSP socket are mounted on the bottom of the
board. Now align and plug in your Arduino Proto-Shield. Dont worry if they do not completely
connect. There may be a 1/16 inch gap depending on the header that was included in your
kit. Verify the USB adapter does not short out any pins on your board (see Step 7). Once
everything is fit checked, apply a light solder tack to the two or more pins at the ends of each
header and the ICSP socket. Do not remove the proto-shield from the Arduino until they are
fixed in place by these tack welds - this will insure a perfect fit with your board. Unplug the
Proto-shield from the Arduino and solder the remaining pins - then if needed solder the tack
pins.
12 | H i l l
If you are constructing the Mega shield option do Step 8 "7-segment display" now.
12.
13.
Using your volt-ohm meter verify that power and ground are not shorted. The 100 nF
capacitor provides a quick way of locating and measuring the resistance between power and
ground.
Once you have verified that your board is not one big short, plug in the 14-pin 74ALS74
When ICs come from the factory, the legs are angled out somewhat which makes it difficult to
insert them into the PCB. Prepare them for insertion by gently bending the legs against a flat
tabletop so that they are perfectly straight.
13.
13 | H i l l
You are now ready to test your board and if you are really lucky or good, it will work right out
of the box (electrical engineers are optimists).
Testing
In the Arduino IDE Section at the beginning of this document you verified the operation of your
Arduino Duemilanove. If you did not, then verify that your Arduino works at this time.
Download from the class website the sketch_shiftOut_16-bit. Using the same steps you followed
above, verify the basic operation of your Arduino Duemilanove Proto-shield by uploading and
running sketch_shiftOut_16-bit. This program tests the operation of the 7-segment display and
discrete LEDs, plus it is cool to look at. The movie_shiftOut16-bit.mov is a short video showing the
output of the program. You can find it in the class Reference folder. Again, do not plug in your
proto-shield until you know your Arduino works. After verifying that your proto-shield works you can
close the Arduino IDE. You will no longer need it.
Open Lab 3 and review the Instructions on uploading programs constructed in AVR Studio. Upload
and run LAB01.hex from Lab 1. This will allow you to test the two green TEST LEDs by toggling
switches 1 and 2. Next, Upload and run LAB02.hex from Lab 2. This program will let you verify the
operation of all the toggle switches.
14 | H i l l
This is a student driven section. As you troubleshoot your boards tell me the symptoms
and solutions and I will add them to this section.
If you are running Windows 7 you will need to download the Virtual COM Port Drivers from Future
Technology Devices, used by the Arduino software to upload sketches to your board.
The Lab2 program is used to test the switches, discrete LEDs, and 7-segment display. Two
students when running this test discovered that an LED and its corresponding 7-segment display
segment were always ON. The first thought is that the switch is broken (always open). In these two
cases that was not the problem. Instead a pin connecting the suspect switch to the Arduino 2009
board was not soldered properly (always open). Use the following snap-shot of the proto-shield
schematic to map the faulty switch to the pin you need to re-solder.
Appendix
A.
2
MM74HC595N
Shift register w/ latch, 16-DIP
3
LDS-C512RI
Green 7-seg. LED display, CC, 0.56",
10-DIP
1
DM74ALS74AN
D-type FF, 14-DIP (Mouser)
2
76STC04T
SPDT 4-position DIP toggle switch
1
A14-LC-TT-R
IC socket, straight, 14-DIP, tin
(Mouser)
2
A16-LC-TT-R
IC socket, straight, 16-DIP, tin
2
4116R-1-102LF
Resistor network, 16-DIP, isolated,
1k, 250 mW
2
CFR-25JB-10K
Resistor, carbon film, 10k, 250 mW, 5%
2
custom
Header, male, 1x8, 0.318"x0.1"x0.12",
gold, breakable
2
custom
Header, male, 1x6, 0.318"x0.1"x0.12",
gold, breakable
8
WP7104ID
LED, red diffused, 3 mm, T-1, 20 mA
2
K103K15X7RF5TL2 Capacitor, 10 nF, ceramic
15 | H i l l
1
ECA-1EM100
Capacitor, 10 uF, electrolytic, 25
WVDC
1
B32559C1104K000 Capacitor, 100 nF, metalized poly.
Film
2
B3F-1000
SPST momentary pushbutton switch, PCB
1
PPPC032LFBN-RC Header, female, 2x3, 0.1"x0.318", gold
5
15-29-1025
Shunt, 2-position, gold, closed top
(Mega Option Only)
3
CFR-25JB-680R
Resistor, carbon film, 680 ohms, 250
mW, 5%
3
WP7104GD
LED, green diffused, 3 mm, T-1, 20 mA
1
"shield-pcb"
"CSULB SPI Shield v1.1a" PCB,
2.1"x4.0", DS, SS, no SM
1
3" x 5"
Anti-static bag
1
1"
Black electrical tape (not included)
16 | H i l l
B.
17 | H i l l
C.
18 | H i l l