Sunday, October 11th, 2009
The events took many, many days to get it to work. However, the end result was exactly what I wanted.
Part Zero -- Starting and then Starting Over
The entire goal was for this to be an alarm clock, so my assumption was that I needed to find Alarm Clock code for the Arduino. I found code online and then tried to descipher it. I understood the basic infrastructure, but the code was so far beyond me as far as transforming it, I decided to scrap it and start with a shorter milestones.
Part One -- Getting the Servo Motor & LED to work with a switch.

Putting It Together
My initial work was going through the labs from our homework and trying to fit them to my needs. The first lab had an LED that reacted to a switch. I needed the Servo to react to the same switch, but reacted with an analog sensor. First, I tried them both with the flex sensor, then after some finnagling, I got them to react to the same switch.
Part Two -- Using a clock

The next hurdle was to get the Servo to move on a timer. After several failed attempts of using online code, John The Badass Resident showed me how to use the a startTime=millis(); in my void loop, the built-in timer on the Arduino, when you start your code up. It worked like a charm. I knew there would be a hurdle when creating the snooze button, but I figured there was a way to work around that.
Part Three -- Abandoning The Clock
Well, after trying to get the timer to work with my Servo and LED, I couldn’t get it to restart and John was long gone, so I worked with a friend’s code, Zeven and used a time variable. That gave me the ability to restart. For whatever reason, the LED wasn’t lighting up as well, which made no sense at all.
Part Four -- The Final Arduino Code

It’s the night before and I’m trying not to stress out. I again ask for help, apparently getting people into trouble and all sorts of various fun. I know it’s a coding issue, and I just don’t know enough about coding. John The Awesome Resident puts me in contact with a certain 2nd Year, who will go by the codename “The Bicyclist.” The Bicyclist sits down and wipes out all my void loop code. We go through and add two more variables (timer and stepDelay) and clean up my void setup and, step by step, we go through and piece by piece, make sure the code is speaking to each piece of hardware and then place it on the timer, and then go through and clean it up again. The trick was really to reset the millis to the current time by nesting it in the long timer. He showed me firsthand what it was like to code correctly. It was genius. Honestly, it’s to a point where I don’t want to go code again, cuz I finally did it correctly, and I wanna just have that be my lasting memory. This is a terrible idea, obviously, so I’ll be working on the tone library tomorrow.
Part Five -- Aesthetics, Aesthetics, Aesthetics
Until this point in the operation, I didn’t have any of my visuals put together. That was the easy part. I quickly constructed a house front, a fence and put a construction truck on a nice pice of varnished rich wood that I found laying around. I printed out several zombie pictures, including one from an artist depicting a scene from Pride, Prejudice & Zombies. I hid the switch behind the piece.
Part 6 -- The Future
The real question is do I continue to pursue this or do I abandon this project? Is there a market for this? When the heck would I have time to work on it? I’ve given it a bit of thought, and I know what the next phases are:
Tags: alarm, clock, pet, physical computing, stupid, trick, zombie
Posted in Physical Computing | No Comments »
Wednesday, September 30th, 2009
Alright, well, I got all hte way through Part 3 of the Lab, but that’s as far as I got. Red’s class. I almost burned out my voltage regulator. Good lord. Honestly, I’m aiming to get my stupid pet trick done today. TBD.
Tags: fail, physical computing
Posted in Physical Computing | No Comments »
Tuesday, September 15th, 2009
Alright, so I went through my neighborhood to try and find some interesting items. Here are the top three:
I think of it as low level, but one could argue that it's high level. It listens/reads the information I give it, comprehends it to know I have paid my money, and then in turn lets me through the turnstile. However, the conversation was rather boorish.
The callbox:

I love this thing. It's another low level interactive piece. You press a button and it supposedly dials out to the respective room. However, if you notice above the callbox is a regular doorbell, presumably cuz the callbox has what I call FAIL.
The Landlord

This is the result of my interactive experience with my super. He is incredibly nice, but when I mentioned to him that a brick was holding up my cabinets, he promtply came in, leaned on it, rushed out and got ANOTHER brick with pieces of tile. After shoving the second set of textiles in, he said, "There, shouldn't budge." The information was listened to, thought about, but the response was not at all in cooperation with my meaning.
Tags: computing, physical, physical computing, sensor, walk
Posted in Physical Computing | No Comments »
Sunday, September 13th, 2009
This assignment was for Week One of my Intro to Physical Computing course. I went in three passes in the hopes of understanding my arduino better. I ran into several issues, but since this is the first time I’m fully using electronics, I am not going to beat myself up.
PASS ONE:
Components:
Four Cables
Arduino
NO code.
I ran a simple through line from Arduino to red cable to green cable to LED to orange cable to yellow cable to ground. I was just excited about getting the LED to light up!

Mistakes: forgot resistor
PASS 2 – Using the Blinkie code.
Added Components:
220Ω Resistor
Arduino code
I added the resistor, after feeling foolish. I will be going back and writing in the code myself (as was suggested by the Resident Help). I gave the Arduino power, gave it code and…nothing.

Yay resistors! Boo not working!
It refused to light up. I showed it to a classmate, who had previous Arduino experience. “Why do you have so many cables?” he asked. We pulled all of the wires out and started over with as little as possible. This time, it worked.

Mistakes: Not reading instructions, only use what you need.
PASS 3
Added Components:
New Arduino Code – Switch
Two 220Ω Resistors
One 10kΩ Resistor
(Note: I actually used Three 220 resistors, but the issues that arise will unfold in good time.)
For the sake of time, I just copied and pasted the code, at the behest of a friend. That wasn’t so bright, so I’ll need to go back and do it again, and figure out how it correlates with the hardware. I decided to go sans switch, in order to simplify the situation and then later I’ll experiment with switch.
The light wasn’t switching very easily. As it turned out, I used the wrong level resistor, cuz I didn’t read the directions.

But after I continuously rubbed the switch wires together, I got the 2nd light to turn on and take a picture.

Mistakes: Incorrect resistor.
If anyone would like has any suggestions for how to make this documentation less boring or more effective, please comment! Thanks!
Tags: arduino, computing, physical, physical computing
Posted in Physical Computing | 1 Comment »