Justin Love: Arduino Workshop

On February 28th, 2011 Justin Love visited Washington State University Vancouver. This page is an account of the events that followed.

Arduino is an open-source physical computing platorm based on a simple microcontroller board, and a development environment for writing software for the board. Justin held this workshop so that we could learn more about how to prototype with Arduino and begin to conceptualize projects for interfacing with the Motion Tracking Virtual Environment Lab in new ways. Justin used Arduino to help him create the Borg Cycle, the bicycle controller for the art installation game Grand Theft Bicycle.

Aaron May set up the kits and even packed them into these nifty plastic storage containers. The kits contain an Arduino Uno microcontroller board, a USB connector, a breadboard, alligator clip leads, a few switches and resistors, and wires of varying colors and lengths. Components can be plugged into the breadboard and connected to the microcontroller with the wires.

We started by connecting the microcontroller to Samantha's Macbook Pro with the USB cable. As soon as we did this the tiny light emitting diodes (LEDs) began flashing. The microcontroller was communicating with the Macbook.

Justin explained that the breadboard has many little plugs that components and wires can be connected to. The power and ground sections of the breadboard run the length of the board on both sides and are marked with a red line for power and a blue line for ground. A connection to one of the ground or power slots is shared the entire length of the column. The slots in the center of the bread board share continuity by row, that is, something that is plugged in to a slot on the inside of the board will share continuity with the slots to either side, but not above and below it.

To get started with the breadboard, we connected the power column to the 5v (five volt) pin on the microcontroller board and the ground column to one of the two GRND (ground) pins on the microcontroller board. We were working with power now!

Justin had us add components to the circuit and try out some of the example programs in the Arduino programming software. We connected an LED to the breadboard and placed a resistor in series with it so that it didn't get too much voltage and burn out. Then we used the "blink" code example to make the LED turn off and on at a regular interval. We added a button to the circuit and programmed the module to light the LED only when the button was pressed.

Sometimes our circuits didn't behave the way we expected them to. When this happened Justin would explain some aspect of the equipment or programming and then ask us to troubleshoot the problem based on what we knew. In the end we were able to get them to work wonderfully.