Upload
mike-milinkovich
View
751
Download
6
Embed Size (px)
DESCRIPTION
An overview of the Eclipse IoT projects, and IoT in general. Examples of development tools and frameworks for Java, JavaScript, and Lua.
Citation preview
Developing for the Internet of ThingsMike MilinkovichExecutive Director,Eclipse Foundation
& IoT Hobbyist
APIcon – San FranciscoMay 28, 2014
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.02
Major Caveat!
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.03
Major Caveat!
Please pray to whichever deity controls the wireless at
the Hiltonfor its blessings on this talk
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.04
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.05
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.06
IoT Today
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.07
It Is Complicated!
OEM
Enterprise Application
s
Devices
Vendor 1
?
?
?
?
?
Wireless Services
Vendor 2
Backend Server
Vendor 3
Develo
per A
Develo
per B
Develo
per C
Machine
ERP
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.08
It Is Complicated!
Consumers
Devices
Vendor 1
?
?
?
?
?
Wireless Services
Vendor 2
Backend Server
Vendor 3
Develo
per A
Develo
per B
Develo
per C
Machine
S
olu
tion
V
end
or 4
S
olu
tion
V
end
or 5
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.09
I want the internet ofMY
things
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.010
silos
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.0http://www.flickr.com/photos/brunauto/5687363705
fragmentation
11
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.0
lock-in
http://www.flickr.com/photos/photosightfaces/8152791780/
12
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.0http://www.flickr.com/photos/90514086@N00/952121271/ http://www.flickr.com/photos/cyberslayer/952121271
complexity
13
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.014
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.015
Open Ecosystem IoTThird Party Ecosystem
Open IoT applicationframework and
runtimes
Open IoT applicationframework and
runtimes
Open IoT communication
protocols
Open IoT communication
protocols
Internet of
Things
Open IoTdevelopment tools
Open IoTdevelopment tools
…
$ $
$ $
$ $
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.016
Open Wins
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.017
Developer Engagement
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.018
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.019
Open Wins
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.020
Open Hardware
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.021
protocolsframeworks tools
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.022
CoAP
Lightweight M2M
ETSi M2M
Wakaama
OM2M
protocols
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.023
Sandbox Servershttp://iot.eclipse.org/sandbox.html
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.024
- Java and OSGi based framework for IoT and M2M Gateways
- Java and OSGi based framework for home automation integration
- Java and OSGi based framework for building SCADA systems
- Bridge between HTTP, MQTT and CoAP (JavaScript and node.js)
- Lua based framework for building M2M gateways
frameworks
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.025
tools
Lua Tools
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.026
BUILDING BLOCKS FOR IOT
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.027
BUILDING BLOCKS FOR IOT… for building what?
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.028
Cloud by Andrew Lynne from The Noun Project Thermometer by Lemon Liu from The Noun Project
Fluorescent Light Bulb by Dmitriy Lagunov from The Noun Project Water by Gilad Fried from The Noun Project
Mosquitto broker
Building… SENSOR NETWORKS
MQTT Network
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.029
Demo #1
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.030
Ard
uino
Sensors
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.031
USBModbus
Ard
uino
Ras
pber
ry P
i
Lua + Mihini
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.032
USBModbus
MQTT
Ard
uino
Ras
pber
ry P
i
Lua + Mihini
802.11n
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.033
USBModbus
MQTT
Ard
uino
Ras
pber
ry P
i
Lua + Mihini
Koneki – Lua development tools
802.11n
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.034
USBModbus
MQTT
Ard
uino
Ras
pber
ry P
i
MQTT
Lua + Mihini
Koneki – Lua development tools
802.11n
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.035
Ponte broker
CoAP Network
Building… SENSOR NETWORKS (2)
MQTT Network
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.036 Cloud by Andrew Lynne from The Noun Project
Thermometer by Lemon Liu from The Noun Project Fluorescent Light Bulb by Dmitriy Lagunov from The Noun Project
Water by Gilad Fried from The Noun Project
CoAP Network
LWM2M server(e.g. OM2M, Leshan)
wakaama wakaamawakaama
Building… DEVICE MANAGEMENT
battery levelavail. memory…
firmwarereboot…
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.037
Android UI
X10Serial …
Bluetooth
Building… HOME AUTOMATION
ZigBee
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.038
USBModbus
MQTT
Ard
uino
Ras
pber
ry P
i
MQTT
Lua + Mihini
Koneki – Lua development tools
MQ
TT
Android
802.11n
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.039
Not A Great Tooling Experience
+
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.040
My Real World Problem
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.041
Cottage Monitoring
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.042
My Real World ProblemFirst
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.043
tools for the webon the web
code.everywhere = true;
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.044
The Orion Project:A Browser Based Open Tooling
Platform
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.045
Why and What is Orion?Initiated a little over 3 years ago
A change from other Eclipse projects
A shift to Web based application delivery
The Web is the Platform
Complex IDEs replaced by Web workflows
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.046
OrionHub (Demo #2)
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.047
+
+
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.048
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.049
Simple Server Code/** MQTT client configuration **/var mqtt = require('mqtt');var mqttClient = mqtt.createClient(1883, 'iot.eclipse.org');mqttClient.subscribe('/ottylake.net/cottage/sensor/command/#'); var parseSerialInput = function(data) { console.log('--> data received: ' + data); try { var parsedData = JSON.parse(data); for(var key in parsedData) { mqttClient.publish('/ottylake.net/cottage/sensor/data/' + key, '' + parsedData[key]); } } catch (e) {}};
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.050
Hacking My Cottage Demo
Orion & IoT (Demo #3)
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.051
Serial
Ard
uino
Ras
pber
ry P
i
MQ
TT
Android
MQTT
4G
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.052
Get Involved!• EclipseCon France
– June 18-19, Toulouse• EclipseCon Europe
– October 28-30, Stuttgart• EclipseCon North America
– March 9-12, SFO
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.053
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.054
Thanks!Mike [email protected]@mmilinkov
Code at https://gist.github.com/mmilinkov/public
Learn more:– iot.eclipse.org– eclipse.org/orion– orionhub.org