Beat Detection and Music Visualizer using Processing, Arduino, LEDs, and a glass head.
I had a strand of RGB LEDs that I ordered from China which turned out not to be individually addressable as I thought, so I came up with this project as a way to put them to good use! Be sure to watch the video to get the full effect.
The software which runs the music visualizer and beat detection is built in Processing 2.0, and communicates with an Arduino in the base of the head over USB, which then sets the colors of the LEDs. The Arduino part is based on the excellent RGB LED Strips tutorial over at AdaFruit.
* Everything used in the AdaFruit tutorial, including Arduino Uno, USB cable, non-addressable analog RGB LEDs, power supply, transistors, MOSFETs, and a breadboard and wiring to put it all together. AdaFruit sells most of those things, but you can also get the LEDs from eBay or AliExpress, and the rest from an electronics shop like Fry's.
* A prototyping board. I got mine from RadioShack for around $3.
* A few headers to slot the proto-board on to the Arduino. A pack of 100 in strips should be around $3 or less.
* Some solder.
* (Optional) Some 4-pin JST connectors, to put a detachment point between the Arduino and the LEDs. AdaFruit sells these for about $2.
* A glass head. Mine came from Pier 1 and was about $20.
* Some cotton balls (for the brain) and pillow stuffing (for the rest)
* A wooden box to use as a base. I used the bottom half of an unfinished jewelry box from Michael's for around $5.
* Some silicone glue to attach the head to the base. Although any reasonably strong glue would probably work.
* 2 screws, nuts, and nylon standoffs to attach the Arduino to the box. Arduino mounts can take M3-0.5 or UNC 4-40 screws, depending on what's available to you. I got all of these at the hardware store for less than $1.
* A little bit of electrical and masking tape
* A soldering iron
* A drill or small saw to cut holes in the box
* Screwdriver and pliers to attach the Arduino board
* A Mac with Arduino 1.0 and Processing 2.0 installed. (You can also use a Windows or Linux PC)