Invisible Technology - scottgarner/workshops GitHub Wiki
Invisible Technology
What is Invisible Technology
- Craft and materials are central.
- Technology recedes rather than intruding.
- Creates magical experiences.
Some of My Work
The 20th Century Future
- Buttons and screens everywhere.
- Sterile environments.
- Totally intrusive devices.
Late 20th Century Reality
- Intrusive plastic rectangles and tech.
- Traditional spaces remained largely unchanged.
- Unimaginative engineers and consumers.
Early 21st Century Reality
- Clumsy technological experiences.
- Massive friction between user and hardware.
- Still intrusive, often somewhat regressive.
How Humans Live and Communicate
- We like warmth, tactility, real materials.
- We use speech and gesture to express concepts.
- These patterns have remained for centuries.
Anatomy of an Interaction
- Input (Sensors and Conductors)
- Processing (Brain)
- Output (Indicators and Actuators)
Overview of Simple Sensors
- Think of human senses, but multiplied.
- Huge array of sensors for specific tasks.
- Often inexpensive and relatively easy to use.
Indicators and Actuators
- Lights, sounds, etc. to indicate.
- Motors, solenoids etc. to move.
- Actuators are often more complicated.
Brains of the Operation
- Microcontrollers and tiny computers.
- Web services and communication.
- Piecing together existing elements can work wonders.
Electromagnetic Spectrum (Invisible Communication)
- Everything is electromagnetic.
- (Except sound...)
- WiFi and light are the same "thing".
Media and Tools
- Leverage all aspects of traditional craft and art making.
- Conductive fabrics, threads and other soft materials.
- Conductive inks, copper tape, metals and other hard materials.
Tech Craft Resources
Hardware/Material Resources
Service Resources
Invisible Technology (Session Two)
Problems and Solutions
- Identifying problems vs. solving problems.
- The purpose of art vs. what is art.
- Creating things: Useful, interesting or beautiful.
- Tolstoy, Wilde, Vonnegut art definitions.
Simple Sensing
- Sight with a photoresistor.
- Touch with capacitive/resistive sensing.
- Hearing with piezos/vibration sensors.
The Circuits and Code
- Analog vs. digital.
- Serial communication.
- LED output (digital or PWM).
- Multimeter.
Using the Data
- Processing via serial.
- Unity via serial.
- Other options (keyboard input, wifi, bluetooth).
Arts and Crafts
- Copper tape, foil, conductive thread, conductive ink, graphite, wire as conductors.
- Paper, wood veneer, vinyl, fabric as substrates.
Arduino Examples
// Touch sensing example.
// Requires capacitivesensor library.
// https://playground.arduino.cc/Main/CapacitiveSensor?from=Main.CapSense
#include <CapacitiveSensor.h>
int LED_PIN = 13;
CapacitiveSensor cs = CapacitiveSensor(4, 2);
void setup()
{
pinMode(LED_PIN, OUTPUT);
Serial.begin(9600);
}
void loop()
{
long csLevel = cs.capacitiveSensor(30);
if (csLevel > 1000) {
digitalWrite(LED_PIN, HIGH);
} else {
digitalWrite(LED_PIN, LOW);
}
Serial.println(csLevel);
delay(10);
}
// Vibration sensing example.
const int PIEZO_PIN = A0;
const int LED_PIN = 13;
void setup()
{
pinMode(LED_PIN, OUTPUT);
Serial.begin(9600);
}
void loop()
{
int piezoLevel = analogRead(PIEZO_PIN);
if (piezoLevel > 12) {
digitalWrite(LED_PIN, HIGH);
} else {
digitalWrite(LED_PIN, LOW);
}
Serial.println(piezoLevel);
}
// Photoresistor example.
// https://www.instructables.com/id/How-to-use-a-photoresistor-or-photocell-Arduino-Tu/
int PHOTO_PIN = A0;
int LED_PIN = 10;
void setup() {
pinMode(PHOTO_PIN, INPUT);
pinMode(LED_PIN, OUTPUT);
Serial.begin(9600);
}
void loop() {
int photoLevel = analogRead(PHOTO_PIN);
if (photoLevel < 200) {
digitalWrite(LED_PIN, HIGH);
} else {
digitalWrite(LED_PIN, LOW);
}
Serial.println(photoLevel);
byte data = photoLevel/4;
Serial.write(data);
delay(1000.0/30.0);
}