27
Overview of Eclipse IoT

IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Embed Size (px)

Citation preview

Page 1: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Overview of Eclipse IoT

Page 2: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 3: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Eclipse IoT

Page 4: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Open Wins

Open Standards and Open Source = Adoption

Page 5: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Eclipse IoT Today

2.2M 26 210+ 132Klines of code projects developers monthly

visitors

Page 6: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Typical IoT Architecture

Devices(sensors & actuators)

Applications

telemetry

commands

telemetry

commands

IoT Cloud Platform

Gateways

Page 7: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 8: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Characteristics of Open IoT Stacks

loosely coupled

modular

platform-independant

based on open standards

API

Page 9: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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”

Page 10: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 11: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 12: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 13: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Eclipse hawkBit

Page 14: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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)

Page 15: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 16: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Cross-layer concerns

SECURITY ONTOLOGIES TOOLS

Page 17: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Cross-layer concerns

SECURITY ONTOLOGIES TOOLS

Page 18: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Eclipse Vorto

Page 19: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Cross-layer concerns

SECURITY ONTOLOGIES TOOLS

Page 20: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Our community

Page 21: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Thank you!

Page 22: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Backup slides

Page 23: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 24: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 25: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

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

Page 26: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Eclipse SmartHome

Page 27: IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)

Copyright © 2016 The Eclipse Foundation. All Rights Reserved

Eclipse Kapua