Más contenido relacionado La actualidad más candente (20) Similar a IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop) (20) Más de Open Mobile Alliance (20) IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)2. 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
4. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Open Wins
Open Standards and Open Source = Adoption
6. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Typical IoT Architecture
Devices
(sensors & actuators)
Applications
telemetry
commands
telemetry
commands
IoT Cloud
Platform
Gateways
7. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
The 3 IoT Software Stacks
TOOLS & SDKsONTOLOGIESSECURITY
CONSTRAINED DEVICES
Hardware
Abstraction Layer (HAL)
OS / RTOS
Communication
Remote
Management
Field protocols IoT protocols
IOT CLOUD PLATFORM
Connectivity
MessageRouting
OS / PaaS
Device
Management
Data
Management
Event Management,
Analytics & UI
Device
Registry
Application
Enablement
GATEWAYS AND SMART DEVICES
RemoteManagement
Application Runtime
Data Management
& Messaging
OS / RTOS
Connectivity
Field
protocols
IoT protocols
Network Management
8. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Characteristics of Open IoT Stacks
loosely coupled
modular
platform-independant
based on open standards
API
9. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Hardware
Abstraction Layer (HAL)
OS / RTOS
Communication
Remote
Management
Field
protocols
IoT protocols
CONSTRAINED DEVICES
OS Stack for IoT Devices
Wakaama
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”
Hardware
Abstraction Layer (HAL)
OS / RTOS
Communication
Remote
Management
Field
protocols
IoT protocols
CONSTRAINED DEVICES
OS Stack for IoT Devices
Wakaama
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”
10. 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
RemoteManagement
Application Runtime
Data Management
& Messaging
OS / RTOS
Connectivity
Field protocols IoT protocols
Network Management
11. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
GATEWAYS AND SMART DEVICES
RemoteManagement
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 as
Belkin WeMo, LIFX, Philips Hue, …
Remote firmware update through the GW
Web UI and API for remote control
12. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Device
Management
Device
Registry
OS Stack for IoT Cloud
OMA LWM2M implementation in Java
built on top of Eclipse Californium (CoAP)
Manage software upgrade campaigns
independently of the actual DM protocol
IOT CLOUD PLATFORM
13. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse hawkBit
14. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
IOT CLOUD PLATFORM
Connectivity
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)
15. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
IOT CLOUD PLATFORM
Connectivity
MessageRouting
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
16. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Cross-layer concerns
SECURITY ONTOLOGIES TOOLS
17. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Cross-layer concerns
SECURITY ONTOLOGIES TOOLS
19. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Cross-layer concerns
SECURITY ONTOLOGIES TOOLS
23. 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
24. 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
25. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Java VM
OSGi Application Container
Device Abstraction
Gateway Basic Services
Network Configuration
Network Management Field
Protocols
Connectivity and Delivery
AdministrationGUI
Operation&
Management
Linux
Hardware
App 1 App 2 App n. . . .
Applications
Eclipse Kura
26. Copyright © 2016 The Eclipse Foundation. All Rights Reserved
Eclipse SmartHome