sketching in hardware 4

49
Online code sharing for ActionScript and physical computing Incentives for web designers and developers Shigeru Kobayashi Sketching in Hardware 4: INCENTIVES, July 17-19, 2009, London

Upload: shigeru-kobayashi

Post on 27-Jan-2015

148 views

Category:

Design


1 download

DESCRIPTION

The slides for the presentation at Sketching in Hardware 4. http://sketching09.com/

TRANSCRIPT

Page 1: Sketching In Hardware 4

Online code sharing for

ActionScript and physical computing

Incentives for web designers and developers

Shigeru Kobayashi

Sketching in Hardware 4: INCENTIVES, July 17-19, 2009, London

Page 2: Sketching In Hardware 4

Introduction

• Roland Corp. (1993∼2004)

– Sound design

– Software engineering

• IAMAS (2004∼)

– Physical computing

– Interaction design

Page 3: Sketching In Hardware 4

Introduction: Gainer

+GAINERPhysical Computing with Gainer

GainerBook Labo + Kurukuru Lab (2007 and 2008)

Page 4: Sketching In Hardware 4

+GAINER: Tutorial

Page 5: Sketching In Hardware 4

+GAINER: Cookbook

Page 6: Sketching In Hardware 4

+GAINER: Works

Page 7: Sketching In Hardware 4

Introduction: Make Magazine (in Japanese)

Make: Technology on Your Time Volume 04-07

O’Reilly Japan (2008-2009)

Page 8: Sketching In Hardware 4

Motivation (as an engineer)

• ‘Sketching in hardware’ was not so easy as

software: Difficult to implement new ideas

in the late stages of development.

• Difficult to evaluate ‘new’ ideas using past

(old) experiences.

• Lack of common language between

designers and engineers.

Page 9: Sketching In Hardware 4

Motivation (at IAMAS)

• Concept driven development is not easy for

average students who do not have

concrete ideas.

• ‘Build to think’ method sounds good, but

substantial skills are required.

• Difficult to teach programming for

micro-controllers in C or assembly

(easy to get frustrated).

Page 10: Sketching In Hardware 4

Background: Gainer

A toolkit consisting of

open-source hardware and software.

• Gainer I/O module

– PSoC + FT232RL

• Software libraries

– ActionScript 2/3

– Processing

– Max/MSP

Page 11: Sketching In Hardware 4

Gainer I/O modules

Page 12: Sketching In Hardware 4

Efforts in the classroom at IAMAS

Sketching PrototypingToolkit Gainer Gainer or Arduino

Connection Wired Wired or stand-aloneProgramming PC only PC and/or microcontroller

Material Cardboard WoodStyrofoam 3D printing (ABS)

Wiring Breadboard Soldering

Page 13: Sketching In Hardware 4

Motivations to Funnel

Found problems

• An I/O module doesn’t cover all user needs,

changing between toolkits is expensive

• For beginners, it is still difficult to handle

real-world inputs

• Wired connection narrows ideas

during the ‘sketching in hardware’ stage

Page 14: Sketching In Hardware 4

Funnel?

Bill Buxton: Sketching User Experiences (2007)

Page 15: Sketching In Hardware 4

What is Funnel?

• A toolkit for interconnecting toolkits

• Covering sketching to prototyping

• Intended to be a common language between

designers/artists and engineers

Page 16: Sketching In Hardware 4

What is Funnel?

The Funnel development team

• Shigeru Kobayashi (IAMAS)

• Takanori Endo (IAMAS)

• Ichitaro Masuda (Metaphor Inc.)

Page 17: Sketching In Hardware 4

Interconnections via Funnel

USB XBeeBridge

GainerI/O Module

Arduino(with Firmata)

USB XBeeBridge

Funnel Server

ActionScript 3 ProcessingMax/MSPetc.

Ruby

AS3 Library Processing Library OSC LibrariesRuby Library

FIO XBeeFIO XBee

Page 18: Sketching In Hardware 4

Interconnections via Funnel

Supported hardware

• Gainer I/O

• Arduino (via Firmata v2.1)

• XBee (IEEE 802.15.4/ZigBee)

• FIO

Page 19: Sketching In Hardware 4

Interconnections via Funnel

Supported languages

• Processing

• ActionScript 3

• Ruby

Page 20: Sketching In Hardware 4

What’s new since the last year?

• Contributors

• FIO

• Firmata v2.1 compatible

• I2C device classes

• Physical UI classes

• Collaboration with ‘wonderfl’

Page 21: Sketching In Hardware 4

Contributors

• Jeff Hoefs

– AS3 (I2C device classes)

– A lot of helpful suggestions

• Kazuyoshi Kato

– Ruby (Gainer)

• Kazushi Mukaiyama

– AS3 (I2C device classes)

Page 22: Sketching In Hardware 4

FIO v1.3

Page 23: Sketching In Hardware 4

FIO v1.3

+-

Page 24: Sketching In Hardware 4

FIO v1.3

Page 25: Sketching In Hardware 4

FIO v1.3 vs Funnel IO Remixed

Page 26: Sketching In Hardware 4

Funnel IO Remixed

Page 27: Sketching In Hardware 4

Firmata v2.1 compatible

Proposed suggestions to Firmata v2.1

• I2C REQUEST

• I2C REPLY

• I2C CONFIG

• SAMPLING INTERVAL

Page 28: Sketching In Hardware 4

I2C device classes

• BlinkM/MaxM

• Accelerometer (LIS302DL and LIS3LV02DQ)

• Colour sensor (ADJD-S371-QR999)

• Digital compass (HMC6343 and HMC6352)

• Wii Nunchuck

Page 29: Sketching In Hardware 4

I2C device class example

List 1 A simple example to use a BlinkM

package {

import funnel.i2c.BlinkM;

public class ArduinoI2CBlinkM extends Sprite {

private var aio:Arduino;

private var blinkM:BlinkM;

public function ArduinoI2CBlinkM() {

var config:Configuration = Arduino.FIRMATA;

config.enablePowerPins();

aio = new Arduino(config);

blinkM = new BlinkM(aio);

blinkM.goToRGBColorNow([0, 0, 0]);

}

Page 30: Sketching In Hardware 4

Physical UI classes

• Button

• LED

• RGBLED

• Accelerometer

• Potentiometer

• Servo

Page 31: Sketching In Hardware 4

Physical UI class example

List 2 A simple example to use a button and a LED

package {

import funnel.ui.*;

public class GainerTest extends Sprite {

public function GainerTest() {

var gio:Gainer = new Gainer();

gio.button.addEventListener(ButtonEvent.PRESS, function(e:Event):void {

gio.led.on();

});

gio.button.addEventListener(ButtonEvent.RELEASE, function(e:Event):void {

gio.led.off();

});

}

Page 32: Sketching In Hardware 4

Physical UI class example

Button events to simplify events in time domain

• PRESS

• RELEASE

• LONG PRESS

• SUSTAINED PRESS

Page 33: Sketching In Hardware 4

Collaboration with ‘wonderfl’

Page 34: Sketching In Hardware 4

What is wonderfl?

http://wonderfl.net

• A web service developed by KAYAC Inc.

• Build flash online with a web browser

– Creating from scratch

– Fork from an existing code

• Since December 2008, > 9,000 registered

users and > 28,000 working examples for AS3

Page 35: Sketching In Hardware 4

Example 1: create from scratch

Page 36: Sketching In Hardware 4

Example 1: create from scratch

Page 37: Sketching In Hardware 4

Example 1: create from scratch

Page 38: Sketching In Hardware 4

Example 1: create from scratch

Page 39: Sketching In Hardware 4

Example 2: fork from an exisiting code

Page 40: Sketching In Hardware 4

Example 2: fork from an exisiting code

Page 41: Sketching In Hardware 4

Example 2: fork from an exisiting code

Page 42: Sketching In Hardware 4

Example 2: fork from an exisiting code

Page 43: Sketching In Hardware 4

What is physical × wonderfl?

http://physical.wonderfl.net

• A collaboration between IAMAS and KAYAC

• Adding physical computing extensions to

wonderfl

– Substantial chages to the Funnel library

– Image up-loader for diagrams

– Embed movies to illustrate possibilities

– GUI for non-hardware mode

• Unveiled on July 18th, 2009 (i.e. today)

Page 44: Sketching In Hardware 4

Demo: physical × wonderfl

• Write code online

• Test without hardware

• Test with hardware

Page 45: Sketching In Hardware 4

What users can do

• Write

• Get feedback

• Share

• Raise questions

Page 46: Sketching In Hardware 4

What potential users can do

• Try without hardware

• Feel the possibilities of physical computing

• Learn by using working examples

Page 47: Sketching In Hardware 4

Questions

• How can we bridge gaps between guided

studies and real prototypes?

• What incentive to engineers can we provide?

• How to design social environments for UGD*1?

*1 User Generated Devices

Page 48: Sketching In Hardware 4

Project Members

• wonderfl dev team– Kazuhiro Hashimoto

– Masakazu Ohtsuka

• IAMAS wxp project– Shigeru Kobayashi, Masami Hirabayashi,

Masahiko Furukata, Nobuya Suzuki

– Hoonida Kim (kim-hoonida), Takahiro Miyake,

Kazuomi Eshima, Yuma Ohfusa, Leo Kikuchi,

Jungun Kim, Kanna Komaki, Kaori Takemoto,

Egon Bak, Daichi Misawa

Page 49: Sketching In Hardware 4

Online code sharing for

ActionScript and physical computing

Incentives for web designers and developers

Shigeru Kobayashi

Sketching in Hardware 4: INCENTIVES, July 17-19, 2009, London