itp blog

Final Project

So my final project ended somewhat disappointingly with the separate parts not really coming together into a cohesive whole. Issues with power and I sneakingly suspect my motor driver caused errors in the direction of the gondola. Looking around in forums the only answer I came across was that it was an issue with my wiring. I tried (I think) almost every connection but found only one arrangement that would drive both motors. I then tried to alter the code to make it work through the software but to no luck. Regardless I was able to produce some images by sending direct commands.

Powerpoint Documentation
Ascii Converter/Image Finder
Geomerative - for vector conversion with Processing
Polargraph - the graphing software I tried to use

Here is the code/video of my prototype Blingee-type controller thing.

Final Project

For my final project I've decided to build a drawing machine.

The drawings the machine will create will come from user input into a search interface. The interface takes the query from the user and using PHP and the Google Image Search API to find an image that matches it. Then using PHP the image is coverted into ASCII art and a text file is saved to the server. That's how far I am now. Then using Processing as a ftp client to get the file (I haven't figured out this library yet*) I'm going to use Processing ( I've read Geomerative should work.) to transform the text into vector graphics and feed the paths to the Arduino.

My machine will use an arduino to control two stepper motors to move some toothed belts. It's based on These two designs

Der Kritzler


I've ordered the parts and will have more to say about this part soon

* Turns out this can be handled with just
String lines[] = loadStrings("");

I enjoyed this lab. Once I got my motor running I knew that it only made sense to make a fan. Thinking about it a little more I remembered one of my favorite olde videos back from before the youtube of a banana attached to a fan. So I knew that I wanted to do that. Unfortunately my little motor could not move weight of the banana. I tried sticking it on with the gum I was chewing too…??? I’m not sure were the logic was in that but anyways here is a video of the gum swinging around and changing directions.

I did however eventually get my banana fan running as a ceiling fan. Just in time to keep my feet cool for the summer.


Our midterm combined the slow pleasure of the traditional puzzle with the immediate satisfaction of video. Wiring our puzzle board and treating the pieces as switches we exercised a very simple but effective control over the medium.

So I had this lab working and then I came back to take a picture and this happened. I don't know why this happened.

no idea at all

Week 4

Here are a few images of the sort of things I saw walking around my neighborhood recently. I dont have a camera so I couldnt snap my own pictures.

image #1 image #2 image #3 image #4 image #5 image #6 image #7 image #8 image #9 image #10 image #11 image #12 image #13

I also don't have a scanner so I'll bring my imaginary piece of tech to school tomorrow.

Week 3

For this weeks lab I made a two switch alarm system for tea and toast. Here is my code and a video of it.

void setup() {
   pinMode(2, INPUT);   // set the switch pin to be an input
   pinMode(3, INPUT);   // set the 2nd switch pin to be an input
   pinMode(5, OUTPUT);  // set the green LED pin to be an output
   pinMode(6, OUTPUT);  // set the yellow LED pin to be an output
   pinMode(7, OUTPUT);  // set the red LED pin to be an output
  void loop() {
   // read the switch input:
   if (digitalRead(2) == LOW && digitalRead(3) == LOW) { // Both switches off
     digitalWrite(5, LOW);   
     digitalWrite(6, LOW);    
     digitalWrite(7, HIGH);     //Red LED on
  else if (digitalRead(2) == HIGH && digitalRead(3) == LOW) { // One switch on
     digitalWrite(5, LOW);   
     digitalWrite(6, HIGH);    //Yellow LED on
     digitalWrite(7, LOW);     
     else if (digitalRead(2) == HIGH && digitalRead(3) == HIGH) { // two switches on
     digitalWrite(5, HIGH);     //Green LED on time for tea and toast
     digitalWrite(6, LOW);    
     digitalWrite(7, LOW);     
   else { // Error no LEDs - It should only be one of the three options
     digitalWrite(5, LOW);   
     digitalWrite(6, LOW);    
     digitalWrite(7, LOW);  

Week 2

Well I tell you what, maybe Im not so great with electricity. I also apparently lack really great fine motor skills. I guess thats why Im in school then. After managing not to burn myself soldering I promptly shocked myself to remind me that I have no idea what I am doing.

no idea at all

After that I managed to use several components incorrectly allowing me ample opportunity to debate whether the led was turned on or not. However, I eventually got everything to pretty much work. Below please find my creative switch.

Week 1

After reading Chris Crawford's definition, how would you define physical interaction? What makes for good physical interaction? Can you name some examples of digital technology that are not interactive?

Mr. Crawford defines interaction as
interaction: a cyclic process in which two actors alternately listen, think, and speak.

Physical interaction is engagement of the environment in response to the input from the senses (touch, sight, smell, and hearing). Good physical interaction is interaction that allows for sustained and stimulating engagement. For this to happen both parties in the engagement need to be capable of understanding one another.

The first thing that comes to mind in non-interactive technology would be a clock. While I suppose you can normally change what hour you set the clock at you can never change the rate at which time passes. A digital clock might be able to help you become aware of how fast time is moving but as I know from experience it does not care one bit about my pleading it to change its pace.

yelling at clock