Top Banner
Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Componen t 1 Application C iStuff Input Componen t B iStuff Input Componen t 2 Application 3 Application
17

Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Dec 13, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Intermediary

Translation MapA-> 2,3

C->11->B2->B

A

iStuff Input Component

1

Application

C

iStuff Input Component

B

iStuff Input Component

2

Application

3

Application

Page 2: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Anoto Pen iMouse

iMike

iDog

X10

iStylusiSlider

RF

iButtons

Page 3: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Anoto Pen iMouse

iMike

iDog

X10

iStylusiSlider

RF

iButtons

Page 4: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

iSpeakeriLight

iBuzzer

Page 5: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

iSpeakeriLight

iBuzzer

Page 6: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Event Heap

PatchPanel Proxy

iStuff Device

Transceiver

iStu

ff c

ompo

nent

Application

Wireless connection

iStuff Architecture

Page 7: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Event Heap

PatchPanelIntermediary

PatchPanelGUI

PatchPanel Configuration

PatchPanel Architecture

Page 8: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

iStuff

• Prototyping Desktop GUIs: easy• Prototyping Post-Desktop UIs: hard• Goal: Simplify post-desktop experiments UI• Idea: iStuff := toolkit for prototyping Post-Desktop

UIs– Basic input/output components– Wireless, autonomous– Designed for augmented environment (iRoom)– Lightweight, Cross-platform, simple API

Page 9: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

iButtonsiButtons

X10X10

iPeniPeniDogiDog

iLightiLight

iSlideriSlider

USB receiverUSB receiver

iDialiDial

Page 10: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Taking Advantage of Infrastructure

• 5-line Event Heap based application can talk to iStuff• iStuff device = wireless device + PC proxy/daemon

– Lightweight, cheap, low-power, ... devices

Application

eheap.jar

Event Heap

eheap.jar

PC daemon

iSpeaker

Radio Transmit

eheap.jar

PC proxy

iSlider

Radio Receiver

"iS

tuff

dev

ice"

Page 11: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

iStuff: Evaluation

• Successful sample uses– Start The Room– iPen– iPong

• Great Unified Input Theory:– New paradigm for writing room applications

Page 12: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

www.stanford.edu/~borchers/istuff/

Page 13: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Event Heap app to speak textimport iwork.eheap2.*;class speaktext { // Connects to event heap in static void main(String []args) // arg[0], and sends

AudioEvent { // with the text in arg[1]. try{ EventHeap theHeap=new EventHeap(args[0]); // Connect to

the Event Heap Event myEvent=new Event("AudioEvent"); // Create an event myEvent.setPostValue("AudioCommand", "Read"); // Set its fields myEvent.setPostValue("Text", args[1]); theHeap.putEvent(myEvent); // Put event into Event

Heap } catch(Exception e) { e.printStackTrace(); } }}

>speaktext iw-room2.stanford.edu "Hello World"

Page 14: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Great Unified Input Theory

• iStuff wireless hardware layer can be RF, X-10, Bluetooth, 802.11b, Infrared, Cellular,...

• Offer iStuff as abstraction layer of room devices above this level

• Adopters can– Use our hardware and software designs and replicate devices– Use our software and use off-the-shelf components as iStuff– Implement the "plugins" for new hardware technologies

• Make applications listen only to Event Heap Events

Page 15: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

Summary

• The Stanford iRoom

• Ubicomp requires re-thinking user interface metaphors and architecture

• iStuff as a tool to facilitate experimentation in ubicomp interfaces– Not the answer to "post-desktop mouse & keyboard",

but may help finding it...

• http://iwork.stanford.edu/

• http://www.stanford.edu/~borchers/iStuff/

Page 16: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.

The Stanford iRoom

Page 17: Intermediary Translation Map A-> 2,3 C->1 1->B 2->B A iStuff Input Component 1 Application C iStuff Input Component B iStuff Input Component 2 Application.