Page 1
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
Page 2
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
Page 3
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
Page 4
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 4/97
Brace Yourself!
4
Page 5
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 5/97
An Introduction
Roger Meike
Sun SPOT Chief Troublemaker
[email protected]
5
Page 6
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
Page 7
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
Page 8
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
Page 9
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 9/97
Page 10
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
Page 11
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 11/97
Page 12
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
Page 13
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
Page 14
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 14/97
What is a Sun SPOT?
?14
Page 15
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
Page 16
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
Page 17
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
Page 18
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
Page 19
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
Page 20
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
Page 21
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 21/97
Sun SPOTs In Action
21
Page 22
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
Page 23
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 23/97
Autonomous Deployment
• Renaissance Computer Institute at UNC - Dan Reed
23
Page 24
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 24/97
Page 25
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
Page 26
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
Page 27
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 27/97
Servos
Tires
Batteries
Sun SPOT
Wires
27
Page 28
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
Page 29
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
Page 30
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
Page 31
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
Page 32
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
Page 33
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
Page 34
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 34/97
Sun SPOT Hardware
Bob Alkire
Hardware Crank
[email protected]
34
Page 35
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
Page 36
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
Page 37
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 37/97
Page 38
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
Page 39
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 39/97
eBones Mechanical Drawings
39
Page 40
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 40/97
eBones Schematics
40
Page 41
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
Page 42
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
Page 43
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
Page 44
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 44/97
Page 45
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
Page 46
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
Page 47
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
Page 48
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 48/97
Squawk
Eric Arseneau
SPOT Squawker
[email protected]
48
Page 49
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
Page 50
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
Page 51
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 51/97
Page 52
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
Page 53
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 53/97
Page 54
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 54/97
Networking
Pete St.Pierre
Network Plumber
[email protected]
54
Page 55
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
Page 56
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
Page 57
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
Page 58
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
Page 59
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
Page 60
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 60/97
Security Vipul Gupta
Sun SPOT Locksmith
[email protected]
60
Page 61
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
Page 62
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
Page 63
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
Page 64
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
Page 65
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
Page 66
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 66/97
Page 67
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
Page 68
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 68/97
SolariumRandy Smith
Master of Sun SPOT SpaceTime
[email protected]
68
Page 69
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 69/97
Solarium
Randy Smith
Vipul Gupta
Arshan Poursohi
Ron Goldman
69
Page 70
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 70/97
Discover
Program
Deploy Debug
Configure
Manage
SPOTWorld
70
Solarium
Page 71
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 71/97
SPOTWorldSPOTWorldViewer 1
SPOTWorldViewer 2
...
?
?
71
Page 72
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 72/97
Demo
72
Page 73
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 73/97
Emulating Sun SPOTsRon Goldman
Sun SPOT Virtual Handyman
[email protected]
73
Page 74
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
Page 75
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
Page 76
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
Page 77
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 77/97
Emulator architecture
Solarium
77
D
Page 78
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 78/97
com.sun.spot.Solarium
Solarium
Demo
78
Page 79
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 79/97
Sun SPOTs in the Field Arshan Poursohi
SPOT Whisperer
[email protected]
79
Page 80
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
Page 81
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
Page 82
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
Page 83
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 83/97
2 weeks later
83
Page 84
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 84/97
2 weeks later (con’t)
84
Page 85
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
Page 86
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
Page 87
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 87/97
Sun SPOTs on Blackbox
87
Bl kb Sh k T
Page 88
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 88/97
Blackbox Shake Test
88
Page 89
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
Page 90
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://[email protected] . 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
Page 91
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
Page 92
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 92/97
Warren Wilson CollegeCocobolo Natural Reserve
92
Page 93
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
Page 94
8/14/2019 OpenHouse08 SPOTS
http://slidepdf.com/reader/full/openhouse08-spots 94/97
Sun SPOTs Hands On LabDavid Simmons
SPOT Knocker
[email protected]
94
Page 95
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
Page 96
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
Page 97
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