**FINAL** Specs Light & Health Lighting Fixture

Breathing Scoby Lamp 

PDF for submission

Folder code, images, Ai File

Sconce Light: Hanged against the wall.



Inspired by the 4-7-8 Breathing Technique, one of  the most recognizable mindful breathing patterns.Our goal was to create a lighting fixture that was multi-purpose and interactive.

Aside from providing functional lighting this fixture aims to recreate the 4-7-8 breathing pattern.  A person interacting with this  light will be able to follow along the lighting pattern as a guide and self-regulate their breathing to reduce anxiety and stress. 

Functionality:  The bulbs generate a warm white light, and the “shade” diffuses the luminosity creating a soothing lighting environment.

This fixture  will have 3 different  lighting settings : 

OFF : A switch will place to turn on/ off the power

ON-478 : As soon as the light is turned on,  the first setting will increase and decrease brightness to recreate the breathing pattern. The light will go from a very low brightness to it’s maximum brightness. (breathing in for 4 seconds, holding the breath for 7 seconds, and exhaling for 8 seconds) 

ON - Stable pattern: At any stage of the breathing pattern the light can be stopped and hold a stable Bright lighting pattern.


Location : For this specific sample we are hoping to have our lamp hanging in the waiting room of an MRI unit. After a recent experience in an MRI room we realized that very few things can prepare a person for this event. Our hope is that patients are able to start doing the breathing exercises before they enter the room.

This fixture works as a decorative light and can easily stand on its own due to its symmetric shape. 


----


Part of the research was testing different sample of Scoby with a variety of light sources.








Drying Scoby




Once we had the the perfect Scoby sheet we tested the light with 1 and 2 layers




















Once we had tested the code and knew it was creating the light effect we were looking for, we uploaded it to a ATtiny85. 







Overall the most challenging plant was the coding and circuit building. Thankfully we got some help!






Finish product














See video





Materials


  •  1/2in x 36 in dowel

    • Quantity 4

  • where to buy Home depot  

  • Price $10.97  (April 2022)

    • CUT TO: 

      • 4 pcs size 10"

      • 8 pcs.  size 3"

      • 2 pcs size 3"



  • Wood Screws +3-1/2 in. Star Drive Bugle-Head Construction Screw

    • Quantity 4

  • where to buy Home depot

  • Price: varies per unit



  • Silicon Glue Gun + sticks

  • Where to to buy Amazon

  • Price $ 14.95






  • ATtiny85

  • Quantity 1

  • where to buy seller

  • Price $2.95 (April 2022)


  • Wires

  • Quantity: around 2 ft

  • where to buy seller

  • Price $2.95 (April 2022)


  • BreadBoard 

  • Quantity 1

  • where to buy digikey

  • Price $2.75 (April 2022)


  • SCOBY leather

  • recipe (Page 6)

questions please email : lr2859@nyu.edu



All documentation is on this folder
  • CODE- on pdf
/*
  // Breathing Scoby Lamp  by Daniel Rautenbach & Lorena Rodriguez Ostia
  // Instructor & Guidance by Tom Igoe - https://tigoe.github.io/
  // ITP, NYU May 2022

  // Fade idea  based off of 4-7-8 Breathing Pattern

  // Original sine curve implemented by by Luca Soltoggio - 2015
  https://arduinoelectronics.wordpress.com/2015/05/12/non-blocking-breathing-led/

*/

// Include Math library to make use of exponent and sine functions

#include <math.h>
#define ledPin 4  // declare pin number for LED
#define g4Pin  1 // declare pin number for LED

const int buttonPin = 3;     // the number of the pushbutton pin
bool lastButtonState;    // the previous state of button
bool currentButtonState; // the current state of button
bool buttonSwitch = false;; // swtich to highest value
int i = 0;              // use for increments
int breathe_delay = 10;   // delay between loops
unsigned long breathe_time = millis();   // make use of millis to time sine wave cycles
float prevBrightness;

void setup()
{
  // initialize the pushbutton pin as an input:
  pinMode(buttonPin, INPUT);
}

void loop()
{

  // monitor for when timer reaches delay, then perform function
  if ( (breathe_time + breathe_delay) < millis() ) {
    breathe_time = millis();

    // Luca Soltoggio's sine function manipulated to mimic a more humanistic breathing pattern:
    // Larger period and translated more on the y-axis to avoid total blackout + make use of +255 values to recreate 'breathing holding' plateu

  if (!buttonSwitch)
  {
      float currentBrightness = (exp(sin(i / 2000.0 * PI * 5)) - 0.2) * 108.0;
      analogWrite(ledPin, currentBrightness);  // PWM
      analogWrite(g4Pin, currentBrightness);
      i = i + 1;
  
   
      // Trim the graph to have a flat ceiling until values are > 255 again
      if (currentBrightness > 254) {
        analogWrite(ledPin, 255);
        analogWrite(g4Pin, 255);
      }
   
    
      // Return to original sine after ceiling/plateau
      if (currentBrightness < 254) {
        float currentBrightness = (exp(sin(i / 2000.0 * PI * 5)) - 0.2) * 108.0;
    }

  }


    // Save last button state
    lastButtonState = currentButtonState;
    // Read new state
    currentButtonState = digitalRead(buttonPin);

    // Determine if button is being pressed
    // Toggle light to to produce steady 255 value
    
    if (lastButtonState == LOW && currentButtonState == HIGH) {
      if (buttonSwitch) // If light has been at full brightness
        {
          buttonSwitch = !buttonSwitch;
        }
       else if (!buttonSwitch) // If light has been pulsing
       {
          buttonSwitch = !buttonSwitch;
          analogWrite(ledPin, 255);
          analogWrite(g4Pin, 255);
       }
      
    }
    //  Toggle light to go back to sine function above
    
    //    if (lastButtonState == LOW && currentButtonState == HIGH) {
    //      float prevBrightness = (exp(sin(i / 2000.0 * PI * 5)) - 0.2) * 108.0;
    //      analogWrite(ledPin, prevBrightness);
    //    }
  }
}

// SPECIAL THANKS TO TOM IGOE and BRANDON ROOTS for helping write this code

Popular posts from this blog

Socially Engaged Art and Digital Practice week 9 - Project 2

Socially Engaged Art and Digital Practice : week 5 Materials Presentation

Socially Engaged Art and Digital Practice : week 3