eclipse iot: open source technology for iot developers

47
Connect and Manage Devices Ian Skerrett Eclipse Foundation

Upload: ian-skerrett

Post on 08-Jan-2017

1.353 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Eclipse IoT: Open source technology for IoT developers

Connect and Manage DevicesIan Skerrett

Eclipse Foundation

Page 2: Eclipse IoT: Open source technology for IoT developers

Open Wins

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 2

Page 3: Eclipse IoT: Open source technology for IoT developers

Open Wins

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 3

Page 4: Eclipse IoT: Open source technology for IoT developers

MQTT – Open Wins

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 4

Page 5: Eclipse IoT: Open source technology for IoT developers

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

5

Openness Attracts Developers

Page 6: Eclipse IoT: Open source technology for IoT developers

IoT Developer Enablement

Page 7: Eclipse IoT: Open source technology for IoT developers

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

7

Developers Build Cool Stuff

Page 8: Eclipse IoT: Open source technology for IoT developers

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

8

Open Hardware Is a Key Enabler

Page 9: Eclipse IoT: Open source technology for IoT developers

05/02/2023 IoT Developer Survey 2015 - Copyright Eclipse Foundation

9

Accessible Hardware

18%

28%

36%

11%

7%

Have you ever used any accessible hardware platforms like Raspberry Pi, Arduino, BeagleBone, etc. ?

Yes, my company deploys IoT solution using an acces-sible hardware platform.

Yes, my company prototypes IoT solutions using an accessible hardware platform.

Yes, I have experimented with accessible hardware in my spare time

No, but I intent to experiment with accessible hardware in the next 6 months.

Never used open hardware.

Page 10: Eclipse IoT: Open source technology for IoT developers

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

10

Open Source Will Be a Key Enabler

Page 11: Eclipse IoT: Open source technology for IoT developers

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 11

Page 12: Eclipse IoT: Open source technology for IoT developers

The Money Will Not Be In Software

Source: http://www.bloomberg.com/news/articles/2015-02-05/six-things-technology-has-made-insanely-cheap

Page 13: Eclipse IoT: Open source technology for IoT developers
Page 14: Eclipse IoT: Open source technology for IoT developers

Innovation

Open Source enables:• Permissionless innovation• Innovation through integration• Far higher levels of

experimentation

Page 15: Eclipse IoT: Open source technology for IoT developers

05/02/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0

15

Open source makes it easier for developers

Page 16: Eclipse IoT: Open source technology for IoT developers

Operating Systems

Page 17: Eclipse IoT: Open source technology for IoT developers

05/02/2023 IoT Developer Survey 2015 - Copyright Eclipse Foundation

17

Operating System

RIOT

TinyOS

mbed

Don't know

Contiki

FreeRTOS

Windows Embedded

Other (please specify)

No OS / Bare-metal

Linux

0.0% 10.0% 20.0% 30.0% 40.0% 50.0% 60.0% 70.0% 80.0% 90.0%

2.1%

6.1%

6.8%

7.1%

7.5%

11.4%

11.4%

11.4%

20.0%

78.2%

Which operating systems do you use for your IoT devices?

Page 18: Eclipse IoT: Open source technology for IoT developers

Data & Analytics

Page 19: Eclipse IoT: Open source technology for IoT developers

Interoperability

Page 20: Eclipse IoT: Open source technology for IoT developers

Connect and Manage Devices

Page 21: Eclipse IoT: Open source technology for IoT developers

Vorto

OS at Eclipse IoT

Page 22: Eclipse IoT: Open source technology for IoT developers

IoT Architectures

New and Existing Devices

IoT Gateways Network/Wireless Services

Backend Systems

Page 23: Eclipse IoT: Open source technology for IoT developers

Open Solutions

New and Existing Devices

IoT Gateways Network/Wireless Services

Backend Systems

Open Standards and Open Source to Connect and Manage

Page 24: Eclipse IoT: Open source technology for IoT developers

Connect and Manage with Open Standards

New and Existing Devices

CoAP

LWM2M

Many Open Standards

Page 25: Eclipse IoT: Open source technology for IoT developers

MQTT- Simple

Publish/Subscribe protocol

- Small footprint- Minimal on-the-wire

formal and payload

MQTT Client(Java, JS, C, C++, Python, etc.)

MQTT Client MQTT Broker

MosquittoMQTT Broker

(C Code)

Page 26: Eclipse IoT: Open source technology for IoT developers

Constrained Application Protocol (CoAP)• RESTful protocol

designed from scratch• Transparent mapping to

HTTP• Works over UDP• DTLS Security

Californium- CoAP Core- DTLS- CoAP Tools- Java implementations

REST Interface

Page 27: Eclipse IoT: Open source technology for IoT developers

Lightweight M2M

- Standard for device management

- Based on CoAP

Wakaama

Page 28: Eclipse IoT: Open source technology for IoT developers

Secure Service Discovery

Tiaki

Leveraging DNS-SEC and DNS-SD for retrieving a device configuration parameter, or its public key for establishing secured communications

Page 29: Eclipse IoT: Open source technology for IoT developers

IoT Gateway Services

IoT Gateways

Java and OSGi

Page 30: Eclipse IoT: Open source technology for IoT developers

IoT Gateways• Gateway management• How to manage remote gateways and keep them up to date• How to manage connectivity

• Manage deployed applications• Gateways become an application container• Remote configuration• Remote update

Page 31: Eclipse IoT: Open source technology for IoT developers

Where we are heading: Open IoT Stack

Java VM

Connectivity- MQTT- CoAP- LWM2M

IoT Gateway Services- Remote management- Application

management

IoT Applications

IoT Solution Frameworks- Home Automation- SCADA- OM2M

Reporting

OSGi Runtime (Concierge)

Connectivity- MQTT- CoAP- LWM2M

Alternative Languages

Developer Tools

Open & Commercial Hardware

Security- DTLS- DNS-SD- DNS-SEC

Page 32: Eclipse IoT: Open source technology for IoT developers

Solutions•Home Automation: Eclipse SmartHome

• Based on Java and OSGi• Very active community with ~100 home automation driver

implementations• Foundation for Deutsche Telekom’s QIVICON

• Telco Service Providers• Implementation of oneM2M: OM2M

Page 33: Eclipse IoT: Open source technology for IoT developers

Solutions

• Industrial IoT: • Eclipse neoSCADA• Support Siemens S7 PLC, IEC 60870-4-105

• 4DIAC - IEC 61499• Rise V2G - IEC 15118

• IoT network management: Krikkit• Rules engine for IoT devices• Powering Cisco’s Data in Motion.

Page 34: Eclipse IoT: Open source technology for IoT developers

Vorto

Page 35: Eclipse IoT: Open source technology for IoT developers

Open IoT Stack

New and Existing Devices

IoT Gateways Network/Wireless Services

Backend Systems

Open IoT Stack

Page 36: Eclipse IoT: Open source technology for IoT developers

Commercial Ecosystem

Open IoT Stack for Java

Page 37: Eclipse IoT: Open source technology for IoT developers

More Info: iot.eclipse.org

Page 38: Eclipse IoT: Open source technology for IoT developers

Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.0

39

Sandbox Servershttp://iot.eclipse.org/sandbox.html

Page 39: Eclipse IoT: Open source technology for IoT developers

Demo

Page 40: Eclipse IoT: Open source technology for IoT developers

Questions

@[email protected]

Page 41: Eclipse IoT: Open source technology for IoT developers

Backup

Page 42: Eclipse IoT: Open source technology for IoT developers

IoT Solutions – Home Automation

Page 43: Eclipse IoT: Open source technology for IoT developers

Intranet of Things for Home Automation

Page 44: Eclipse IoT: Open source technology for IoT developers

Event Bus

Persistence Services

Automation LogicUser Interfaces

Item Registry

Hue Binding

Samsung Binding

Bluetooth Binding

Sonos Binding

Hue

Blue

toot

h

Sam

sung

Sono

s

...

Page 45: Eclipse IoT: Open source technology for IoT developers

IoT Solutions: SCADA• SCADA (Supervisory Control and Data Acquisition) is defined as the

monitoring and control of technichal processes by means of a computer system

Page 46: Eclipse IoT: Open source technology for IoT developers

Hierarchical Architecture

Local control centers

Regional control centers

Global control center

Devices, like DataloggersPLCs, Beaglebone, Raspberry PI, ...

Page 47: Eclipse IoT: Open source technology for IoT developers

Protocols & Interoperability

Drivers Modbus (master & slave) Siemens S7 PLC IEC 60870-4-105 (master &

slave) *

OPC DA 2 (client) †

OPC UA (client & server) **

SNMP †, JDBC, Shell Building blocks for more

Eclipse SCADAClient and server for JavaClient for .NET using IKVMPartially: JSON, WebService

† SNMP and OPC from openSCADA* included in next release 0.2.0** planned for 0.3.0