Far Away..... So Close The Hammock
Team 4: Edwina, Ellan

When going to the beach for a total relax vacation: do you take your computer? Do you at least take your phone? Do you look to get away from it all but have that little minor constant concern of: what if something very urgent comes about and I miss it?
Well, the hammock hopes to address those concerns, giving you a subtle notice if something truly important needs your attention. Best thing? "Important" is defined by you.
Important calls form important people?
Important emails, weather reports, RSS feeds?
You need an alarm clock to wake you up from your nap but, being outside, you don't want to worry about having your phone by you?
By pairing up the affordances of the android with the connotations of a hammock, we hope to provide a getaway cocoon for the connected person.

The Form

We took an image from Ernst Haeckel's Spumelaria,



and turned it into silicone mold by: converting it into a vector drawing





laser cutting it into cardboard to prototype




laser cutting it into acrylic




making a 2 step mold:




a silicone one out of the acrylic




followed by a silicone one out of the previous silicone one. We then placed the LEDs and cast the final version.









Linking the LED's - testing connections


Originally we wanted to crochet the hammock with conductive and insulating yarns. But we also wanted the design to be robust enough to withstand outdoor conditions without compromising the conductivity of the yarns. We wanted to take advantage of the stretch characteristics provided by crochet as well as the easy attachment of LEDs by crocheting through the +/- pins (formed into easily identifiable triangular or circular shapes).




We attached the LED's in series by crocheting them with low resistance yarn.
Given the length of it, the LED's further to power were dimer than the closet ones. The problem was solved by connecting both ends of the series together.

Code:
// load and instance the Amarino library

  1. include <MeetAndroid.h>

MeetAndroid meetAndroid;

// define pins int indicatorLED = 13; int BRIGHTNESS = 1;

void setup() {

  //register the bluetooth serial port

  Serial.begin(57600);

  // register callback functions, called when an event occurs.
  meetAndroid.registerFunction(importantCall, 'a');
  meetAndroid.registerFunction(brightness, 'b');
  meetAndroid.registerFunction(emergency, 'c');


  // set the leds to output
  pinMode(indicatorLED, OUTPUT);

  // set lights to default
  digitalWrite(indicatorLED, BRIGHTNESS);

}

void loop() {

  meetAndroid.receive(); // receive events. forever.

}

/** Runs when there's an important call */ void importantCall(byte flag, byte numOfValues) {

  //blink for 10 seconds, cycling 5 times a second

  for(int i = 0 ; i==100 ; i++) {
    digitalWrite(indicatorLED, 1);
    delay(100);
    digitalWrite(indicatorLED, 0);
    delay(100);
  }
  digitalWrite(indicatorLED, BRIGHTNESS);

}

/** Runs when there's an 'emergency' */ void emergency(byte flag, byte numOfValues) {

  //blink for 10 seconds, cycling once per second
  for(int i=0 ; i==10 ; i++) {
    digitalWrite(indicatorLED, 1);
    delay(500);
    digitalWrite(indicatorLED, 0);
    delay(500);
  }
  digitalWrite(indicatorLED, BRIGHTNESS);

}

/** Runs whenever the brightness level changes */ void brightness (byte flag, byte numOfValues) {

    //change the default brightness and change to it

- Hide quoted text -

    BRIGHTNESS = meetAndroid.getInt();
    digitalWrite(indicatorLED, BRIGHTNESS);

}

Video of the hammock receiving an important call