Title: Make Your Own Arduino
Class Size: 5-6?
Cost: $20 (+$5 for FTDI adapter, or bring your own, or use ours as long as it doesn't leave the building)
Pre-requisites: none, though having a laptop to try programming the board would be helpful.
Minimum Age: 12 and up (under 18 must have parent present)
This is a workshop to build your own Arduino-compatible prototyping board, the EMSL Diavolino. The Diavolino is a low-cost DIY clone of the Arduino Duemilanove board intended for teaching electronics and soldering. The kit includes a 3xAA battery pack for power.
The workshop will cover the basics of soldering, assembly of the board, testing it for basic functionality, and writing & uploading a simple sketch (program) or two onto the board.
Bringing your own laptop is not required but might be helpful, especially if you wish to go further in your Arduino exploration. Installing the Arduino software from https://www.arduino.cc/en/Main/Software onto your computer ahead of time will be very helpful if you are bringing your own computer. If you're running Windows, installing the FT232R drivers from http://www.ftdichip.com/Drivers/VCP.htm.
USB-Serial note: We will have a number of FTDI USB-serial adapters available for use to program your Diavolino at the space. Purchasing one is not required for the workshop, but if you want to do more Arduino programming on your own, you will probably want to get one. We may have a limited number available for sale at the workshop ($5-$8, depending on the exact model), or you can pick one up at Micro Center for $8: http://www.microcenter.com/product/486570/FTDI_Adapter_USB_Controller
No previous electronics/soldering/programming experience needed.
Class syllabus/Outline:
-
Basics of soldering in case anyone is a new solderer.
Resistors
Resistors resist the flow of current.
1K (bigger, brown-black-red) - this one keeps the LED from burning out and/or being blindingly bright
10k (smaller, brown-black-orange)
IC socket
Orientation! (less necessary than the IC itself, but good to get in the habit of doing this correctly)
Tack first pin in, then adjust fit as needed
Capacitors
Capacitors store a charge.
18pF (2) (have black splotch across the top) - in the XTL & Caps area just above the microcontroller.
.1 uF (3) - two in the top left corner, one just above the microcontroller. The one in the lower left corner can be ignored unless you want to add a 2.1mm power input and 7805 voltage regulator.
Switch - RST
LED - Square Hole + (long lead)
Crystal (*outer* holes on the PCB)
Programming header
Jumpers (somewhat optional, and notice that they are zero-ohm resistors!)
NOTE: The Diavolino does not have any protection from multiple voltage sources. You *must* be a little careful when powering it. If using USB power, TURN THE BATTERY PACK OFF!
USBV Jumper - if you don't want to use the battery pack, or want it to be powerable via USB, install this jumper.
Regulator jumper- if you want to use a 5V wall power supply, you can install this jumper. If you want to use a 9V (or greater) power supply, DO NOT INSTALL THIS JUMPER.
Headers
Solder these carefully- proper alignment is important!
Tack one pin of each on, then adjust as necessary
Microcontroller
Battery Pack (optional)
Use the holes near the solder points for strain relief on the cables
Pack can be foam-taped to the underside of the board, if you want
Power on test
Apply power (via batteries or USB)
The LED should begin blinking at a 1 second on, 1 second off rate.
More advanced tests/programming
Change the blink rate
Load the blink sketch in the Arduino IDE
Change the lines that say delay(1000) to a smaller number & save
Set the board to “Arduino Duemilanove (w/ATMega328)
Set the port as necessary
Program the board - the builtin LED should be blinking faster
Fade test
Put an LED between pin 11 (or another PWM pin) and GND (it's low current, so no resistor needed) long lead to 11, short to GND
Load the “Fade” sketch in the IDE
change the value of the 'led' variable to 11
Save the sketch & program the board - the LED should fade in & out of brightness
More tests?
Upgrades/Hacks:
Voltage Regulator - if you install a 2.1mm power jack, a 78L05 voltage regulator, and a 0.1 uF and 10 uF capacitor, you can power the board from a 9V tip-positive wall power supply.
ISP headers - If for some reason you somehow destroy the bootloader on your Arduino (it's possible, ask me how!), you can install this header, and using an AVRISP or other ATMega programmer, restore the bootloader onto the chip. For now, they can be omitted