iot projects in eclipse foundation using lwm2m (iot world 2017 workshop)
Post on 23-Jan-2018
721 Views
Preview:
TRANSCRIPT
Overview of Eclipse IoT
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse Foundation
● Not-for-profit Foundation responsible for the Eclipse community
● 320+ open source projects○ Working groups for Geo-spatial tech, IoT, System
engineering and embedded dev., Science, Automotive, …
● 250+ members
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse IoT
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Open Wins
Open Standards and Open Source = Adoption
Eclipse IoT Today
2.2M 26 210+ 132Klines of code projects developers monthly
visitors
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Typical IoT Architecture
Devices(sensors & actuators)
Applications
telemetry
commands
telemetry
commands
IoT Cloud Platform
Gateways
Copyright © 2016 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
Conn
ecti
vity
Mes
sage
Rou
ting
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 © 2016 The Eclipse Foundation. All Rights Reserved
Characteristics of Open IoT Stacks
loosely coupled
modular
platform-independant
based on open standards
API
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Hardware Abstraction Layer (HAL)
OS / RTOS
CommunicationR
emot
e M
anag
emen
tField protocols IoT protocols
CONSTRAINED DEVICES
OS Stack for IoT Devices
WakaamaC 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”
Hardware Abstraction Layer (HAL)
OS / RTOS
CommunicationR
emot
e M
anag
emen
tField protocols IoT protocols
CONSTRAINED DEVICES
OS Stack for IoT Devices
WakaamaC 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 © 2016 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 © 2016 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 © 2016 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 © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse hawkBit
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
IOT CLOUD PLATFORM
Conn
ecti
vity
OS Stack for IoT Cloud
C implementation of an MQTT server
MQTT 3.1.1 compliant
Scalable (1000 clients = 3MB RAM)
Extensible (e.g authentication plug-ins)
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
IOT CLOUD PLATFORM
Conn
ecti
vity
Mes
sage
Rou
ting
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
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Cross-layer concerns
SECURITY ONTOLOGIES TOOLS
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Cross-layer concerns
SECURITY ONTOLOGIES TOOLS
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse Vorto
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Cross-layer concerns
SECURITY ONTOLOGIES TOOLS
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Our community
Thank you!
Backup slides
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse Edje
● Hardware Abstraction Java API for IoT embedded systems○ Peripheral management○ Controller Communication Interfaces (Serial connection,
CAN, SPI, I²C)○ Digital and Analog I/O (GPIO, ADC, DAC)
● Scope○ Target resource-constrained micro-controllers○ Provide ready-to-use software packages for target hardware○ Define a modular and easy to port framework
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse Edje requirements
● Processor: 32-bits (e.g. Cortex-M0)● Frequency: 16 MHz● RAM: 32 KB● Flash: 128 KB
● Example: STM32F4 Discovery ○ Processor: 32-bits Cortex-M4 (STM32F407VGT6)
○ Frequency: 168 MHz
○ RAM: 192 KB
○ Flash: 1 MB
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Java VM
OSGi Application Container
Device Abstraction
Gateway Basic Services
Network ConfigurationNetwork Management Field Protocols
Connectivity and Delivery
Ad
min
istr
atio
n G
UI
Op
era
tio
n &
M
anag
em
en
t
Linux
Hardware
App 1 App 2 App n. . . .
Applications
Eclipse Kura
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse SmartHome
Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse Kapua
top related