building an open internet of things with eclipse iot › images › 2 › 2f › eclipse_day... ·...
TRANSCRIPT
![Page 1: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/1.jpg)
Building an open
Internet of Things
with Eclipse IoT
Benjamin Cabé – Eclipse Foundation
Eclipse IoT Day Grenoble - March 30, 2015
![Page 2: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/2.jpg)
IoT is Big
![Page 3: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/3.jpg)
![Page 4: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/4.jpg)
Java for IoT?
● 9+ million Java developers ● Java 8 & embedded are fun ● Lots of IoT devices running on ARM ● Tooling
![Page 5: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/5.jpg)
Open IoT Stack for Java
![Page 6: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/6.jpg)
Actuators/Sensors
+ Gateway
+ [ Cloud ]
+ User front-end
End-to-end IoT with Java?
![Page 7: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/7.jpg)
Gateway
![Page 8: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/8.jpg)
Gateway
![Page 9: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/9.jpg)
Gateway
![Page 10: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/10.jpg)
Gateway
Connect sensors to the world
Manage the hardware and software running
at the edge
![Page 11: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/11.jpg)
Connect?
● CoAP
o « HTTP over UDP » o Expose your device as a resource to the Internet of
Things
● MQTT
o Publish/Subscribe model o More room for local processing
![Page 12: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/12.jpg)
CoAP: The web-of-things
/walk /hand/left/raise /eye/picture
/on /red /green /blue /mtbf
/on
/on
/buttons /buttons/1/push /bat-level
/engine/status /position /fuel /CO2
/noise /lights/on
![Page 13: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/13.jpg)
Eclipse Californium
● Focus on scalability and usability
● To be used in IoT cloud servers or M2M/IoT devices running Java
● Includes DTLS implementation (Scandium), HTTP/CoAP bridge, Plugtests, …
http://eclipse.org/californium
![Page 14: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/14.jpg)
MQTT: Publish & Subscribe
BROKER
![Page 15: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/15.jpg)
Eclipse Paho
● Open-source MQTT clients
● Pick your language! o Java o JavaScript o C/C++, Objective C o Go, Lua, Python, .NET, WinRT, …
http://eclipse.org/paho
![Page 16: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/16.jpg)
MQTT brokers
● Eclipse Mosquitto
o C implementation
o Scalable (1000 clients == 3MB RAM)
● Eclipse Moquette
o Java implementation o Based on Netty and LMAX disruptor
![Page 17: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/17.jpg)
Manage?
● Gateway itself o wireless modem, firewall, …
● Applications
o Install/Uninstall software packages o Start/Stop applications
● Sensors
o H/W abstraction layer
![Page 18: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/18.jpg)
Java VM OSGi Application Container
Device Abstraction
Gateway Basic Services
Network Configuration Network Management Field Protocols
Connectivity and Delivery
Adm
inis
trat
ion
GUI
Ope
ratio
n &
Man
agem
ent
Linux Hardware
App 1 App 2 App n . . . . Applications
Eclipse Kura
![Page 19: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/19.jpg)
Installing Kura
cd#~#
sudo#apt+get#update#
wget#https://s3.amazonaws.com/kura_downloads/raspbian/release/#\##########################1.1.0/kura_1.1.0_raspberry+pi_armv6.deb#
sudo#dpkg#+i#kura_1.1.0_raspberry+pi_armv6.deb#
sudo#apt+get#install#+f#
sudo#reboot#
#
![Page 20: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/20.jpg)
First steps with Kura
● Network management o Cellular Modem, WiFi o Firewall o NAT
● OSGi and system administration
● IoT server communication settings
![Page 21: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/21.jpg)
Kura API
● OSGi services that you can re-use in your own components o ClockService o DataService, CloudService o CryptoService (AES, base64, SHA-1) o PositionService (geolocation) o … and many others
● And of course you can leverage a huge ecosystem of Java and OSGi libraries
![Page 22: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/22.jpg)
Demo time!
![Page 23: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/23.jpg)
End-user interaction
● JavaFX Charts
● Eclipse BIRT
● Smartphone app (e.g Android) o https://www.eclipse.org/paho/clients/android
● MQTT + WebSockets = ♡ o https://www.eclipse.org/paho/clients/js
![Page 24: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/24.jpg)
Kura is awesome! Go download it now!
http://eclipse.org/kura
If you had to remember only 3 things...
#1
![Page 25: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/25.jpg)
Build your own greenhouse & follow the tutorial
http://iot.eclipse.org/java/tutorial
If you had to remember only 3 things...
#2
![Page 26: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/26.jpg)
Eclipse IoT is much more than Kura and Java!
http://iot.eclipse.org/
If you had to remember only 3 things...
#3
![Page 27: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/27.jpg)
Get Involved!
● Open bugs / fix bugs ● Request new features ● Write articles, tutorials ● Participate on the mailing
lists ● Propose your project!
![Page 28: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/28.jpg)
Coming next?
![Page 29: Building an open Internet of Things with Eclipse IoT › images › 2 › 2f › Eclipse_Day... · Building an open Internet of Things with Eclipse IoT ... To be used in IoT cloud](https://reader034.vdocuments.mx/reader034/viewer/2022042310/5ed7a70648b98015c2021159/html5/thumbnails/29.jpg)
Coming next?
● Device Management
o LwM2M, LwM2M over MQTT, IPSO Smart Objects
● Security
o TinyDTLS
● Open-source IoT server? o Several members interested in defining and
implementing the OpenStack for IoT