« November 2007 | Main

December 19, 2007

final projects critique

Power of One - Prayer Flags

My primary art medium for all my artwork is fabric. I am fascinated by the use of fabric in our lives; beginning with the fundamental aspect of protection and then its power to symbolize who we are socially, culturally, and spiritually.

This project focus is the spiritual aspect of fabric. I’m particularly drawn to the combination of the sacred and visual aspect of the Tibetan Prayer Flags. The traditional significance of the pray flags is to impart blessings of virtue, goodness, healing and happiness in the world.

I wanted to carry this philosophy a step further by seeing the opposite of virtue, goodness, healing and happiness. The participant has the control to see the effects of their actions. Moving from bad to good.

Because I have a western tradition and philosophy, when I look at the pray flags I can’t help but add to this meaning Newton’s laws of motion and the relationship between forces, body and motion.

Download file

Window Hack v.1

window.jpg

concept
This project is a documentation of my exploration of technology as a translator. I created this piece to sit in a window and "filter" the light from outside. I wanted to have a direct relationship between the input and the output---
I feel that this relationship creates an ambiguity that leads one to question the purpose of such a technology.

Can we hack the unhackable? Window Hack v.1 is my process in answering this question---

video>








construction
Window Hack v.1 consists of a bunch of nodes. Each node contains a series of for leds connected to a single photoresistor. It is a very simple setup that serves a very simple purpose. I am interested in the construction of this piece in relation to conceptual ideas. I believe that the flow of electricity is very apparent-- and has inspired me to see a direct relationship between light and electricity.
sketch.psd


vision
I envision creating a larger installation of this piece. I want to create various nodes that can be connected to fit windows spaces- I would also love to create another window hack consisting of an opaque material with wholes drilled in it. I loved that during the critique someone mistook this piece for simply that-- as it was my intention to pair it with something that simple
I believe that the paring of window hack v.1 with the holly window hack will help guide participants into critical thought

notes
Gorilla glue takes longer than 24 hours to cure

questions
What other window hacks exist?

Busy Bees

bee.jpg

concept
Busy Bees is an interactive installation. The interaction is situated in a larger context than just the space of the installation; it is taking place in the community of people using the university wireless network. Busy Bees listens in, or monitors, the interactions taking place on the wireless network and respond directly to this stimulus. The more information that is being exchanged the more active the bees become.
Video








construction
I created this piece using small motors that are connected to the I/O pins of the arduino. I used processing to program the arduino (more info). The processing program essentially monitors the WIFI network and gives a number according to how much information is being exchanged. This number is then used to activate the motors (the more people online the more motors that are active)---
Download Program
beeprog.jpg

vision
I envision this piece growing much larger. I think that it would be interesting to fill an entire room with these bees. I think the drama would add a nice touch to the piece- I have also thought of different ways to activate the bees- perhaps instead of amount of people online-- it could be various tasks that are being done or sites that are visited.

notes
This piece was my first exploration in networking my artworks. I found the language used in networking to be a little different, however approachable. I used "Making Things Talk" by Tom Igoe as a reference in creating my arduino/network interaction-

questions
I am wondering the importance of having people understand the interaction-- I'm not really interested in have a didactic to explain that this work is reflecting internet usage, however feel that it is not something that could be intuitively understood. I am interested in perhaps creating another layer of interaction that can engage people in the immediate space - and perhaps clue them into what they are experiencing---
(any suggestions?)

MAPPING CONNECTIONS

http://www.geocities.com/kathleen.grundman

Here is the link to a rough outline of making my project web-interactive, hope to continue next semester.
Thanks for all the technical (and moral) support throughout the semester. Katie.

Jin-Yo Mok and SoniColumn: What I Think

Mid-November, in my previous posting on the two Korean artists which I presented, I only provided links and not much elaboration on why I chose these two artists.

One reason I chose Korea, of course, is that I already have a Korean connection and have been to the country three times. But this is only where I started, why I constrained my search among Korean artists for this project. As it turns out, Jin-Yo Mok's SoniColumn was right along my lines of thinking for my touch project, at least as far as the body-movement affected the LEDs. (However, the music component of the SoniColumn and the music-box metaphor went beyond my more limited thinking.) I felt there was an element of serendipity at play in making this discovery.

SoniColumn has two modes of interaction: first, is "the setup," where you're up close to the work and enabling the sound and the light. The second is when you step away to the crank handle and play the music box. In this mode, the sounds played are based on the setup, and they slowly attenuate as the music is played out.

One of the things I constantly wrestle with (in my mind) regarding New Media is: Where do you draw the line between science project and artistic expression? Maybe this comes from my scientific background. I have no formal training in art, only the experienced lived plus some books I've read over the years. SoniColumn helps define for me an artistic expression in New Media, and I think that comes from the idea and use of metaphor. To start with an idea, a concept, a metaphor, and then shape the technology to fit the idea. That is the process. The technology is secondary. Like many, I can get caught up in the pure gadgetry of technology and that sometimes provides enough fascination, but that alone can't be art. Can it?

Or maybe the difference is purely cultural. Koreans have an expression they use for things which achieve excellence: "Now that is art!" This expression would be as easily applied to a well played winning goal in soccer as it might to a modern architectural achievement. The idea, I believe, is that art is excellence, in any of its forms. Then why not apply it to excellence in technology? Loaded with this definition, I am back to my science project vs artistic expression question, and I continue to ponder the boundary between the two.

Caroline's Final project

FINAL PROJECT:
The goal has remained the same throughout the semester. To make the depression of a pillow trigger nightmarish effects. I am using the bed from my youth, a daybed, with comfortable blankets and a stuffed animal as well as some surrounding toys to hopefully make the whole production appealing enough to attract someone to interact with it. in order for the presentation to work, a person needs to actually lie down on the bed and rest their head on the pillow. This act will trigger the pleasant imagery projected overhead of a little boy puppet sleeping to change into a horrifying nightmare puppet show.

First I fixed my prototype, I replaced the "cloth walls" with foam that I purchased upon Jane's suggestion. This foam provided me the exact amount of spring to make the sensor extremely reliable. Instead of using two pillows I replaced one with a layer of foam. Still tinfoil was the conductor, but I sewed four foam segments about and inch by an inch by about 4-6 inches long on the pillow and another five of similar size to the foam layer (one in the middle to provide extra tension. I incased this all in a pastel green pillow case, also from my childhood.

Then I configured the breadboard and arduino as follows, based on documentation I eventually found online. upon Diane's suggestion I cut the wires so that the entire production looked neat and organized. Then I soldered some longer wires together to attach to the tinfoil conductor. However, i found this to be burdensome, considering the electronics kept getting disorganized and mushed in the pillowcase. Eventually I reverted back to detachable clamps, so as to keep the hardware separate and in good condition.

I worked on the puppets and videos with Carolyn Kopecky and Hamil (I don't know his last name, but he's got a blue screen - haha). The little boy puppets were sculpted out of cheap clay and fake black fur for the hair. The heads were attached to sticks and placed under a sweater made from an old purple sock on which clay hands were attached as well as strings. The puppet's bed was made of things we could find in our house, paper towel, cloth, doilies and so forth. The little boy was moved with simple string pulls and stick twists. Then for the nightmare scene, stencils or shadow puppets were made depicting unique monster characters and they were shot moving across a blue screen. We did this many times and then layered each filming with a different color so that it looks like there are a lot of different colored monsters when really there were only about 5 plain black cut outs. After that, Hamil helped us transfer the footage of the boy puppet experiencing a nightmare onto the blue screen. This whole process was very educational and due to Hamil's help, I feel I should plug his shows on public access at 10 every Sunday, Tuesday, and Thursday. He has call in shows such as call in Karaoke, call in scrabble, and call in poet television as well as many spontaneous ideas and he films all of them live in front of a blue screen with live editing. What he does with blue screen technology is quite amazing and artistic.

Anyway, the rest of the project involved set up. The bed I brought home over thanksgiving break with the help of friends Pat Jackson and John Lutz. The bed was brought to school by John and I just a day before presentation. I set it up on Wednesday night and decorated it with blankets and toys I had thought ahead to bring with me. I set up a screen on the ceiling with the help of Karen and then propped the projector against a stool which I attempted to camouflage with blocks and books. This was not an ideal position for the projector. It should have been projecting straight down onto the screen from above but because of the low ceiling and the fact that the space was being used by other people, this could not be done. The angled projector was not bad though.

Originally, I had wanted there to be a projection on both the wall and the ceiling, but I soon realized that this would be much more complicated of a procedure. I am happy with the use of only one and I think that two would have been too much to look at.

Download file

Caroline is Ridiculous Sometimes 001.jpg

Caroline is Ridiculous Sometimes 002.jpg

Caroline is Ridiculous Sometimes 006.jpg

the video taken in class does not show the actual bed at all and since that was only up for a short time i did not get any pictures or video of it, but here are the puppet videos


















What I would change:
I never really took sound into consideration, immediately assuming that silence would be appropriate. However, I do think that if I had used simple lullabies and then some sort of disheartening sound for the nightmare, the whole scene would have been more impacting.

Also, I wish I could have explored Max/MSP more fully so as to learn more about it rather than just exactly what I needed to do this project. (Now Hamil wants me to teach him things I learned in this class so he can do even more with his show. This will be difficult considering what I don't know, but it should be fun, because I will learn a lot in the process of attempting to share the programs with him.

Artist Presentation Documentation

Documentation relating to my presentation of Mark Hauenstein.

The projects of his I presented can be found at the following links:
http://www.nurons.net/soundfountain/about.htm
http://www.nurons.net/audioshaker/about.htm
http://www.nurons.net/oitv/about.htm

How he informs my own thinking:
He taught me to consider how sound, even unintentional sound, and how it affects the impact of my work. His pieces also had clearly defined methods of interaction that were natural to the viewers, so that people were not hesitant to pick up and manipulate his sculpture, or speak into a microphone. Since studying Mark's work, I have begun to carefully analyze how my pieces sound, and how easy and natural it is for viewers to interact with my work.

PROTOTYPE:
FIINAL GOAL: to make the depression of a pillow trigger nightmarish effects. I hoped for the final project to have a very appeasing and comfortable bed (the day bed with the hearts from my youth) with cozy blankets and stuffed animals. Basically, I want the bed to look very innocent and inviting, but in contrast when people lie down on it the mood of the setting would change to a nightmare. It is kind of an experiment, similar to what I try to achieve in my paintings, playing with control of people's emotions.

PROTOTYPE: focus on getting a pillow, when depressed to make a red light blink
In the beginning I stacked two pillows with tinfoil layers on the surfaces that touched each other. I used rolled up cloth to give some spring in-between the two layers, but this did not guarantee that when pressure was not applied on the pillow that the blinking light would cease. I can arch the smaller pillow by setting it's cloth walls inside those of the larger pillow but this means it needs to be reset every time.

At this time I am also stumped as to how complex I should get in recreating a nightmare. I recently made, I think, a successful painting of a nightmare in which it is not blatantly nightmarish, but has a hint of a creepy surreal quality. I wish I knew how to recreate this type of nightmare in an interactive piece with a video. If it is possible, I have a particular nightmare in mind and would love to be able to recreated that exact emotion in others; I feel this may be impossible.

SETUP: I have clips attached to the tinfoil between the pillows which are both encased in the same pillow case. These act as the button or sensor. Originally I began with a pico cricket, but due to technical difficulties (i.e. my computer's demise due to wine) I intend on starting over with an arduino.

I currently have questions concerning the atmosphere of the room and whether it would be possible to control the entire atmosphere of a little boy's room. There were suggestions in the class of making the entire room interactive so as to make it more inviting for play. These suggestions included, slippers for all to wear, the room set up in completion with toys, and possibly other interactive things that each trigger one aspect of the room and eventually make it darker and more nightmarish step by step. I do not know if I have the means to present such a display for this class, but it would be interesting to learn just how involved the room should get.

My other question involves the concealment of the technical devices, though I understand that with some projects it can be beneficial to have the hardware showing I do not believe that this will be the case for my project, so I would like to figure out different ways in which I can hide the technology and make the room appear as simplistic as possible.

Last, I do not at this time understand anything about MAX/MSP, so I guess that is a big question.

Also, I should mention that I have no screen grabs concerning the pico cricket because they are lost to my computer. I did however, include the arduino program that I used soon after.

sketch.jpg


Download file
Download file

Destructomorphona 001.jpg

December 18, 2007

Tom Hagler's MIDI Sculpture

Title = "MIDI Sculpture F"

For this interactive touch-sensing project I aimed to create a piece that would allegorize a juxtaposition of humanity with nature. I choose to use audio as my main output and variable resistance sensors for input.

Video, Pics, Mp3's, and Code are on the Extended Entry...

I thought of the Plasti-Dipped flex sensors as pistils in a flower and designed an object that the participant would reach into, thereby activating a MIDI controlled audio sampler. I placed corresponding LEDs just below each pistil to allow for an immediate visual affirmation that a participant’s interaction was successful. The fur lining the top of the vessel is intended to entice a participant into touching the work.








The process of preparing the flex sensors was relatively simple. I soldered some pin connectors and wire leads on to the flex strip's rather delicate connection points. I then dipped these flex sensors in black Plasti-Dip 2-5 times. As more plastic coats are applied the sensor becomes stiffer and less responsive, but also more durable. I found that 2-3 dip coats were optimal for this particular application. 25% of the sensors prepared in this manner failed completely. Either the sensors became too hot during the soldering process or the Plasti-Dip’s acetone may have dissolved some of the strip, causing a short circuit.

The code and circuitry are based on Tom Igoe’s Arduino MIDI output found here:

http://itp.nyu.edu/physcomp/Labs/MIDIOutput

Materials Used:

Arduino Microcontroller
Experimentor Solderless Breadboard
Flexible Bend Sensors
LEDs
MIDI Plug
MIDI Cable
Roland SP-808 Sampler
styrofoam
plastic vessel
Plasti-Dip
Cat-5 wiring
10K ohm, 220 ohm resistors
pin connectors
.wav files
glue
synthetic fur
modified gallery pedestal

My Arduino Code:

int potPin0 = 0;
int potPin1 = 1;
int potPin2 = 2;
int potPin3 = 3;
int potPin4 = 4;
int potPin5 = 5;

int ledPin7 = 7;
int ledPin6 = 6;
int ledPin5 = 5;
int ledPin4 = 4;
int ledPin3 = 3;
int ledPin2 = 2;

int val0 = 0;
int val1 = 0;
int val2 = 0;
int val3 = 0;
int val4 = 0;
int val5 = 0;

char note = 0;

void setup() {
pinMode(ledPin7, OUTPUT);
pinMode(ledPin6, OUTPUT);
pinMode(ledPin5, OUTPUT);
pinMode(ledPin4, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(ledPin2, OUTPUT);
Serial.begin(31250);
}

void loop() {
val0 = analogRead(potPin0);
val1 = analogRead(potPin1);
val2 = analogRead(potPin2);
val3 = analogRead(potPin3);
val4 = analogRead(potPin4);
val5 = analogRead(potPin5);

if (val0 > 2) {
digitalWrite(ledPin7, HIGH);
noteOn(0x91, 48, 0x127); //Note on channel 1 (0x90), some note value pad 1 (note), high velocity (0x127):
delay(100);
}
else{
digitalWrite(ledPin7, LOW);
}
if (val1 < 80) {
digitalWrite(ledPin6, HIGH);
noteOn(0x91, 49, 0x127); //Note on channel 1 (0x90), some note value pad 2 (note), high velocity (0x127):
delay(100);
}
else{
digitalWrite(ledPin6, LOW);
}
if (val2 < 80) {
digitalWrite(ledPin5, HIGH);
noteOn(0x91, 50, 0x127); //Note on channel 1 (0x90), some note value pad 3 (note), high velocity (0x127):
delay(100);
}
else{
digitalWrite(ledPin5, LOW);
}
if (val3 < 80) {
digitalWrite(ledPin4, HIGH);
noteOn(0x91, 51, 0x127); //Note on channel 1 (0x90), some note value pad 4 (note), high velocity (0x127):
delay(100);
}
else{
digitalWrite(ledPin4, LOW);
}
if (val4 < 80) {
digitalWrite(ledPin3, HIGH);
noteOn(0x91, 52, 0x127); //Note on channel 1 (0x90), some note value pad 5 (note), high velocity (0x127):
delay(100);
}
else{
digitalWrite(ledPin3, LOW);
}
if (val5 < 85) {
digitalWrite(ledPin2, HIGH);
noteOn(0x91, 53, 0x127); //Note on channel 1 (0x90), some note value pad 6 (note), high velocity (0x127):
delay(100);
}
else{
digitalWrite(ledPin2, LOW);
}

}

void noteOn(char cmd, char data1, char data2) {
Serial.print(cmd, BYTE);
Serial.print(data1, BYTE);
Serial.print(data2, BYTE);
}

top_view.jpg

test_circuit.jpg

sampler_guts.jpg

in_space.jpg

flex_sensors.jpg

Here are the audio samples used in the work:

Download Insect Buzzing MP3 file

Download Decider/Jackass MP3 file

Download Frog Call MP3 file

Download Whale Song MP3 file

Download Orca Clicks MP3 file

Download Rook Call MP3 file

Download Arduino file

Final Project Documentation

Documentation on my final project, involving wiimotes and custom software.

Description:
WIth this project, I wanted to create an interactive soundscape through the use of non-traditional interaction methods. I didn't want to use buttons, switches, ranging sensors, or anything of that type. I was drawn to the idea of using accelerometers by a demonstration I saw using a MacBook Pro's built in accelerometer controlling a simple game. By using accelerometers, I could read position, rotation, and impulse data, and distinguish between all three. With one small piece of circuity, i had three separate analogue inputs that were nearly transparent to the user. This data was easliy manipulated to create sound inside Max/MS. I wanted to disguise the accelerometers inside a naturally playful object, like a ball, so viewers would feel comfortable interacting with my project and working collaboratively with other viewers to create a constantly variable soundscape.

Concept drawing:
pry-wiimote.gif
While not a drawing of the completed presentation, it was this image that helped me fully conceptualize what I could do with the sheer volume of motion data the Wiimote offered.

Video:
The video that was captured during the presentation wasn't very illustrative of the interaction that was taking place. This video demonstrates more clearly how the motion of the controller is transposed to sound.







Photos:
This is how the exhibit was supposed to look. These special beach balls didn't arrive until later on Thursday, so I didn't have them for the presentation. A wiimote would be inside each ball, along with a single glowstick.
IMG_0134.JPG
IMG_0135.JPG

Electronics:
The only hardware this project uses is standard Wii Remotes and software, so I was fortunate that I didn't have to design and construct complex circuitry. I was originally going to use an Arduino controller and incorporate a three axis accelerometer, but the accelerometers available were all very difficult to incorporate into an Arduino based project. The pins, connectors, and components were all far too small for me to work with effectively.
IMG_0137.JPG

Program:
Picture 7.png
This is the main interface for OSCulator. The OSCulator handles Wii remote connections, reads values, and encodes that data as OSC and MIDI control information. This allows me to utilize wiimotes inside Max/MSP very easily, as Max is well equipped to work with MIDI data.
Picture 8.png
This is the Max patch I wrote to generate sound from the MIDI information flowing out of OSCulator. It handles the inputs of 4 wiimotes, and each is 'voiced' so that the sound being generated from each wiimote's inputs is slightly unique. Because I used a very simple synthesis system, the sounds were not quite as rich and distinct as I had hoped. I will improve this in the coming semester.

The OSCulator routing data can be downloaded here.
The Max/MSP patch can be downloaded here.

Changes:
I have changes already planned for this project. As it stands, only the position data (relative to gravity) is utilized by the max patch. There are three additional data sources per remote (the change in acceleration is reported per axis), and I could utilize that data to alter the 'shape' of the sound produced by each remote. My limited understanding of how Max worked with VST objects and plugins made that too difficult for the timeframe of this presentation. Over the course of next semester, I hope to utilize more data more creatively as I begin to understand Max more.

Final Project

The Untitled Box
IMG_0166.JPG


For this piece I wanted to try to accomplish as much as I could by using (exploiting) the various resources I had available. In this piece, I pushed the limits of my limited knowledge (and then some), to create a unique experience that incorporated interactivity and sound. As this project progressed I incorporated visuals into this piece as well.


finale Picture 1.png



In this piece there are several buttons and switches, and corresponding to each button and switch there is a unique sound and visual embodied. When you press a button or flip a switch you are able to experience that sound and view the visual projected on a screen. If you release the button the sound will stop and the visual will disappear and reset itself. The longer you hold a button down, the more complete your experience will be. Once the sound and visual end it will start over.


IMG_0168.JPG IMG_0167.JPG



final Picture 1.pngMax MSP Patch

final Picture 3.png

Video

I'm not sure if there is anything I would change about this piece. Rather there aspects I would refine and/or modify. The unique thing about this piece, is that there is the actual unit will remain the same, but the media in which one applies has the ability to change. Thus this piece has the ability to always be in flux and adapting. So, this piece as it was will forever be as it was in that moment. And if I chose to exhibit that experience again I will have that ability. But I also have the ability to exhibit different incarnations of this piece that will be unique to each new situation. So if I were to change anything it would create an entirely new piece to be experienced.


Please leave comments and suggestions. They will be much appreciated!

Chris Sugrue

Delicate Boundaries is the work that drew my interest to Chris. I am very compelled by her ability to create a fluid interaction between screen and participant. I have been very interested in Myron Krueger's response as medium -- In his article responsive environments Krueger suggest that response can be the medium of an art work. The response to Delicate Boundaries is what draws me to the piece. How does it feel to have a part of the screen become a part of you? Very interesting.
one can view more of Chris' works at http://csugrue.com/
From viewing Chris' links I came across the system is or Zachary Lieberman. I was very interested in Zach's piece Drawn in which he creates an interface for musical creation through drawing. I loved that he created the piece to act as both an installation and performance and feel it shifts fluidly between.

Zach's work can be seen at http://thesystemis.com/

Final: Pig


My vision
for this piece was to stimulate movement of a sculptural object based on the presence of a visitor in a gallery setting. Late in September, I decided on a large fabric pig as the sculptural object. I wanted the movement to either respond as a breathing or rocking motion. To accomplish this reaction, I used a PING))) Ultrasonic Distance Sensor (#28015). This sensor accurately detects distance measurements from about 3 centimeters to 3 meters. I wrote a program to respond to the data received by the sensor to start, stop, and vary the speed of a DC 9V-24V motor.

Click the link for the extended documentation including: concept, extended text pertaining to the sculptural and technology processes, photographs, video, project components, and code. Enjoy! ~Jessica

P1.jpg

P2.jpg

CONCEPT:
As apart of a consumer society, I have become fascinated with the current trends of social constructions of identity. Many consumerists are seduced by the idea of brands, labels, and names particularly by the fashion industry. I have become curious with how particular items (such as Louis Vuitton purses costing hundreds to thousands of dollars) entice “must-have�? attitudes. This sculpture represents consumption and how it has become central to modern life. This pig is a system reliant on you (the viewer/consumer) to sustain its life which becomes apparent by your presence causing him to rock back and forth. This rocking motion is the stimulation needed for the object to retain its importance. The faux leather is a similar material used by leading designers to make fashion handbags and is embellished with golden teats to seduce desire.

Pig sketch.jpg

THE SCULPTURAL PROCESS:
My vision for this piece was to stimulate movement of a sculptural object based on the presence of a visitor in a gallery setting. Late in September, I decided on a large fabric pig as the sculptural object. Due to very little sewing experience, I decided to first create a prototype pig (he is 11 inches from snout to tail) to see if I was able to sew well enough to create a large soft sculpture. This process was enjoyable yet challenging! The most challenging portions were figuring out how the cut pieces lined up for pinning and sewing, and then accurately maneuvering the pinned pieces through the machine to create smooth lines. I knew the challenges I encountered in the prototype would differ from creating the large faux leather sculpture. Once I completed the small-scale pig, I was very excited to create the large pig! I then made a mold of 6 silicon baby bottle nipples. Over several weeks, I used a 2-part resin to cast 80 nipples from the mold. After being cast, the nipples (teats) required filling any air bubbles with Lacquer Glazing Putty (#6390), filing off the mold lines and putty to even the surface, scuffing, priming, and painting the casts gold. While creating the cast teats, I worked on laying out the pattern just right to fit the piece of fabric I had selected. The only piece of fabric I could find in the Twin Cities area that suited the project was a vinyl remnant at Mill End Textiles that measured 54�? x 82�?. The largest pig I was able to create out of the fabric would measure 48�? from snout to tall (which satisfied the scale I had hoped to create) as long as the pattern was created as economic as possible (see image below). Next, I transferred the pattern with a projector, cut the pattern pieces, and began pinning and sewing one piece at a time to assemble the whole. Once all the pieces where sewn together correctly (I had to rip a couple of seams that I had mis-pinned), I stuffed the vinyl cavity with 8 bags of Polyfil to make sure all of the seam lines where precise. In order to attach the golden teats to the vinyl, I drilled a hole in each of the cast, cut the head off 75 machine screws, and sunk the headless screw coated with epoxy into the hole. I then laid a pattern of washers out on the belly of the pig and marked where each teat would be placed (see image below). The seam line on the belly had to be ripped out in order to use a leather punch to create the hole for each screw to go through, then re-sewn exactly as it had been so the teats would line-up correctly which meant the stuffing also had to be removed to re-sew this seam and also so the screws could be secured with a washer and nut inside. The final steps included: re-stuffing the form and hand sewing the 14�? opening on the back seam (which had to be left to re-stuff). This process took until the last week of November to complete.

P10.jpg
Pattern Layout to be projected onto the large piece of vinyl (which I stapled on my studio wall).

P11.jpg
The washers taped to the pigs stomach in the design that the golden teats will be fastened on permanently.

TECHNOLOGY SIDE OF THE PROJECT
While working on the sculpture, I was also learning the Arduino! To accomplish the motion reaction to someone’s presence, I employed a PING))) Ultrasonic Distance Sensor (#28015). This sensor accurately detects distance measurements from about 3 centimeters to 3 meters “by transmitting an ultrasonic (well above human hearing range) burst and providing an output pulse that corresponds to the time required for the burst echo to return to the sensor. By measuring the echo pulse width the distance to target can easily be calculated.�? The variables correlating to the pulses ranged 38 through 3100 when someone causes burst echoes, and the variables range around 4100 when no echoes are occurring. I wrote a program to respond to the data received by the sensor to control a DC 9V-24V motor. My program sets the motor speed to 120 when the variables are greater than 2500, but less than 3000; the motor speed increases to150 when the variables are greater than 2000, but less than 2500; the motor speed increases to 180 when the variables are greater than 1500, but less than 2000; the motor speed increases to 210 when the variables are greater than 1000, but less than 1500, the motor speed increases to 230 when the variables are greater than 500, but less than 1000, the motor speed reaches full speed at 255 when the variables are greater than 0, but less than 500. The speed increases (smoothly!) as the viewer approached the object. The code works perfectly!!! I can't believe how reliable the sensor is with the motor!

UNFORTUNATELY:
Torque and RPM of the motor was key to realizing the project. The motor I purchased at ABC Electronic was unstoppable at 9V and 2 RPMs, unfortunately adding the cam and the cam rider to the set-up changed everything. These additions drained the torque of the motor. So, instead I was forced to present the small-scale model of the pig. The abrupt scale difference made the movement nearly undetectable. So, my next step is to up the motor voltage to 24 from 9. Then I plan to remake a new, lightweight cam {with several drops (like the original cam) to cause a rocking motion}. This cam’s diameter will be only 2 1/5�? to conserve as much torque as possible. If these measures do not yield the results I’m hoping for, I will buy a different geared motor.

P3.jpg
The electronics are all concealed beneath the pedestal with the front of the Ultrasonic sensor visible. This sensor accurately detects presences from 3 centimeters to 3 meters by sending and reading waves. When the sent waves are interrupted they bounce back as echo waves. When echo waves are detected, the sensor sends a reading between 42 and 3000 (distance between a person and the sensor) back to the Arduino, which initiates the motor. The motor speed is dependent on the variable sent by the sensor.


CLICK TO WATCH THE VIDEO:
Download file
The movement of the small pig is easy to miss, so watch closely (it may be more evident to you if you watch the legs & shadow). It is most obvious right after the loud background noise.

What you will need:
DC Motor
PING)) Ultrasonic Distance Sensor (#28015)
Arduino
H-Bridge
Resistor
Transistor (?)
Push button (if desired)
Jumpers
Breadboard
External Power cord (9V)
Cam
Dowel
Wood (for casing the motor and electronics)
Screws
Pig


P4.jpg

P5.jpg

P6.jpg
Overall look at the “nuts & bolts.�?

P7.jpg
Close-up of the motor shaft, cam, and cam rider.

P8.jpg
Wiring of the Arduino, Breadboard, Motor, and Sensor.

P9.jpg
Close-up of the wiring from the Arduino to the Breadboard.

Blue wire connects the Ultrasonic Sensor to the Arduino.
Orange wires connect the H-Bridge to the Arduino.
Red wires denote power and black wires are ground.
(Push button will reverse the motor direction.)

Connect the push button and Ultrasonic sensor to the 5V power.
The motor I selected required minimum 9V power, so this was connected to the 8 pin of the H-Bridge.


HERE IS THE CODE:
LINK TO PROGRAM:
Download file

int motor1Pin = 3; //H-bridge leg 1
int motor2Pin = 4; //H-bridge leg 2
int motor2Pin = 4;
int speedPin = 9; //H-bridge enable pin
int switchPin = 2;

int ultrasoundSignal = 7; //Ultrasound signal pin replaces switch
int ultrasoundValue;
int timecount; //Echo counter
int motorspeed;

int val = 0;
int ledPin = 13; //LED

void setup() {
beginSerial(9600); //Sets the baud rate to 9600 (probably needs #
changed)
pinMode(speedPin, OUTPUT); //pin 9 as output (controls speed)
pinMode(motor1Pin, OUTPUT); //pin 3 as output
pinMode(motor2Pin, OUTPUT); //pin 4 as output
pinMode(ledPin, OUTPUT); //LED as output
pinMode(switchPin, INPUT);
}

void loop(){
timecount = 0;
val = 0;
if (digitalRead(switchPin) == HIGH) {
digitalWrite(motor1Pin, LOW); // set leg 1 of the H-bridge low
digitalWrite(motor2Pin, HIGH); // set leg 2 of the H-bridge high
}
// if the switch is low, motor will turn in the other direction:
else {
digitalWrite(motor1Pin, HIGH); // set leg 1 of the H-bridge high
digitalWrite(motor2Pin, LOW); // set leg 2 of the H-bridge low
}


pinMode(ultrasoundSignal, OUTPUT); //switch signalpin to output
/*Send low-high-low pulse to activate the trigger pulse of the
sensor*/
digitalWrite(ultrasoundSignal, LOW); //send low pulse
delayMicroseconds(2); //wait for 2 microseconds
digitalWrite(ultrasoundSignal, HIGH); //send high pulse
delayMicroseconds(5); //wait for 5 microseconds
digitalWrite(ultrasoundSignal, LOW); // Hold off
/*Listening for echo pulse*/
pinMode(ultrasoundSignal, INPUT); //switch signal pin to
input...check above
val = digitalRead(ultrasoundSignal); //append signal value to val
while(val == LOW) { //loop until pin reads a high
value
val = digitalRead(ultrasoundSignal);
}
while(val == HIGH){ //loop until pin reads a high
value
val = digitalRead(ultrasoundSignal);
timecount = timecount +1; //count echo pulse time
}
/*Writing values to the serial port*/
ultrasoundValue = timecount; //Append echo pulse time to
ultrasoundValue
//motorspeed = (((ultrasoundValue - 50)*255)/1650);
if (ultrasoundValue > 3000 ){

analogWrite(speedPin,0); // this sets the speed of the motor to the
value of the scaled ultrasound
}

if (ultrasoundValue > 2500 && ultrasoundValue <3000){
analogWrite(speedPin, 120);}

if (ultrasoundValue > 2000 && ultrasoundValue <2500 ){
analogWrite(speedPin, 150);}

if (ultrasoundValue > 1500 && ultrasoundValue <2000 ){
analogWrite(speedPin, 180);}

if (ultrasoundValue >1000 && ultrasoundValue <1500 ){
analogWrite(speedPin, 210;}

if (ultrasoundValue > 500 && ultrasoundValue <1000 ){
analogWrite(speedPin, 230);}

if (ultrasoundValue >0 && ultrasoundValue <500 ){
analogWrite(speedPin, 255):}


serialWrite('A'); //Example identifier for the sensor
printInteger(ultrasoundValue);
serialWrite(10);
serialWrite(13);
// if (digitalRead(ultrasoundValue) < 2000){
// digitalWrite(speedPin, HIGH); //set leg 1 of the H-bridge high
// digitalWrite(speedPin, LOW); //set leg 2 of the H-bridge low
// }
// else {
// digitalWrite(motor1Pin, 100); digitalWrite(motor2Pin, 0); }

/* Delay of program*/

delay(100);
}

Thank you to Diane Willow for encouraging me to take this course! I know it will inform the work I make in the future.
Thank you to Ben Faga for your help troubleshooting the electronics and code. I have learned so much!
Thank you to Wade Stebbings for the many conversations during class and introducing me to ABC electronics!
Thank you to the entire class! I enjoyed our time together and learning this technology with all of you.

Stop by my studio anytime! (E240)
Take care,
Jessica

December 17, 2007

Final Project: Wind

Concept:

Creating something seemingly organic out of mechanism is part of my fascination. I had a vision of a field of grass (or possibly reeds or bamboo) which could sway "in the wind" in reaction to passers-by. It is an image of the wind blowing across a field, where radio-frequency signal strength replaces the wind, mechanism replaces the sense of flow across the grass. Often you see someone carrying or wearing a bluetooth-enabled device, but not everyone. This is the source of the wind I wanted to make, to have the field react to some people but not others. In this, I depict the "haves" as opposed to the "have-nots," thereby also making a statement about class differences.

  demo-3.jpg

Process:

I attempted to scale-down the scope of the project to that which might be achievable within the half-semester given. I restricted the field to just three elements, each which also doubled as the bluetooth signal strength receivers, the detection of the wind.

Figuring out how a conical range of motion could be achieved was one of my bigger challenges. I decided to go with brass parts (source: McMaster-Carr). The mechanism consists of four parts: a 1/2" ball, a 1/8" rod, and two countersunk finishing washers whose inside diameter turned out to be just enough smaller than the 1/2" diameter of the ball that it was an almost perfect sandwich. Drilling the 1/8" hole through the brass ball was somewhat tricky but could become routine after doing several of them. Clamping the ball without damaging it and centering the drill bit were the biggest challenges.

top-sandwich.jpg  top-assembly.jpg

I built three enclosures (boxes) out of two solid aspen 4' x 6" boards, one 1/4" thickness, the other 1/2" thickness (source: Menards). The thicker boards served as the sides of the boxes and the 1/4" for the top.

The top was constructed from two 1/4" pieces of board to complete the sandwich holding the ball-joint mechanism. No adhesives were used for this, it was strictly a compression-fit. Each of the two boards had a tapered hole to hold the large brass washer. The hole was made from two sizes of drill bits, carefully kept concentric, then later carved to improve the fit with the shape of the washer.

The electronics was basic outside of the Arduino board itself. I made an external pc-board which assisted with making all the connections between servos, Arduino and the servo batteries. I also included a small, two-resistor circuit to define a built-in, hard-wired 2-bit address, so that each device could be unique (at this point, I knew I was making less than 4 devices). The idea behind the 2-bit address was an attempt to make dealing with the software a little easier -- instead of a custom-made program for each device, each device could run the identical software, but know their unique identity from its 2-bit address.

Another, small electronics challenge was that the servos needed one power supply, the Arduino-BT needed an other, lower voltage power supply. I decided to install two separate battery packs in each box, one with 2-AA batteries for the Arduino, and one with 4-AA batteries for the servos. They shared a common ground, so that the signals from PWM pins 9, 10 of the Arduino could control each of the servos.

pcb-closeup-2.jpg  schematic.jpg

There are two software components to what was demonstrated on critique day: (1) the Arduino sketch which was capable of producing servo motion based on commands it receives from its serial interface, and (2) the Processing sketch to send position coordinates to the Arduino via the serial interface.

When I was blocked by problems in working with the Arduino-BT devices, I had to rebuild one of the devices with an Arduino-NG (USB) tethered to a laptop and controlled by a Processing sketch from the laptop. The Processing sketch is simply a touchpad like interface that can control the motion of the tethered (USB-connected) device.

sw-screenshot.jpg
The software for both the Arduino and the Processing sketch can be downloaded as a single, compressed tar file.

Demonstration:

For demonstration during critique day, I setup the three devices as if they were all working. The tethered device connected to the Processing sketch on the laptop was enough to show a sense of the idea.

Future:

There's a lot yet to be done. I want to manifest this project to its original vision. As a system, I would separate the "bluetooth listeners" from the actual "field nodes" and perhaps introduce a centralized component which collects data from the listeners, performs the triangulation and other calculations (position of a bluetooth source, speed, direction and signal strength). The central component would then, somehow, broadcast to the field what movements should occur.

Concept drawing:

SystemBlockDiagram.jpg

There are other items I wish to explore. The servo motors are too noisy, stepper motors may improve that, although I might explore changes in the mechanism, since steppers can "keep rotating" as opposed to servo's limitation at about 180 degrees of rotation (and then, only back and forth). I've also been thinking about a solenoid mechanism, perhaps used with springs, for a completely different type of movement, as a variation.

From the software point of view, I might consider using the AvrX kernel instead of the arduino software. That is, if I wish to put have more threads of execution running on each device, each node. One thought was to create an elliptical movement, where the input parameters to it would be the foci (positions) the rate of rotation, and the direction.

And I'm sure my explorations will lead be in even other directions.

** Note: I have reduced the image sizes for display within this post. If you wish to see an image in full size, you can select "view image" from your browser.

Sabrina Raaf

artist presentation: jane powers

Sabrina Raaf-artistImage.jpg

Sabrina Raaf is an installation artist and photographer who is interested in engaging us, the viewers, viscerally through our bodies and through the architectural spaces that we pass through and inhabit. Some of her pieces draw us into using our bodies in new ways as we experience aspects of our world, such as the sounds that we are often only peripherally aware of, that are made by technological devices within our environments or the quilt of conversations, natural and machine sounds that lie outside our windows. Other works metaphorically resonate an experience of our bodies, such as our breathing, or use the by-product of our breath, carbon-dioxide, to talk about our symbiotic relationships with our social and natural environment.

I decided to present Raaf, because looking at her work caused me to reconsider some installation pieces that I had made and gave me some input on some questions I have about some of my current projects. The aesthetic quality and issues referenced in her work resonate with me. Raaf seems to me to be really "listening" to, tracking and plugged into the currents flowing within our contemporary culture in regard to both cur social/psychological relationships and our artifacts/constructions as they "collide" with our exponentially emerging "new" technologies.

www.raaf.org
gizmodo.com/gadgets/art/gizmodo-gallery-sabrina-raaf-172890.php
www.lawrimoreproject.com/raa
channel.creative-capital.org/projct_82

Touch Project: jane powers "comfy: whenever/wherever"

The piece "comfy: whenever/wherever" is a portable (somewhat) seat that attempts to provide a place to "retreat" to regain calmness/quietness. The thick foam cushioned seat and back allows the body to sink in. A fleece throw-blanket is attached to offer warmth and the soft stuffed cat cuddliness. Sitting on the seat causes a red light under the fur of the cat's forehead--referencing a third-eye--to being pulsing. It is meant to catch the focus of the seated person with the hope that the person will pick-up and engage with the cat. Stoking or hugging the cat will shift the red light to a blue pulsing light. The longer the cat is stroked/hugged, the slower the light pulses until it becomes a steady blue light.

comfy-a chair500pix.jpg


comfy-noPerson500pix.jpg

comfy-redLight500pix.jpg

comfy-blueLight500pix.jpg

Final Project: jane powers " touch<-->touch"

I am interested in the dissolving boundary between our increasingly personal electronic devices/adornments and our bodies. I have begun focusing on making this largely "unnoticed" absorption of technologies into our lives, and onto and into our bodies more visible through metaphoric and ironic objects that can address the question: What kinds of technologies do we want embedded in our public and private spaces, in our clothes/accessories, in our skins and within our body?

This piece, "touch<-->touch", is an accessory, a wearable, that attempts to call attention to the often ambiguous perception of what is public versus private/personal space and who gets to decide which it is.

The form references Wonder Woman's belt and a pregnant stomach. Wonder Woman is an icon of power, of being in control. From my personal and other women's experiences, the pregnant stomach, though a very personal, intimate place on a pregnant woman's body is often treated in our culture as a public place. Friends and strangers often will touch the stomach without asking permission. The simulated stomach in "touch<-->touch" is made of a skin-like rubber which has a bridle lace embossed surface that creates a heart-shape in the center.

When "touch<-->touch" is worn as a belt, the wearer is in control of encouraging or discouraging touch, thus choosing when her/his body is, so to speak, "public" and touchable or "private" and not touchable. A toggle switch allows the wearer to set the mode of the belt to public/touchable or private/non-touchable. In the private/non-touchable mode, a touch on the "stomach" will cause red warning lights to glow from inside the rubber and the word, NO, to appear within the heart-shape center. These persist until the touch is removed. The wearer, sensing an approaching unwanted touch can trigger the warning in an effort to ward off the advance. In the public/touchable mode, varying touches on the "stomach" will cause different patterns of blue lights to glow from with the rubber. The wearer can join in encouraging more playful touch. When three sections/zones (see sketch) of the "stomach" are simultaneously touched and held for a duration, the blue lights go out and a red heart and red lights begin to glow. If the playful touch becomes more than the wearer wants, she/he can switch the mode to private/not touchable and set off the warning signals.

Note: "touch<-->touch" is currently being debugged.


touch<-->touchSketch500pixs.jpeg


touch<-->touch.jpg

touch<-->touch-Interior-sensors.jpg

touch<-->touch-Interior-arduino.jpg


Download file

December 15, 2007

ImOnFire (Jeremy's Final Project)

Source Code, Setup Diagram & Collected Musings
Available on extended entry.








Click Here to View Video

ImOnFireTechSetup.png
(click to enlarge)

NERDY BACKGROUND
This project came out of experimentations with particle systems using the traer.physics library inside of Processing. Initially I was using the particle systems to optimize visualizations of scale free network topologies (don't ask), but the physics model proved so convincing in that context that I began imagining other uses for it. After one week I had made several improvements on the network example patch and turned my attention to the smoke simulation. I found much room for improvement. By adding color and shape to the particles and by creating/manipulating/destroying forces within the system I was able to model a coarse flame. Applying a gaussian blur to the result yields a rather convincing flame, but also requires a slower framerate which detracts from its realism.

SLIGHTLY MORE INTERESTING STUFF
With the fire model in hand I turned my attention to a user interface. I wanted the piece to require a minimum of physical engagement from viewers while inviting them into an imaginary space that they could manipulate with their bodily gestures. It was important to me that the piece required no actual human contact, that its behaviors were quickly and intuitively understood and that it responded to the participants as they respond to it. The last of these criteria is perhaps most important because it necessitates a responsive space which produces nothing without participant engagement and falls dorment when the participant has left the space. This approach ensures the sense of discovery and play I hoped to acheive with the piece.


MORE TECH
The most obvious method of extracting movement data from the participants was by video motion capture. I had previously done motion capture in Jitter utilizing a combination of frame differencing and color tracking. For this application, however, I wanted to do all of the video processing live inside the Processing environment (mostly for stability purposes) This required a little deconstruction of the underlying concepts and some new methods for thinning the parametric data stream. In the end, I feel that the implementation is fairly elegant and processor friendly.

INITIAL RESPONSE
In the prototype installation of the piece I was happy to watch as participants actively engaged with the projection. When watching the participants from a spot on axis with the projection they appear to be practicing some improvised modern dance moves. This makes me giggle and may be an area of the work to exploit in future iterations.

PROCESSING SOURCE CODE
v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^
Download file

December 14, 2007

Infinity Shadow Box Complete

The electronic optical illusion has succeeded in it's most basic and prototypical stage. However, the prototype is extremely temperamental as the wires are housed in such a outer frame. The trial and error of this project have involved an extremely steep learning curve but ultimately has resulted in a better knowledge of electronics and the applications of the Arduino-micro controller in my work. The fabrication of the box was something I felt capable of doing and unafraid to tackle. The electronics slowly followed with the guidance and knowledge from the wonderful community (with very different perspectives and skills) that we had in this course. If I were here next semester I would definitely continue to explore this field as a primary interest of mine.
The fabrication of the box i thought originally would be the largest portion of the work with the most problematic hurdles. It seems know though, the things I need to work on most are figuring out the Arduino language and coding of actions for the micro controller. I feel I have the tools necessary to do the wiring and building of components after taking this class but without the code there seems to be little hope for my projects to succeed. Much thanks to Ben for being the excellent teaching assistant with the most helpful of attitudes. Without him I feel as though my project would have been a failure in terms of communicating with the microcontroller for the desired effects.
Overall I would say I have left this class many steps ahead of where I was in the electronics field with a somewhat basic and average understanding of how these things work and what they can do for my work as a whole. I was extremely impressed with all the projects of people within the class and help me grasp possibilities outside my own realm to perhaps discover for myself in the future.


The Arduino Code was taken from the Arduino website Tutorials page under Shift-Register or Potentiometer. A combination of the two code allowed for potentiometer readings/values to control an array of 16 LEDs through means of two Shift-Out registers (74HC595=part number).

THe optical illusion was created by means of a normal mirror in the back of the box with a front panel of one-way slightly tinted mirror which allow light to be trapped and bounced back and forth within the box creating an illusion of a tunnel receding into the back of the box.










video

https://mediamill.cla.umn.edu/mediamill/download.php?file=6963.flv (this is formated for Uthink)
https://mediamill.cla.umn.edu/mediamill/download.php?file=6964.mov (quicktime!)

VIDEO

Media Mill Video









December 13, 2007

Andy's Final Project

Written Project Description: My project was a fascinating journey in which I explored uncharted realms of the abstract and tangible involving technology and art. What started as a half-baked idea transfered onto the excitingly simple medium of the Pico Cricket, and a fussy cardboard and tape prototype was born. My idea was one that acted on my urge to give tangible physical pull to the will of technology against our own: a "tug of war." I will admit that the notion of having a motor wind up a rope-like object around a beam to counter-act the user's physical pull on the other end was a spur of the moment idea stretched into tangible reality (mostly) by a semester's worth of effort, but in retrospect I can trace my motives back to the subconscious.

Anyways, the question of whether or not I could transfer my prototype to the arduino/breadboard interface proved to be a daunting challenge. It started with getting a motor to spin, then go in reverse, and then at a higher voltage. Copying my code straight from basic tutorials, I spent most of the term trying to get the technical side of the equation in working order. This was marginally successful and ended up largely dissolving towards the end... Later on my idea had morphed into that of having a head, any head would do, and presenting a tongue for the yanking...

With a lot of help from Jane, I had a plaster model of my own cranium that I would later paint to represent the urgent expression of someone having their tongue yanked to unnatural lengths, until by their own power or by some sort of bounce back, have the tongue roll back up like a window blind or a fruit roll-up. Once the head was painted, I turned to applying my fragile wiring to a creation centered around the raw power of an erratic, but functional motor apparatus.

After previously upping the power the motor received, I brought it back down because of containment and harnessing issues. Lining my tongue with tin foil in order to create the necessary chain-reaction to tell the motor to stop or reverse ultimately failed, due to the strain of it being constantly manipulated at high speeds, and just not conducting well. I then resorted to trying conductive thread next, which curiously seemed anything but. Baffled, I resorted to simplification, in order to emphasize what was working and eliminate the clutter involving the piece's function. The result was a simple on-off switch that was activated by the touching together of two alligator clips when the situation warranted. Otherwise, the lower powered motor found an appropriate balance that could be overpowered by the human tugging but still rapidly retract the tongue at a moment's notice (without pulling in to the point where it can't be pulled back out).

Wordy descriptions of complex concepts aside, come conclusions can be drawn. Overall, my piece strikes me as a truly amazing process of repeatedly aquiring and applying new knowledge to an interface equally foreign at a rapid pace. The result was both achingly human as well as a testament to a drawn out process. Like all pursuits, the piece rests on a delicate balance of function and roadblock. Most symbolic of all, the fact that it all channels out through my own open mouth seems eerily appropriate...

What I Would Change: I would change the order of the steps I took to realize my idea. First, I would have gone ahead and built preliminary versions of my final contraption (beyond the prototype), in order to better visualize what additional steps I should have taken and challenges I would face. Most importantly, I would have researched the possibility of having a working and viable sensor interface within the tongue that would precisely control the motor without needing babysitting. This would have helped me realize earlier the true of scope of the challenges before me, in order to plan my schedule accordingly to overcome them. Concurrently, I would have dwelled less on the technological front to this realm of work, in order to realize more of the breadth of what this project entailed. Still, I am thoroughly proud as well as amazed at all I have learned and accomplished, and definitely feel like the hard work I did put in was never really put to waste.


Click the link below to see video, photos, and download arduino file!--->








smallscanandy.jpg

andyprojfront.jpg

andywiring.jpg

finalprojcode.jpg

Download file

December 12, 2007

Prayer Flags

Hi All,
Thanks you so much for the valuable feed back yesterday. Some people as about the source code so I'm sending it as a like. The code is a combination of the Jitter Tutorial patch "16jNamedMatrices.pat" and "Arduino2MaxOctober2007." I want to extend a special thanks to Ben for all his help!


Good luck to everyone presenting tomorrow.

Charlot

Download file

December 11, 2007

Interested in working with LCD screens --> arduino?

Check this out!

http://www.arduino.cc/playground/Code/LCD

Emergent Identity

Interactive documentation in process:

http://www.tankoutsidethebox.com/emergentID/index.html

December 10, 2007

the Inter-Active and the In-Tangible

The final project presents you with an opportunity to fully realize a piece that can be experienced by people who have no knowledge of your intentions.

This is in contrast to the Touch project that was intended to be in process, with a focus on the sensory experience of Touch and less emphasis on the relationship between the sensory input and the experience that would be activated.

A conversation exploring experiences related to your ideas of what is interactive and what is intangible provided points of departure. Some people proposed alternative final project topics as well.

We have had periodic discussions to provide feedback and to support your process of developing your final presentation.

Everyone is involved in some aspect of new work, things that you have not explored technically and/or conceptually. A significant part of the process involves problem-solving, perseverance and seeking existing resources to help you as you continue. Each of you has already shown a capacity for this process.

Although it can be challenging, do not lose sight of the experience that you are imagining.

We are looking forward to experiencing your new works.

Please document your work.

Final Project
- Written project description
- Concept drawing and/or diagram of your project idea
- Video of your prototype in action. (you can archive your video via Media Mill)
- Photo of your prototype.
- Close up photo of your electronics/circuits.
- Photo or Screen grab of your program.
- Uploaded file of your program.
- Description of what, if anything, you would change about this project

All Documentation Due - Midnight Tuesday 12/18

We are concluding an interesting and challenging semester exploring concepts related to interactive art and new media technologies for developing our ideas.


Please add your documentation to the blog for review prior to 12 midnight on Tuesday December 18th, 2007.

Documentation for the semester includes:

Touch project
- Written project description
- Concept drawing and/or diagram of your project
- Video of your prototype in action. (you can archive your video via Media Mill)
- Photo of your prototype.
- Close up photo of your electronics/circuits.
- Photo or Screen grab of your program.
- Uploaded file of your program.

Documentation of your Artist Presentation
- Link to examples of the artist's work
- Describe how this artist's work informs your own thinking.

Final Project
- Written project description
- Concept drawing and/or diagram of your project idea
- Video of your prototype in action. (you can archive your video via Media Mill)
- Photo of your prototype.
- Close up photo of your electronics/circuits.
- Photo or Screen grab of your program.
- Uploaded file of your program.
- Description of what, if anything, you would change about this project

Process
- any examples of work in process - things that worked, things that did not work, things that you were curious about.

Tonight! LAST MINUTE HELP STARTING AT 5


meet me in W123 !! we'll get to work!

December 6, 2007

issues

My goal is simple to make the button through the arduino turn off one movie in Maxmsp and turn on another. But I can't even get the maxmsp patch to read the arduino's analog pins anymore, so I guess that is the first goal. My next issue is that I I can't find the appropriate patch. So if anyone has time or expertise to help me that would be greatly appreciated. My maxmsp patch is as follows:

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 266 171 29 196617 r a4;
#P newex 311 171 29 196617 r a5;
#P newex 223 171 29 196617 r a3;
#P newex 179 171 29 196617 r a2;
#P newex 135 171 29 196617 r a1;
#P newex 90 171 29 196617 r a0;
#P window setfont "Sans Serif" 10.;
#P number 90 232 40 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 135 232 40 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 179 232 40 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 223 232 40 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 266 232 40 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 311 232 40 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont Verdana 12.;
#P comment 108 259 225 1034747916 Reading the Arduino's analog pins;
#P user panel 73 159 300 128;
#X brgb 130 218 232;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P window setfont "Sans Serif" 9.;
#P newex 458 332 35 196617 r d12;
#P newex 501 332 35 196617 r d13;
#P newex 415 332 35 196617 r d11;
#P newex 373 332 35 196617 r d10;
#P newex 336 332 29 196617 r d9;
#P newex 300 332 29 196617 r d8;
#P newex 229 332 29 196617 r d6;
#P newex 264 332 29 196617 r d7;
#P newex 193 332 29 196617 r d5;
#P newex 158 332 29 196617 r d4;
#P newex 124 332 29 196617 r d3;
#P newex 91 332 29 196617 r d2;
#P window setfont Verdana 12.;
#P comment 111 417 223 1034747916 Reading the Arduino's digital pins;
#P user led 91 391 17 17 3 150;
#P user led 501 391 17 17 3 150;
#P user led 458 391 17 17 3 150;
#P user led 415 391 17 17 3 150;
#P user led 373 391 17 17 3 150;
#P user led 336 391 17 17 3 150;
#P user led 300 391 17 17 3 150;
#P user led 264 391 17 17 3 150;
#P user led 229 391 17 17 3 150;
#P user led 193 391 17 17 3 150;
#P user led 158 391 17 17 3 150;
#P user led 124 391 17 17 3 150;
#P user panel 75 319 479 137;
#X brgb 130 218 232;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P window setfont "Sans Serif" 9.;
#P message 1119 736 61 196617 jit.qt.effect;
#P message 1066 736 52 196617 jit.traffic;
#P hidden newex 969 799 104 196617 bgcolor 220 220 192;
#P message 1002 736 63 196617 jit.scalebias;
#P comment 969 722 48 196617 see also:;
#P hidden newex 969 758 64 196617 prepend help;
#P message 969 736 32 196617 jit.op;
#P hidden newex 969 779 45 196617 pcontrol;
#P hidden newex 969 702 93 196617 jit.obref jit.brcosa;
#P button 969 677 15 0;
#P comment 985 679 112 196617 • view html reference.;
#P user jit.fpsgui 646 927 60 196617 0;
#P newex 883 511 45 196617 loadbang;
#P message 883 534 17 196617 1.;
#P flonum 929 569 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 784 569 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 861 569 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 929 588 69 196617 saturation \$1;
#P message 784 588 70 196617 brightness \$1;
#P message 861 588 61 196617 contrast \$1;
#P newex 688 647 30 196617 print;
#P message 743 506 27 196617 stop;
#P newex 646 623 52 196617 jit.brcosa;
#B color 5;
#P user jit.pwindow 645 676 322 242 0 1 0 0 1 0;
#P flonum 774 485 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 774 506 42 196617 rate \$1;
#P message 711 506 28 196617 read;
#P flonum 680 485 35 9 0.5 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P toggle 646 485 15 0;
#P newex 646 505 44 196617 metro 2;
#P newex 646 551 103 196617 jit.qt.movie 320 240;
#P comment 810 662 112 196617 supports: 4 plane char.;
#P message 576 741 61 196617 jit.qt.effect;
#P message 523 741 52 196617 jit.traffic;
#P hidden newex 426 804 104 196617 bgcolor 220 220 192;
#P message 459 741 63 196617 jit.scalebias;
#P comment 426 727 48 196617 see also:;
#P hidden newex 426 763 64 196617 prepend help;
#P message 426 741 32 196617 jit.op;
#P hidden newex 426 784 45 196617 pcontrol;
#P hidden newex 426 707 93 196617 jit.obref jit.brcosa;
#P button 426 682 15 0;
#P comment 442 684 112 196617 • view html reference.;
#P user jit.fpsgui 103 932 60 196617 0;
#P newex 340 516 45 196617 loadbang;
#P message 340 539 17 196617 1.;
#P flonum 386 574 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 241 574 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 318 574 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 386 593 69 196617 saturation \$1;
#P message 241 593 70 196617 brightness \$1;
#P message 318 593 61 196617 contrast \$1;
#P newex 145 652 30 196617 print;
#P message 200 511 27 196617 stop;
#P newex 103 628 52 196617 jit.brcosa;
#B color 5;
#P user jit.pwindow 102 681 322 242 0 1 0 0 1 0;
#P flonum 231 490 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 231 511 42 196617 rate \$1;
#P message 168 511 28 196617 read;
#P flonum 137 490 35 9 0.5 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P toggle 103 490 15 0;
#P newex 103 510 44 196617 metro 2;
#P newex 103 556 103 196617 jit.qt.movie 320 240;
#P comment 267 667 112 196617 supports: 4 plane char.;
#P newex 1 495 54 196617 jit.brcosa;
#P hidden newex 312 10 54 196617 r portinfo;
#P user umenu 315 40 149 196647 1 64 56 1;
#X setrgb 12 0 214 255 255 255 255 255 255 221 221 221 170 170 170 119 119 119 187 187 187;
#X add modem;
#X add usbserial-A4001o2X;
#X add Hackmendie-Dial-upnetwo-2;
#X add Bluetooth-Modem;
#X add Bluetooth-Modem;
#X add 5;
#X add 6;
#X add 7;
#P toggle 75 34 22 0;
#P window setfont "Sans Serif" 12.;
#P comment 70 11 40 196620 start;
#P window setfont "Sans Serif" 9.;
#N vpatcher 18 44 1032 764;
#P origin 76 34;
#P window setfont "Sans Serif" 9.;
#P window linecount 0;
#P newex 976 191 36 196617 r help;
#P window linecount 1;
#P newex 1173 205 64 196617 s portselect;
#B color 1;
#P newex 35 276 64 196617 r portselect;
#B color 1;
#P window linecount 0;
#P newex 229 447 54 196617 s portinfo;
#P window linecount 1;
#N vpatcher 13 88 484 450;
#P outlet 24 246 20 0;
#P inlet 24 32 20 0;
#P window setfont "Sans Serif" 12.;
#P newex 304 196 127 196620 prepend setitem 7;
#B color 1;
#P newex 264 170 127 196620 prepend setitem 6;
#B color 1;
#P newex 224 145 127 196620 prepend setitem 5;
#B color 1;
#P newex 184 119 127 196620 prepend setitem 4;
#B color 1;
#P newex 143 197 127 196620 prepend setitem 3;
#B color 1;
#P newex 104 171 127 196620 prepend setitem 2;
#B color 1;
#P newex 64 146 127 196620 prepend setitem 1;
#B color 1;
#P newex 24 120 127 196620 prepend setitem 0;
#B color 1;
#P newex 24 89 293 196620 unpack s s s s s s s s;
#B color 1;
#P newex 24 59 93 196620 route port;
#B color 1;
#P comment 167 235 258 196620 Manages serial name data. Each port name (up to 8 \, in this case) replaces an item in the drop-down menu of the parent patch (items in drop-down are numbered 0 - 7).;
#B color 1;
#P connect 11 0 1 0;
#P lcolor 2;
#P connect 1 0 2 0;
#P lcolor 2;
#P connect 2 0 3 0;
#P lcolor 2;
#P connect 3 0 12 0;
#P lcolor 2;
#P connect 4 0 12 0;
#P lcolor 2;
#P connect 5 0 12 0;
#P lcolor 2;
#P connect 6 0 12 0;
#P lcolor 2;
#P connect 7 0 12 0;
#P lcolor 2;
#P connect 8 0 12 0;
#P lcolor 2;
#P connect 9 0 12 0;
#P lcolor 2;
#P connect 10 0 12 0;
#P lcolor 2;
#P connect 2 1 4 0;
#P lcolor 2;
#P connect 2 2 5 0;
#P lcolor 2;
#P connect 2 3 6 0;
#P lcolor 2;
#P connect 2 4 7 0;
#P lcolor 2;
#P connect 2 5 8 0;
#P lcolor 2;
#P connect 2 6 9 0;
#P lcolor 2;
#P connect 2 7 10 0;
#P lcolor 2;
#P pop;
#P newobj 229 412 50 196617 p sorter;
#B color 1;
#P newex 35 307 91 196617 prepend port;
#B color 1;
#P button 350 244 27 0;
#P window linecount 0;
#P comment 394 162 284 196617 Set the sample rate: between every 15ms and every 100ms.;
#P number 350 177 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P user hslider 350 120 38 153 86 1 15 0;
#P newex 275 244 48 196617 loadbang;
#P newex 208 267 43 196617 delay 4;
#P number 1234 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 1169 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 1104 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 1039 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 974 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 909 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 844 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 779 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 714 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 649 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 584 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 519 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 454 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 389 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 324 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 259 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 194 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 129 582 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 18.;
#P comment 395 86 237 196626 Serial Port Settings;
#P window setfont "Sans Serif" 9.;
#P newex 976 242 47 196617 pcontrol;
#P message 976 221 30 196617 open;
#N vpatcher 483 171 1200 738;
#P origin 0 -1;
#P window setfont "Sans Serif" 10.;
#P window linecount 0;
#P comment 254 165 48 196618 start;
#P comment 412 162 56 196618 settings;
#P button 339 190 23 5;
#P comment 335 163 35 196618 help;
#P window linecount 2;
#P comment 33 79 493 196618 Arduino2Max uses an Arduino board programmed with the Arduino code that watches the Arduino's input pins and makes the pin data available through receive objects anywere in your patch.;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P comment 549 309 61 196617 digital pins;
#P comment 80 309 71 196617 analog pins;
#P button 425 190 23 5;
#P toggle 253 192 21 0;
#N vpatcher -8 44 1006 704;
#P origin 67 15;
#N comlet inlet to open help patch;
#P inlet 666 67 15 0;
#N comlet inlet for patcher control;
#P inlet 1136 64 15 0;
#N comlet 1 or 0 to start/stop serial reads;
#P inlet 73 39 15 0;
#P pop;
#P newobj 253 254 183 196617 p arduinoreader;
#P window setfont "Sans Serif" 10.;
#P comment 35 417 585 196618 A few notes: - Unused inputs will fluctuate between values. This is normal \, as unconected pins do this on their own.;
#P window setfont "Sans Serif" 9.;
#P window linecount 3;
#P comment 189 343 319 196617 Once you have the above patch \, you can get Arduino's analog and digital values anywere in your own patcher by making a "receive a#" or "receive d#" object \, where # is the input pin you want to read.;
#P window linecount 1;
#P newex 600 336 29 196617 r d3;
#P newex 544 336 29 196617 r d2;
#P newex 124 336 29 196617 r a1;
#P newex 67 336 29 196617 r a0;
#P user led 544 364 17 17 0 150;
#P user led 600 364 17 17 3 150;
#P window setfont "Sans Serif" 10.;
#P number 67 364 40 10 0 0 0 3 0 0 0 255 189 156 222 222 222 0 0 0;
#P number 124 364 40 10 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 2;
#P comment 35 462 655 196618 - Arduino2Max runs flawlessly on a 1.83 GHz Macbook Pro \; your mileage may vary.;
#P comment 36 491 636 196618 - Patch adapted from Thomas Ouellet Fredericks' "Simple Message Sytem" example. Serial writes are possible \, but not implemented here: see the S.M.S. code. Thanks to Seejay James one the MAX list for the pull-down menu code!;
#P comment 35 433 643 196618 - You may have to change your serial port to suit the port in use. Click on the yellow button to see the guts of the serial read and to make changes to how the patch talks to the serial port.;
#P window setfont "Sans Serif" 9.;
#P window linecount 7;
#P comment 97 175 125 196617 At minimum \, you need the "arduinoreader" patcher at the right \, which does the work of reading the pins. The toggle turns serial reads from the Arduino on and off.;
#P comment 495 179 111 196617 The right-hand yellow button opens the patch so that you can adjust settings \, like how often to read from the Arduino and which port to use.;
#P window setfont "Sans Serif" 18.;
#P window linecount 1;
#P comment 33 33 163 196626 Arduino2Max;
#B frgb 21 56 9;
#P window setfont "Sans Serif" 10.;
#P comment 218 39 334 196618 Read the 6 analog and 12 digital input pins of the Arduino into MAX.;
#P user panel 18 29 670 101;
#X brgb 255 247 207;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P hidden inlet 594 21 15 0;
#P user panel 18 412 671 114;
#X brgb 255 247 207;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 43 332 128 57;
#X brgb 130 218 232;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 245 154 227 129;
#X brgb 130 218 232;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P user panel 515 329 139 57;
#X brgb 130 218 232;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P connect 17 0 14 0;
#P connect 18 0 13 0;
#P fasten 24 0 23 0 258 224 258 224;
#P connect 30 0 23 1;
#P fasten 25 0 23 2 430 226 430 226;
#P connect 19 0 16 0;
#P connect 20 0 15 0;
#P pop;
#P newobj 976 264 100 196617 p arduino2max_help;
#P newex 61 137 41 196617 r onoff;
#N comlet inlet for patcher control;
#P inlet 1173 146 15 0;
#P window linecount 1;
#P comment 978 289 168 196617 help and patcher control stuff.;
#N comlet 1 or 0 to start/stop serial reads;
#P inlet 129 120 15 0;
#P comment 397 251 243 196617 Print a list of serial ports to the max window;
#P button 208 299 15 0;
#N vpatcher 289 44 1127 677;
#P outlet 99 316 15 0;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 107 210 31 196617 spell;
#P window linecount 0;
#P message 90 241 20 196617 13;
#P newex 90 127 27 196617 t b l;
#P inlet 90 70 15 0;
#P connect 0 0 1 0;
#P fasten 1 0 2 0 95 235 95 235;
#P fasten 2 0 4 0 95 286 104 286;
#P fasten 3 0 4 0 112 286 104 286;
#P connect 1 1 3 0;
#P pop;
#P newobj 129 290 53 196617 p convert;
#P newex 1169 697 35 196617 s d12;
#B color 14;
#P newex 1234 697 35 196617 s d13;
#B color 14;
#P newex 1104 697 35 196617 s d11;
#B color 14;
#P newex 1039 697 35 196617 s d10;
#B color 14;
#P newex 974 697 29 196617 s d9;
#B color 14;
#P newex 909 697 29 196617 s d8;
#B color 14;
#P newex 779 697 29 196617 s d6;
#B color 14;
#P newex 844 697 29 196617 s d7;
#B color 14;
#P newex 714 697 29 196617 s d5;
#B color 14;
#P newex 649 697 29 196617 s d4;
#B color 14;
#P newex 584 697 29 196617 s d3;
#B color 14;
#P newex 519 697 29 196617 s d2;
#B color 14;
#P newex 389 697 29 196617 s a4;
#B color 14;
#P newex 454 697 29 196617 s a5;
#B color 14;
#P newex 324 697 29 196617 s a3;
#B color 14;
#P newex 259 697 29 196617 s a2;
#B color 14;
#P newex 194 697 29 196617 s a1;
#B color 14;
#P newex 129 697 29 196617 s a0;
#B color 14;
#N vpatcher 582 197 863 594;
#P window setfont "Sans Serif" 9.;
#P newex 137 226 64 196617 fromsymbol;
#P newex 137 182 40 196617 itoa;
#P newex 137 148 61 196617 zl group 78;
#P newex 137 84 53 196617 sel 10 13;
#N comlet out;
#P outlet 137 298 26 0;
#N comlet in;
#P inlet 137 37 15 0;
#P connect 0 0 2 0;
#P fasten 2 2 3 0 184 124 142 124;
#P fasten 2 1 3 0 163 124 142 124;
#P connect 3 0 4 0;
#P connect 4 0 5 0;
#P connect 5 0 1 0;
#P pop;
#P newobj 129 412 73 196617 p convertback;
#P newex 129 470 52 196617 route list;
#P newex 1234 611 49 196617 change 0;
#B color 6;
#P newex 1169 611 49 196617 change 0;
#B color 6;
#P newex 1104 611 49 196617 change 0;
#B color 6;
#P newex 1039 611 49 196617 change 0;
#B color 6;
#P newex 974 611 49 196617 change 0;
#B color 6;
#P newex 909 611 49 196617 change 0;
#B color 6;
#P newex 844 611 49 196617 change 0;
#B color 6;
#P newex 779 611 49 196617 change 0;
#B color 6;
#P newex 714 611 49 196617 change 0;
#B color 6;
#P newex 649 611 49 196617 change 0;
#B color 6;
#P newex 584 611 49 196617 change 0;
#B color 6;
#P newex 519 611 49 196617 change 0;
#B color 6;
#P newex 454 611 49 196617 change 0;
#B color 14;
#P newex 389 611 49 196617 change 0;
#B color 14;
#P newex 324 611 49 196617 change 0;
#B color 14;
#P newex 259 611 49 196617 change 0;
#B color 14;
#P newex 194 611 49 196617 change 0;
#B color 14;
#P newex 129 611 49 196617 change 0;
#B color 14;
#P newex 129 528 1131 196617 unpack i i i i i i i i i i i i i i i i i i;
#P message 129 240 14 196617 r;
#P toggle 129 157 15 0;
#P newex 129 204 52 196617 metro 15;
#P newex 129 365 110 196617 serial a 115200 8 1 0;
#P message 350 301 32 196617 print;
#P user panel 327 76 398 255;
#X brgb 158 223 254;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P connect 83 0 80 0;
#P connect 48 0 4 0;
#P fasten 51 0 4 0 66 155 134 155;
#P connect 4 0 3 0;
#P connect 3 0 5 0;
#P connect 5 0 45 0;
#P connect 45 0 2 0;
#P fasten 46 0 2 0 213 333 134 333;
#P fasten 1 0 2 0 355 341 134 341;
#P connect 80 0 2 0;
#P connect 2 0 26 0;
#P connect 26 0 25 0;
#P connect 25 0 6 0;
#P connect 6 0 56 0;
#P connect 56 0 7 0;
#P fasten 7 0 27 0 134 678 134 678;
#P fasten 77 0 3 1 355 199 176 199;
#P connect 6 1 57 0;
#P connect 57 0 8 0;
#P fasten 8 0 28 0 199 680 199 680;
#P fasten 3 0 74 0 134 232 213 232;
#P connect 74 0 46 0;
#P connect 2 1 81 0;
#P connect 81 0 82 0;
#P connect 6 2 58 0;
#P connect 58 0 9 0;
#P fasten 9 0 29 0 264 680 264 680;
#P connect 6 3 59 0;
#P connect 59 0 10 0;
#P fasten 10 0 30 0 329 680 329 680;
#P fasten 76 0 77 0 355 167 355 167;
#P connect 79 0 1 0;
#P fasten 75 0 1 0 280 281 355 281;
#P connect 6 4 60 0;
#P connect 60 0 11 0;
#P fasten 11 0 32 0 394 680 394 680;
#P connect 6 5 61 0;
#P connect 61 0 12 0;
#P fasten 12 0 31 0 459 680 459 680;
#P connect 6 6 62 0;
#P connect 62 0 13 0;
#P fasten 13 0 33 0 524 680 524 680;
#P connect 6 7 63 0;
#P connect 63 0 14 0;
#P fasten 14 0 34 0 589 680 589 680;
#P connect 6 8 64 0;
#P connect 64 0 15 0;
#P fasten 15 0 35 0 654 680 654 680;
#P connect 6 9 65 0;
#P connect 65 0 16 0;
#P fasten 16 0 36 0 719 680 719 680;
#P fasten 6 10 66 0 784 570 784 570;
#P fasten 66 0 17 0 784 604 784 604;
#P fasten 17 0 38 0 784 680 784 680;
#P connect 6 11 67 0;
#P connect 67 0 18 0;
#P fasten 18 0 37 0 849 680 849 680;
#P connect 6 12 68 0;
#P connect 68 0 19 0;
#P fasten 19 0 39 0 914 680 914 680;
#P connect 6 13 69 0;
#P connect 69 0 20 0;
#P fasten 20 0 40 0 979 680 979 680;
#P connect 85 0 53 0;
#P hidden connect 53 0 54 0;
#P hidden connect 54 0 52 0;
#P connect 6 14 70 0;
#P connect 70 0 21 0;
#P fasten 21 0 41 0 1044 680 1044 680;
#P connect 6 15 71 0;
#P connect 71 0 22 0;
#P fasten 22 0 42 0 1109 680 1109 680;
#P connect 6 16 72 0;
#P connect 72 0 23 0;
#P fasten 23 0 44 0 1174 680 1174 680;
#P connect 50 0 84 0;
#P connect 6 17 73 0;
#P connect 73 0 24 0;
#P fasten 24 0 43 0 1239 680 1239 680;
#P pop;
#P newobj 75 100 247 196617 p arduinoSerialreader;
#P user panel 59 1 487 129;
#X brgb 130 218 232;
#X frgb 0 0 0;
#X border 0;
#X rounded 0;
#X shadow 0;
#X done;
#P connect 76 0 10 0;
#P connect 76 0 42 0;
#P hidden connect 65 0 63 0;
#P hidden fasten 70 0 65 0 1124 754 974 754;
#P hidden fasten 69 0 65 0 1071 754 974 754;
#P hidden fasten 67 0 65 0 1007 754 974 754;
#P hidden connect 64 0 65 0;
#P hidden connect 61 0 62 0;
#P connect 56 0 53 0;
#P fasten 57 0 55 0 888 559 789 559;
#P fasten 57 0 54 0 888 559 866 559;
#P fasten 57 0 56 0 888 559 934 559;
#P connect 58 0 57 0;
#P connect 54 0 51 0;
#P connect 55 0 52 0;
#P connect 46 0 45 0;
#P connect 48 1 50 0;
#P connect 43 0 41 1;
#P connect 47 0 59 0;
#P connect 48 0 47 0;
#P fasten 51 0 48 0 866 613 651 613;
#P fasten 52 0 48 0 789 613 651 613;
#P fasten 53 0 48 0 934 613 651 613;
#P connect 40 0 48 0;
#P connect 41 0 40 0;
#P fasten 45 0 40 0 779 536 651 536;
#P fasten 44 0 40 0 716 536 651 536;
#P fasten 49 0 40 0 748 536 651 536;
#P connect 42 0 41 0;
#P fasten 95 0 82 0 506 365 506 365;
#P connect 96 0 81 0;
#P hidden connect 33 0 31 0;
#P hidden fasten 38 0 33 0 581 759 431 759;
#P hidden fasten 37 0 33 0 528 759 431 759;
#P hidden fasten 35 0 33 0 464 759 431 759;
#P hidden connect 32 0 33 0;
#P hidden connect 29 0 30 0;
#P connect 94 0 80 0;
#P connect 24 0 21 0;
#P fasten 25 0 23 0 345 564 246 564;
#P fasten 25 0 22 0 345 564 323 564;
#P fasten 25 0 24 0 345 564 391 564;
#P connect 93 0 79 0;
#P connect 26 0 25 0;
#P connect 92 0 78 0;
#P connect 22 0 19 0;
#P hidden connect 5 0 4 0;
#P connect 4 0 1 1;
#P connect 109 0 99 0;
#P connect 91 0 77 0;
#P connect 110 0 100 0;
#P connect 89 0 76 0;
#P connect 23 0 20 0;
#P connect 14 0 13 0;
#P fasten 90 0 75 0 234 361 234 361;
#P connect 108 0 101 0;
#P connect 88 0 74 0;
#P connect 107 0 102 0;
#P connect 87 0 73 0;
#P connect 16 1 18 0;
#P connect 11 0 9 1;
#P connect 106 0 103 0;
#P connect 86 0 72 0;
#P connect 15 0 27 0;
#P connect 16 0 15 0;
#P fasten 19 0 16 0 323 618 108 618;
#P fasten 20 0 16 0 246 618 108 618;
#P fasten 21 0 16 0 391 618 108 618;
#P connect 8 0 16 0;
#P connect 9 0 8 0;
#P fasten 13 0 8 0 236 541 108 541;
#P fasten 12 0 8 0 173 541 108 541;
#P fasten 17 0 8 0 205 541 108 541;
#P connect 10 0 9 0;
#P connect 85 0 83 0;
#P connect 105 0 104 0;
#P fasten 3 0 1 0 80 77 80 77;
#P window clipboard copycount 111;

wow!! We could (re)make this!

December 5, 2007

TONIGHT!!

Hey All-
Just a reminder that I will be in w123 at 5 tonight--- send me an email if you are planning on coming late (as in after 7 or so)--- that way I will stick around for you!

Ben