Assignment for 12/11

Here is a link to the post with the slides and here is your homework. For next Tuesday, you may either,
1) Make one app that uses a class and addon.
2) Make one app that uses a class. Make another app that uses an addon.

You may use example code, but you must significantly modify it. As a gauge, significantly modify means either hack it on a technical level OR completely change the look and feel (think transparency + cat .pngs). If you do this, include documentation of the original code/app (and don’t forget to cite it!).

As we discussed in class, next session will shareout homework then have a final project work session. It is important that everyone be there even though this is a work session. I will meet with each of you individually to discuss your progress and any scoping/technical/conceptual issues.

Even though it may not feel like it, this is what you are actually doing:

Serial Communication – Video Game Controller

I made a jump button for Hip Hop Hero!


Pretty much just followed the tutorial at the ITP blog. One problem: holding the button down for too long crashes the USB port. I’m going to try adding a 10k ohm pull-up resistor to see if it helps.


Related, I saw that Sparkfun has some cool arcade buttons for sale. And a PS2-like joystick.


(Nerdy, middle school me just let out a high-pitched squeal of delight.)


Check out the video.

Week 9: Serial Communication

Hi guys,

Here’s my serial communication assignment. I made an amp that makes Nigel Tufnel’s (from Spinal Tap) head grow as you turn it up and shrink as you turn it down. When you turn the potentiometer all the way up, his head turns into something else!

Here’s a pic of the controller:


Here’s a link to the repo.

And here’s a link to the video:


Thanks guys!


Week 8 Assignment: Rube Goldberg Machine

Bobby and I worked on a Rube Goldberg Machine that followed the following path:

A vibrating motor with a cardboard arm taped on > a flex sesnor > an LED > a photocell (with a small cardboard hut over the led and photocell) > another LED > another photocell (with another cardboard hut over the two) > a speaker that played Twinkle Twinkle Little Star.

We chose each input and output because we were playing with the idea of an alarm clock.

We ran into a couple issues with the flex sensor being ultra sensitive, so maybe next time we could use a pressure sensor.

Unfortunately, we forgot to take a picture or a video – but hopefully you saw it in class!

Arduino Rube Goldberg

Susse, Jason and I worked together on our Arduino Rube Goldberg. We wanted to make a little motor car drive over a strip of foil to light up LEDs along the way, but decided to start with something a little simpler that actually worked! So here we have a button which turns on an LED, which is picked up by a photo sensor, which sets off a speaker to play some sweet tunes. I think Susse will bring in the car that she was working on, so the next step is to have the car begin the Rube Goldberg instead of the button.

(I’m having trouble uploading the video so will put it up on vimeo and post the link in a bit!)

The Bear and the Flower – version 2.0

The Bear and the Flower – version 2.0
The bear’s nose is sensitive to the flower’s light.
When you pore water on the flower, it tips over and affects the allergic bear, who then sneezes.

tilt sensor -> servo motor & LED -> light sensor -> speaker & fading LED.

We wanted to upgrade the bear and the flower’s interaction. They actually affect each other now. We had problems with getting the bear’s nose to fade according to light exposure, and then to incorporate the sneeze into it. We decided to put an actual physical gesture as the trigger of the action – the water funnel, which can be repeated.

video on viemo.
github code flower.
github code bear.

Crystal Ball

Here is my fortune-telling crystal ball!

I designed the behaviour of the LEDs to imitate the magical process of the crystal ball: initially ‘reading’ it’s subject, then slowly detecting imagery, then suddenly exploding in fortunes so that it blows out!  I aimed for the subject’s reactions to reflect these changes: starting off calmed, becoming increasingly curious and apprehensive, building to a climax of excitement, then suddenly stunned by it’s abrupt end…. what did it see?!

I found it challenging to create a sense of randomness rather than repetition with the loop function, so want to work on this further. However I’m pleased overall with the way the LEDs build in energy over time.

Video Reaction:

Crystal Ball meet Anthony!