The Three Software Stacks Required for IoT
Benjamin CabéEclipse Foundation
@kartben
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
IoT?
ApplicationsCollect, exchange
& analyze data
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
IoT?
Applications
Sensing / ActuatingInteract with the physical world
Collect, exchange & analyze data
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
IoT?
Applications
Networking & Data Communications
Sensing / ActuatingInteract with the physical world
Bridge the physical world to the Internet
Collect, exchange & analyze data
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Typical IoT Architecture
Devices(sensors & actuators)
Applications
telemetry
commands
telemetry
commands
IoT Cloud Platform
Gateways
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Role & Characteristics
DEVICE GATEWAY / SMART OBJECT CLOUD PLATFORM
constrained
low-power
specialized
connectivity
messaging
edge computing
scale out
integration
data analytics
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Asset Tracking
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
The solution
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
TOOLS & SDKsONTOLOGIESSECURITY
CONSTRAINED DEVICES
Hardware Abstraction Layer (HAL)
OS / RTOS
CommunicationR
emot
e M
anag
emen
tField protocols IoT protocols
IOT CLOUD PLATFORM
Con
nec
tivi
ty
Mes
sag
e R
outi
ng
OS / PaaS
Device Management
Data Management
Event Management, Analytics & UI
Device Registry
Application Enablement
GATEWAYS AND SMART DEVICES
Rem
ote
Man
agem
ent
Application Runtime
Data Management & Messaging
OS / RTOS
Connectivity
Field protocols IoT protocols
Network Management
The 3 IoT Software Stacks
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Characteristics of Open IoT Stacks
loosely coupled
modular
platform-independant
based on open standards
API
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse IoT
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse IoT Community
2.4 30 280+ 140Kmillion
lines of codeprojects developers monthly
visitors
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse IoT…
from building blocks … to stacks
…
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
The 3 IoT Software StacksTOOLS & SDKsONTOLOGIESSECURITY
CONSTRAINED DEVICES
Hardware Abstraction Layer (HAL)
OS / RTOS
CommunicationR
emot
e M
anag
emen
tField protocols IoT protocols
IOT CLOUD PLATFORM
Con
nec
tivi
ty
Mes
sag
e R
outi
ng
OS / PaaS
Device Management
Data Management
Event Management, Analytics & UI
Device Registry
Application Enablement
GATEWAYS AND SMART DEVICES
Rem
ote
Man
agem
ent
Application Runtime
Data Management & Messaging
OS / RTOS
Connectivity
Field protocols IoT protocols
Network Management
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Hardware Abstraction Layer (HAL)
OS / RTOS
CommunicationR
emot
e M
anag
emen
tField protocols IoT protocols
OS Stack for IoT Devices
CONSTRAINED DEVICES
C implementation of OMA LWM2M
Portable on any POSIX-compliant system
C implementation of MQTT 3.1.1
< 2,000 lines of C ANSI code
JAVA API for MCUs
“Android for IoT”
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
OS Stack for IoT Gateways
OSGi implementation
Native support for MQTT
Serial, RS-485, BLE, MODBUS, OPC-UA, CAN Bus, …
NAT, firewall, modem configuration, …
Remote Management over MQTT
Milo
GATEWAYS AND SMART DEVICES
R
emot
e M
anag
emen
t
Application Runtime
Data Management & Messaging
OS / RTOS
Connectivity
Field protocols IoT protocols
Network Management
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
GATEWAYS AND SMART DEVICES
R
emot
e M
anag
emen
t
Application Runtime
Data Management & Messaging
OS / RTOS
Connectivity
Field protocols IoT protocols
Network Management
OS Stack for Home Automation
OSGi implementation
Rule engine to orchestrate “things”
Home automation protocols such asBelkin WeMo, LIFX, Philips Hue, …
Remote firmware update through the GW
Web UI and API for remote control
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
OS Stack for IoT Cloud
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Device Management
Device Registry
OS Stack for IoT Cloud
OMA LWM2M implementation in Javabuilt on top of Eclipse Californium (CoAP)
Manage software upgrade campaignsindependently of the actual DM protocol
IOT CLOUD PLATFORM
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse hawkBit
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
IOT CLOUD PLATFORM
Con
nec
tivi
ty
Mes
sag
e R
outi
ng
OS / PaaS
Device Management
Data Management
Event Management, Analytics & UI
Device Registry
Application Enablement
OS Stack for IoT Cloud Platform
Abstract the actual communication protocols via “protocol adapters”
Deploy on:
An Integration Platform for IoT Services
NoSQL data store
REST API / Digital Twin
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse hono
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse IoT Adoption
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse IoT Programs
Virtual IoTOpen
IoT ChallengeIoT
MarketplaceTestbeds
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
One more thing…
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Eclipse Enterprise for Java (EE4J)Moving Java EE to Eclipse Foundation
Technology
✓✓✓✓
Sponsorship
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
•••
–––
••
–
Eclipse Enterprise for Java (EE4J)Project Overview
✓✓✓✓
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
● Java-based Machine Learning Framework○ Toolkit for building, training and deploying Neural Networks
● Distributed training○ GPU or Hadoop/Spark
● Use cases:○ network intrusion detection, predictive maintenance,
recommender systems in e-commerce, image recognition, …
Eclipse Deeplearning4j
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
Join us!
2.4 30* 280+ 140Kmillion
lines of codeprojects developers monthly
visitors
* and counting!
https://iot.eclipse.org
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
● Check out the projects○ Contribute ideas, bug fixes, use cases…
● Participate on the mailing lists
● Virtual IoT Meetup○ https://www.meetup.com/virtual-iot
● Propose your project!
Join us!
Copyright © 2018 The Eclipse Foundation. All Rights Reserved
IoT Developer Survey
https://goo.gl/zidHso
Top Related