Day 2

The day started with teams presenting their ideas for the target group. The relationship we decided to focus on was that between people with a high-risk job that involves doing some field work, ie. soldier, and war journalists, and their families. The nature of our target group’s work does not allow people to communicate with their families as often as they would like. For example, a National Geographic photographer working on a report in Afghanistan cannot take his laptop with him and Skype with his family, nor can a soldier on duty, and thus a practical electronic interface that can communicate emotions with simple input would be very useful. We established the creation of such an interface as an objective. In particular, we pictured our product as a collection of devices: simple garments for the family members back home, such as wristbands, each with the capability of sending some kind of signal to a more complex garment worn by the person out in the high-risk environment individually. We envision the complex garment to be something like a shirt with the ability of sending signals to the garments back home simultaneously.

The following parts of the lab were practical implementations of concepts learned on site. First, we knit a variable resistor. Its resistance changes proportional to the stretch we apply to it. The following video shows it in action: as its length increases (i.e. the more we stretch it), the less resistance it has and so current can flow to the LED in the simple circuit setup.

Afterwards, we used a conducting material between neoprene pads to produce a pressure sensor. Our setup used two full strips of conductive fibre so the sensor was extremely sensitive – even the smallest touch produced a significant difference in the resistance of the material:

This pressure sensor was then attached to the Arduino Lilypad and we connected the circuit to our computer. Using Processing 1.5.1 and the code posted below, we have managed to graph our data and visualize the applied pressure.

The following code produces the graphing process:

 * Simple Read
 * Read data from the serial port and change the color of a rectangle
 * when a switch connected to a Wiring or Arduino board is pressed and released.
 * This example works with the Wiring / Arduino program that follows below.

import processing.serial.*;

Serial myPort;  // Create object from Serial class
int val;      // Data received from the serial port

void setup()
  size(200, 200);
  // I know that the first port in the serial list on my mac
  // is always my  FTDI adaptor, so I open Serial.list()[0].
  // On Windows machines, this generally opens COM1.
  // Open whatever port is the one you're using.
  String portName = Serial.list()[0];
  myPort = new Serial(this, portName, 9600);

void draw()
  if ( myPort.available() > 0) {  // If data is available,
    val =;         // read it and store it in val
  background(255);             // Set background to white
  if (val == 0) {              // If the serial value is 0,
    fill(0);                   // set fill to black
  else {                       // If the serial value is not 0,
    fill(204);                 // set fill to light gray
  rect(50, 50, 100, 100);


// Wiring / Arduino Code
// Code for sensing a switch status and writing the value to the serial port.

int switchPin = 4;                       // Switch connected to pin 4

void setup() {
  pinMode(switchPin, INPUT);             // Set pin 0 as an input
  Serial.begin(9600);                    // Start serial communication at 9600 bps

void loop() {
  if (digitalRead(switchPin) == HIGH) {  // If switch is ON,
    Serial.print(1, BYTE);               // send 1 to Processing
  } else {                               // If the switch is not ON,
    Serial.print(0, BYTE);               // send 0 to Processing
  delay(100);                            // Wait 100 milliseconds


Leave a Reply

Your email address will not be published. Required fields are marked *


Spam protection by WP Captcha-Free