Posted in Networked Objects
Metal Monkey Hat
Here are some friends who were kind enough to let the monkey gnaw on their head.




metal monkie :: modeled by zombiemonkie from lara grant on Vimeo.
choose one item from each list:
Actions
- squeezing
- stroking
- tapping
- shaking
- dancing
- caressing
- breathing
- pushing
Things
- feathers
- cup
- monkey
- playground ball
- sneakers
- lentils
- pudding
Responses
- color
- sound
- animation
- speech
- music
- kinetic movement
Other than having a week to come up with and execute the project, the above choices were the constraits.
I chose: shaking/dancing + monkey + sound/color
I’ll tell you that a monkey devouring your head while possessing you to control the tempo of music by furiously banging your head IS metal.
The monkey was formed by my two hands as a felt hat. In the back, is a pouch I constructed to store the hardware, an arduino, breadboard, and an accelerometer.
I have not worked with an XBee yet, so there was a USB cord supplying power and sending data to my computer through arduino to processing to produce a sketch. The sketch being one song, one phrase and one shade of red that corresponded with each of the 3 phases of brutal metalness you are able to achieve.
As you shake your head, the sensor takes readings on the z-axis, which translates as an up to down, chin to chest shaking of the head aka *head-banging*
level 1 of metalness (slow head-bobbing)
song: U2 – with or without you
color: light red
text: ” easy listenin’ “
level 2
song: Poison – nothin’ but a good time
color: medium red
text: ” more metal than puppies, but not by much “
level 3
song: dethklok – themesong
color: blood red
text: ” a fuckin’ monkey is eating your head, that’s metal! “
In processing I used the sonia library, and found it quite easy, though I was just loading and calling songs. The most challenging part of the project was mapping the values of the accelerometer to play the songs in a linear fashion. The values I received started at a central point of the full range of values you could get, it then either went up or down from there. I first applied some capacitive coupling to my circuit to smooth out my readings, which were pretty jumpy. which was done by bridging my power and ground with a capacitor.
Second, I wrote my code so it took the last byte read and the first read, took the difference from those, then using a relational operator put it in one of the three phases of metalness. Included is a short video that shows how jumpy and difficult it was reading the actual head-banging movement. hopefully, a higher quality video is to come.



