OpenHouse08 SPOTS

Preview:

Citation preview

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 1/97

 The pdf version

• This presentation makes extensive use of animations.

• The pdf version may be confusing, upsetting, distorting, misleadingconfrusticating or bebothering because it is a mere projection of true self.

• We apologize for any inconvenience.

1

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 2/97

Sun Small Programmable Object Technology

( Sun SPOTs )

one talk to rule them all

2

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 3/97

 Agenda

• Introduction - Roger Meike

• Hardware - Bob Alkire

• Squawk - Eric Arseneau

• Networking - Pete St. Piere

• Security - Vipul Gupta

• Solarium - Randy Smith

• Emulator - Ron Goldman

• In the Field - Arshan Poursohi

• Hands On Lab - David Simmons

3

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 4/97

Brace Yourself!

4

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 5/97

 An Introduction

Roger Meike

Sun SPOT Chief Troublemaker

roger.meike@sun.com

5

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 6/97

Project Sun SPOT 

• Sun has licensed Java on over 1 billion

cell phones

• How do we encourage Sun technology

in whatever comes next?

S

mallProgrammableObjectTechnology

Sun

6

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 7/97

Built to Inspire

• Designed for flexibility> Make hardware projects into

software projects

> Not designed for cost effectivedeployment today

• Substitute money for time

• We want to> Build a Community of

Developers

> Enable New Devices and

Services> Engage with new potential

customers

> Inspire!

7

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 8/97

Shiny Objects

• Sun SPOTs Java Development Kit

• Education

• Researchers

• Hobbyists

• 1000s already deployed despite limited distribution

• We hope to have 20,000 devices deployed by June

• We hope to inspire billions of devices

• Sun’s interest

• We want to license Java on many of these devices

• We want to store and process their data on our servers

8

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 9/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 10/97

Java.net projects

squawk - the JVM

spots-core-libraries - Ongoing development of the core libraries for the Sun SPOT

spots-network-library - Ongoing library development for network stack of the Sun SPOT

spots-security - Ongoing library development for security on the Sun SPOTs

spots-sensorboard-library - Ongoing library development for dif erent SPOT sensorboards

solarium - an application for managing Sun SPOTs

spots-sdk-demos - Demo code distributed with the Sun SPOT SDK (AirText, BounceDemo,BuiltInSensorDemo, CalibrateAccelerometer, CodeSamples, DatabaseDemo, EmulatorDemo,HTTPDemo, RadioStrengthDemo, SpotCheck, TelemetryDemo)

spots-midi - Interfacing MIDI to Sunspots

yggdrasil - Reference implementation of a data collection framework

10

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 11/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 12/97

Open Source Hardware

spot-espot - the Sun SPOT main board

spot-edemo - Demonstration add-on board for Sun SPOT eSPOT

spot-ebones - eBones: information to create add-on boards for the eSPOTspot-eproto - Prototype board with simple interface to SunSPOT eSPOT

spot-eprotomega - eSPOT Prototyping board with Atmega88 processor

spot-eflash - MiniSD card reader/writer add on board for Sun SPOT eSPOT

spot-eserial - RS232 Serial interface board for the SunSPOT eSPOT

spot-eusbhost - USB host interface to Sun SPOT eSPOT

spot-edaq High-resolution Autonomous Data Acquisition board for SunSPOTs

12

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 13/97

Custom Hardware Ecosystem

• There is a significant trend toward Open Source Hardware

• We’re trying to make it easy for people to build custom hardware

• We are working with vendors to provide a single stop process to fabboards and stuff them for a reasonable price

• This could be a big deal

13

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 14/97

What is a Sun SPOT?

?14

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 15/97

Sun SPOT Device

• Basic device has three layers

• Battery

• Processor Board with Radio

• Sensor Board (applicationspecific)

• Processor Board alone actsas a base-station

• User programs the deviceentirely in Java usingstandard Java tools

15

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 16/97

Sun SPOT Mainboard

• 180 MHz 32 bit ARM920T core

• 512K RAM/4M Flash

• 802.15.4 radio

• USB interface - mini-b connector

• 3.6V rechargeable 750 mAh lithium-ion battery

• 36 µA deep sleep mode

• “Java on the metal”

16

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 17/97

eDemoboard

• 2G/6G 3-axis accelerometer

• Light sensor

• Temp sensor

• 2 push buttons

• 8 RGB 24 bit LEDS, power/control LED

• 6 analog inputs

• 5 General Purpose I/O pins and 4 high current output pins

• Easy to interface to servos, speakers and other devices

17

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 18/97

Software

• Squawk Virtual Machine

• J2ME CLDC 1.1 IMP Profile

• Runs on the bare metal (No OS)

• Designed for memory constrained devices

• Written mainly in Java

• Runs multiple applications (isolates)

• Running isolates can “migrate” across devices

• Also runs on Solaris, Linux, Mac and Windows

• Easy to port

18

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 19/97

Sun SPOT developer’s kit

• Two Full Sun SPOTs with

eDemoSensor boards and

batteries

• One base-station Sun SPOT

• Software

• Squawk VM

• Java SDK

• Netbeans

• USB cable

• Mounting clips

• Two wall mounts

• One PC board mount

19

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 20/97

What Do They Do?

• What are the good for?

• What can you build with them?

• Lets take a look...

?20

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 21/97

Sun SPOTs In Action

21

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 22/97

Swarms

• Combine Mesh Networks and Mobile Platforms

• Autonomous Light Air Vessels ALAVs - Jed Berk - ArtCenter College of Design

22

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 23/97

 Autonomous Deployment

• Renaissance Computer Institute at UNC - Dan Reed

23

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 24/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 25/97

Dog Oral Reward Kit - DORK 1.0

• Bob Beasley & Sadie (aka Spot)

• http://web.mac.com/bbeasley1

25

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 26/97

Building a robot

• Simple Robot

• Ingredients

1 - Sun SPOT

2 - Servos

3 - Batteries

Wires

26

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 27/97

Servos

 Tires

Batteries

Sun SPOT 

Wires

27

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 28/97

Servos

Power

Control

(Connect to the Battery)

(Connect to the Sun SPOT)

28

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 29/97

Servo Control Code

import com.sun.spot.sensorboard.EDemoBoard;

import com.sun.spot.sensorboard.io.IOutputPin;

import com.sun.spot.sensorboard.peripheral.Servo;

protected void startApp() throws MIDletStateChangeException {

IOutputPin[] pin = EDemoBoard.getInstance().getOutputPins();

Servo leftServo = new Servo(pin[EDemoBoard.H0]);

Servo rightServo = new Servo(pin[EDemoBoard.H1]);

leftServo.setPosition(0.5F);

rightServo.setPosition(0.5F);

}

29

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 30/97

Cool

• It’s just wires and hot glue!

• No circuit to design

• Not transistors, capacitors,resistors, etc

• This is a software project!Java

30

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 31/97

Sun SPOTs monitoring water

• KTH, Sweden

• Aqua WSN

• Monitor water quality in Malawi, Africa at the Blantyre Water Board

which provides drinking water for the city of Blantyre and other

peri-urban areas in the vicinity

• http://www.tslab.ssvl.kth.se/csd/projects/0726/ 

31

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 32/97

Sun SPOTs in the Rainforest

• Warren Wilson College, NC

• Grant to research and implement a geographic

information system (GIS) and wireless sensor

network on the Cocobolo Nature Reserve in

Panama.

• The reserve is part of one of the largest

contiguous rainforests in Central America.

32

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 33/97

Join us!

Our web site

http://www.sunspotworld.com

More Information

Support

Forums

Web Site

Projects on Java.net

https://spots.dev.java.net

33

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 34/97

Sun SPOT Hardware

Bob Alkire

Hardware Crank 

robert.alkire@sun.com

34

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 35/97

eSPOT 

• The Sun SPOT Main Board

• https://spot-espot.dev.java.net/ 

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer)

• LICENSE - All files within this project are covered by GPL license.

eSPOT Main Board Features

• ARM920T 180MHz Processor (Atmel AT91RM9200)• 4Mbyte Flash PROM• 512Kbyte Psuedo static RAM• 2.4GHz 802.15.4 DSSS Radio Transceiver (TI CC2420)• Real Time Clock and Power Management Processor (Atmega88)• USB Battery Charger/Switching Regulator (Linear LTC3455)• 30 pin high density interboard connector 

35

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 36/97

eDemo

• Standard sensor board in dev kit.

• https://spot-edemo.dev.java.net/ 

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer)

• LICENSE - All files within this project are covered by GPL license.

eDemo Board Features

  ▪ a 3-axis accelerometer (with two range settings: 2G or 6G)

 ▪

a temperature sensor   ▪ a light sensor   ▪ 8 tri-color LEDs  ▪ 6 analog inputs readable by a 12bit ADC  ▪ 2 momentary switches  ▪ 5 general purpose I/O pins▪ 4 high current output pins with a Atmega88 IO processor 

36

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 37/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 38/97

eBones

• eBones is a template for Sun SPOT board design. This is a good starting place if you are

contemplating making a custom sensor system.

• Includes PC board outlines, fabrication drawings, footprints for inter-board connector and

ICs. This information covers both the smaller 1.9" x 1.5" external board which fits inside

the plastic (similar to the eDemo board) and the larger external board that a eSPOT can

plug into.

• Application Notes

• External Hardware Design Guide (pdf)

• External Software Design Guide (pdf)

• Hardware Files

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer, Orcad Layout and Eagle

• LICENSE - All files within this project are covered by BSD license.

• https://spots-ebones.dev.java.net/ 

38

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 39/97

eBones Mechanical Drawings

39

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 40/97

eBones Schematics

40

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 41/97

Using eBones

• User starts with eBones schematic

and adds their own circuitry.

• They layout the new PC artwork

using eBones as a template

41

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 42/97

eProto

• Stackable add-on board for prototyping hardware interfaces.

• https://spot-eproto.dev.java.net/ 

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer)

• LICENSE - All files within this project are covered by BSD license.

42

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 43/97

eProtoMega

• This board is similar to the eProto board with the addition of

a Atmega88 processor.

• https://spot-eprotomega.dev.java.net/ 

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer)

• LICENSE - All files within this project are covered by BSD license.

43

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 44/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 45/97

eFlash

• Used for data logging.

• Holds two of the industry standard MiniSD flash cards.

• https://spot-eflash.dev.java.net/ 

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer)

• LICENSE - All files within this project are covered by BSD license.

45

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 46/97

eDAQ

• High Quality Data Acquisition Board

• 2 high speed plus 4 Analog to Digital Converters

• https://spot-eDAQ.dev.java.net/ 

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer)

• LICENSE - All files within this project are covered by BSD license.

46

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 47/97

eUSBHost

• eUSBHost is an add-on board for the Sun SPOT project for adding USB host

• This unit has is design only, it has not been prototyped.

• https://spot-eusbhost.dev.java.net/ 

• BOM - Bill of Materials (.xls format)

• Gerbers - PC board gerber files (RS274X)

• Schematics - PC schematics, assembly and fabrication drawings (.pdf format)

• Design Files - Schematic and PC layout (Altium Designer)

• LICENSE - All files within this project are covered by BSD license.

47

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 48/97

Squawk 

Eric Arseneau

SPOT Squawker

eric.arseneau@sun.com

48

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 49/97

Squawk 

• Squawk is the Java on the “bare metal”

• Java™ Operating Environment for small devices

• Designed for

• Resource constrained devices

• Porting toolkit for micro-embedded devices

• Implements

• CLDC 1.1

• IMP 1.0

49

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 50/97

Squawk - VM Details

• Classic interpreter today

• GC written in Java -> C

• JAR -> Suite

• Intention

• No JIT

• Complete VM in Java -> C

• Application & VM -> C

• C is a step towards native language of target

50

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 51/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 52/97

Squawk - Open Source

• Released Jan 22, 2008

• https://squawk.dev.java.net

• Leverages Open Sourced phoneME Feature

• Official source is the best way to be compliant

• Functional and tested code base for core API

• 75% of core API is phoneME source

• Can achieve much more

• Community is an excellent source of help

• Open source licensing simplified

52

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 53/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 54/97

Networking

Pete St.Pierre

Network Plumber

pete.stpierre@sun.com

54

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 55/97

Networking Overview

• Sun SPOT radio characteristics:

• IEEE 802.15.4 (Zigbee): lower cost, power but slower than Bluetooth (802.15.1)

or Wi-Fi (802.11)

• 128-byte packets, ~70m range, 250Kbps, 2.4 GHz

• Autonomous mesh networking extends range, eases deployment

• Modular, pure Java implementation encourages rapid prototyping andexperimentation

• Easy interfacing with Internet-connected devices/services, e.g. HTTP, TCP/IP*

55

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 56/97

Self-organizing...

 A 

G

E

F

C

B

D

Where

is G?

 This

way to

G

Data

for G

Whereis G?

Where

is G?

56

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 57/97

Self-healing...

B

 A 

G

E

F

C

D

Whereis G?

 This

way to

G

B*

Data

for G

Data

for G

57

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 58/97

Flexible, All-Java Stack 

I802_15_4_MAC

IRadioPacketDispatcher

ILowPan*

IProtocolManager IRoutingManager

 Applications

Interfaces Implementation

 AODVManager

802_15_4_MAC

RadioPacketDispatcher

LowPan

 Applications

Radiogram Radiostream CTPManagerUDP TCP

IPv6

58

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 59/97

 Accessing the Internet

• Sun SPOTs implement HTTP, communicate via gateway

• With TCP/IP implementation completed, SPOTs will be first-class citizens of

the Internet -- enabling the “Internet of things”

59

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 60/97

Security Vipul Gupta

Sun SPOT Locksmith

vipul.gupta@sun.com

60

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 61/97

Why?

“Over-the-air” is the way of life for Sun SPOTs

Wireless code deployment, data exchange and management need

protection from unauthorized access, tampering, eavesdropping ...61

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 62/97

Goals

• “User” (not cryptography) is often the weakest link

• Marry strong, efficient cryptography with simple, user-transparent key

management

• Leverage Sun Labs’ expertise in resource-efficient public-key cryptography --

elliptic curve cryptography 

• compromising a device does not compromise entire network

• Reuse well-known, peer-reviewed industry standards

• Trust management should “just work” in the most common scenario

62

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 63/97

Securing Code Deployment

• Started out as a Java branding problem

• Byte code verified on desktop and “sealed”

using a digital signature (ECDSA)

• Code sent over-the-air or via USB

• Signature verified on SPOT before execution

• Addresses both

- Java branding

- general code authentication

• Signing key never leaves desktop!

compile

deploy 

Java Project

.JAR.suite

63

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 64/97

Key Management for Code Deployment

• Each user’s SDK has a public/private key pair. SPOT stores “trusted” key

of owner.

• First deployer becomes owner with special over-the-air privileges -- code

deployment, management commands, restoring to ownerless state

• Simple, user-transparent key management balances security/ convenience

• Capturing a device does not allow attacker to deploy code to others

PrivateSDK 

PublicSDK PublicSDK 

e.g., application deployment  

First interaction with “ownerless” SPOT

Trusted “owner”:

 

_ __________(empty)

64

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 65/97

Secure Communication*

• Inspired by the simplicity of “https” user experience

• Reuses SSL protocol underneath. Adds HTTPS support for SPOT/Web

communication

• Securing inter-SPOT communication requires one simple change to

existing applications

* This feature will be available in a forthcoming SDK release

conn = Connector.open(“radiostream://” + addr + “:” + port);

conn = Connector.open(“sradiostream://” + addr + “:” + port);

65

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 66/97

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 67/97

Main Takeaways

• Autonomous mesh networking built-in, pluggable architecture encouragesexperimentation

• Security mechanisms use NSA-endorsed, next-generation, resource-efficient

public-key cryptography with user-transparent key management

• It just works!

67

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 68/97

SolariumRandy Smith

Master of Sun SPOT SpaceTime

randy.smith@sun.com

68

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 69/97

Solarium

Randy Smith

Vipul Gupta

 Arshan Poursohi

Ron Goldman

69

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 70/97

Discover

Program

Deploy Debug

Configure

Manage

SPOTWorld

70

Solarium

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 71/97

SPOTWorldSPOTWorldViewer 1

SPOTWorldViewer 2

...

?

?

71

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 72/97

Demo

72

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 73/97

Emulating Sun SPOTsRon Goldman

Sun SPOT Virtual Handyman

ron.goldman@sun.com

73

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 74/97

How to give everyone a Sun SPOT?

• We would like every student & developer to be able to use Sun SPOTs.

• SPOTs are not cheap; hardware costs money.

• But distributing software is free.

• Can we give away a virtual SPOT, i.e. software-only?

• Yes we can! Provided that we have a SPOT simulator or emulator.

74

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 75/97

SPOT emulator

• Use Squawk VM to run virtual SPOT application

• Use Solarium for the GUI

• Treat virtual SPOTs like real Sun SPOTs

• Virtual SPOTs can send radio messages to each other

• Virtual SPOTs can talk over the radio to real SPOTs

75

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 76/97

Emulating the sensors

• Use a sensor panel to set the values of the virtual SPOT’s sensors

• Can specify temperature, input voltages, accelerations, etc.

76

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 77/97

Emulator architecture

Solarium

77

D

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 78/97

com.sun.spot.Solarium

Solarium

Demo

78

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 79/97

Sun SPOTs in the Field Arshan Poursohi

SPOT Whisperer

arshan.poursohi@sun.com

79

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 80/97

Sun SPOT advantages

• Capable HW makes prototyping easy and fast

• Java development environment

• Existing API provides useful base functionality

• Fast to develop and easy to understand/modify codebase

• OTA code deployment and management

• Easy to modify in the field

• Easy to monitor and trouble shoot

80

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 81/97

Project Blackbox

• Keep track of conditions presentin the box while in transit

• Tight schedule requirements

• National tour beginning in 2

weeks

• Existing sensors inactive while

in transit

• http://www.sun.com/blackbox

81

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 82/97

 After some consultation

• Vibration, key locations

• time sync across devices

• filters for finding and

recording significant events

• Environmental conditions

• Location, GPS

• Datalogging

• Uplink while in transit

82

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 83/97

2 weeks later

83

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 84/97

2 weeks later (con’t)

84

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 85/97

Building a Datalogger

• Requirements

• Robust, Low Power, Cheap

• Plan A 

• Laptop or MiniPC

• Plan B

• eProto begets eFlash

85

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 86/97

2 Months later

• Steady stream of data from Blackbox in transit

• Database of transit info back here in the lab

• Working on tools to browse data for interesting events

• Data passed on to the Blackbox team

• Prototype considered complete

86

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 87/97

Sun SPOTs on Blackbox

87

Bl kb Sh k T

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 88/97

Blackbox Shake Test

88

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 89/97

Educational Outreach Program

• Granting Sun SPOT development kits to educators and students worldwide

• Participating in the larger programs to reach out to university professors and

students worldwide

• Building blocks for future work on Sun SPOTs

• Completely ‘open’ working environments

• Leverage existing and establish links to world wide universities to the benefitof the whole company

• Our grant programs are combined with a new pricing model, substantial

educational discount

89

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 90/97

Request for Participation

• Invites users to participatein the community. We are

willing to grant Sun SPOT

JDKs for projects that are a

substantial benefit to the

community at large.

A SUN LABS RESEARCH PROJECT

Help Us build the Sun SPOT JavaTM Open Source Community.

Are you a professor, student, or hobbyist? Would you like to use

wireless sensors in your curriculum, research or project? Join the Sun Small

Programmable Object Technology (SPOT) Open Source developer community!

The Opportunity:

Recognizing the vital role that open source software contribution plays in

fostering new developer communities, Project Sun SPOT is soliciting

interesting proposals from creative people for wireless sensor and embedded

hardware and software projects. To encourage this goal monetarily as

well as in spirit, Sun Labs will award Sun SPOT development kits to those

projects that we think will be most effective in inspiring and expanding

the Sun SPOT Open Source community.

What do we want?

Interesting code posted to http://spots.dev.java.net that inspires the Sun SPOT user community and is a basis

for other great ideas, as well as your help in growing the Sun SPOT community by actively participating in Sun

SPOT forums, blogs and user groups, etc. We’re particularly interested in projects that are creative building

blocks for future work.

 Your proposal should include the following:

Project description including why your project is a good building block for the embedded open

source community

What you plan to call your project on Java.net

Your plan for regular updates to the community so members can follow your progress

Description of how the community will gain access to your code and documentation

Your project timeline

How many Sun SPOTs you think you’ll need to complete the project

The award for this program will be one or more Sun SPOT JavaTM Development Kits (JDKTM). There will be no

cash grants.Submit your proposal to http://sunspotproposals@sun.com. If you submit a proposal by the 15th of the

month, we will respond on the 1st of the following month, and award Sun SPOT JDKs, while supplies last, to

the proposals that best address the project goals.

 About Sun SPOTs and the Sun SPOT JDK

The Sun SPOT hardware platform is a small, battery operated, wireless device running the Squawk JavaTM Virtual

Machine (JVMTM), which acts as both operating system and software application platform and runs directly

on the processor without an intervening OS. Based entirely on Java, Sun SPOTs provide a low-cost, low-power

versatile platform for developing wireless sensor and embedded applications. The Sun SPOT JDK includes a

complete hardware platform, the Squawk JVM, and a set of programming tools, including the NetBeans TM IDE,

so even high-level programmers can quickly write custom embedded applications. For more information, technical

details, forums, news, events and to purchase a Sun SPOT JDK, visit http://www.sunspotworld.com/

Sun SPOT Open Grant ProgramRequest for Proposals

SunTM Small Programmable Object Technology

>

90

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 91/97

 Yggdrasil

• Common Framework for DataCollection

• Started life in Open Source

• Active development with outside

collaborators

• https://yggdrasil.dev.java.net/ 

91

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 92/97

Warren Wilson CollegeCocobolo Natural Reserve

92

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 93/97

 Your turn

• http://www.sunspotworld.com

• buy online

• EDU pricing

• forums

• http://spots.dev.java.net

93

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 94/97

Sun SPOTs Hands On LabDavid Simmons

SPOT Knocker

davidgs@sun.com

94

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 95/97

Hands On Lab

• Hardware for software people

• Learn to connect external sensors and servos

• Build stuff! Its good for you!!

• Classes today and tomorrow as part of Sun Labs

Open House

• To sign up, see me immediately following this talk

or sign up in the SW lab

• This HOL is a preview of JavaOne (for free!)

95

C

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 96/97

Robotics Contests

• Systronix

• Greenfoot + Trackbot + SunSPOT

• https://trackbots-greenfoot-contest-2008.dev.java.net/ 

• Wintriss School

• IRobot Create + Sun SPOT = International Autonomous Robot Contest

• To be held a San Diego County Fair June 21-22

• http://www.iaroc.org

96

96

8/14/2019 OpenHouse08 SPOTS

http://slidepdf.com/reader/full/openhouse08-spots 97/97

Join us!

Our web site

http://www.sunspotworld.com

More Information

Support

Forums

Web Site

Projects on Java.net

htt // t d j t