Here is my very whiny robot. He complains when you wake him up! He whines no for the right button and grudgingly whines yes for the left button. But after three yeses he gets mad. You’ve got to go Jack Bauer style and twist his arm! Eventually he’ll relent. If you twist too long though, he’ll crash. Literally. Hold both buttons for a more humane reset.
And the code, for which I had to figure out a few new notes (I did so using my midi keyboard and garage band and just “hand tuning” the arduino code.
/*Based on Melody
* (cleft) 2005 D. Cuartielles for K3
*
* This example uses a piezo speaker to play melodies. It sends
* a square wave of the appropriate frequency to the piezo, generating
* the corresponding tone.
*
* The calculation of the tones is made following the mathematical
* operation:
*
* timeHigh = period / 2 = 1 / (2 * toneFrequency)
*
* where the different tones are described as in the table:
*
* note frequency period timeHigh
* c 261 Hz 3830 1915
* d 294 Hz 3400 1700
* e 329 Hz 3038 1519
* f 349 Hz 2864 1432
* g 392 Hz 2550 1275
* a 440 Hz 2272 1136
* b 493 Hz 2028 1014
* C 523 Hz 1912 956
*
* http://www.arduino.cc/en/Tutorial/Melody
*/
int speakerPin = 9;
int length = 90;
char notes[] = "efgCdefgABFABCDEefgCDEFggEDDEDDEDDEDCC";
int beats[] = {2, 1, 2, 8, 2, 1, 8, 2,1,2,8,2,1,3,3,3,2, 1, 2, 6, 2, 1, 5, 2,1,4,2,1, 4,2,1,4,2,1,1,2,8};
//char notes[] = "dDdD";
//int beats[] = {1,1,2,2,2};
int tempo = 126;
void playNote(char note, int duration) {
char names[] = { 'c', 'd', 'e', 'f', 'g', 'A', 'B', 'C', 'D', 'E', 'F' };
int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956, 840, 760, 700 };
// play the tone corresponding to the note name
for (int i = 0; i < 11; i++) {
if (names[i] == note) {
playTone(tones[i], duration);
}
}
}
void setup() {
pinMode(speakerPin, OUTPUT);
}
void loop() {
for (int i = 0; i < length; i++) {
if (notes[i] == ' ') {
delay(beats[i] * tempo); // rest
} else {
playNote(notes[i], beats[i] * tempo);
}
// pause between notes
delay(tempo / 2);
}
}
My name is Scott Peterman. I have worked in the NYC tech community for almost ten years, including at top companies such as Rockstar Games, Apple, and Bonobos.com.
I came to Parsons with the intent of creating a social/party game called Party of the Year, an entirely new social game that gives players incentives for spontaneously performing in public – imagine 20 complete strangers simultaneously breaking out in dance while waiting for a train in Grand Central. You can check out my first draft at http://www.potygame.com.
Recently, I have become increasingly engrossed with moving the design process away from traditional screen-based interfaces and into new realms of ubiquitous, wearable, and eventually bionic computers. It is in order to continue to explore this new world of design that I chose this Major Studio.
Reply