Upload
ian-skerrett
View
1.635
Download
1
Embed Size (px)
Citation preview
Connect and Manage DevicesIan Skerrett
Eclipse Foundation
Creating the Open Source Building Blocks
for IoTIan Skerrett
Eclipse Foundation
Open Wins
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 3
Open Wins
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 4
MQTT – Open Wins
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 5
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
6
Openness Attracts Developers
IoT Developer Enablement
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
8
Developers Build Cool Stuff
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
9
Open Hardware Is a Key Enabler
05/01/2023 IoT Developer Survey 2015 - Copyright Eclipse Foundation
10
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 us-ing an accessible hardware platform.Yes, my company prototypes IoT solutions using an accessible hardware platform.Yes, I have experimented with acces-sible hardware in my spare timeNo, but I intent to experiment with ac-cessible hardware in the next 6 months.Never used open hardware.
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
11
Open Source Software Will Be a
Key Enabler
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 12
Innovation
Open Source enables:• Permissionless innovation• Innovation through integration• Far higher levels of
experimentation
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
14
Open source makes it easier for developers
Operating Systems
05/01/2023 IoT Developer Survey 2015 - Copyright Eclipse Foundation
16
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?
Data & Analytics
Interoperability
Connect and Manage Devices
Vorto
OS at Eclipse IoT
IoT Architectures
New and Existing Devices
IoT Gateways Network/Wireless Services
Backend Systems
Open Solutions
New and Existing Devices
IoT Gateways Network/Wireless Services
Backend Systems
Open Standards and Open Source to Connect and Manage
Connect and Manage with Open Standards
New and Existing Devices
CoAP
LWM2M
Many Open Standards
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)
MQTT Adoption
05/01/2023 IoT Developer Survey 2015 - Copyright Eclipse Foundation
26
Messaging Protocol
NoneDDS
Don’t knowProprietary vendor protocol(
AMQPXMPP
In-houseCoAP
MQTTHTTP
0.0% 10.0% 20.0% 30.0% 40.0% 50.0% 60.0% 70.0%
1.1%5.4%
6.8%8.2%
11.1%11.5%
18.6%21.5%
53.0%63.1%
What general messaging protocols do you use in your IoT solution?
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
Lightweight M2M
- Standard for device management
- Based on CoAP
Wakaama
LWM2M Adoption
IoT Gateway Services
IoT Gateways
Java and OSGi
Gateways
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
Java VM
OSGi Application Container
Device Abstraction
Gateway Basic Services
Network ConfigurationNetwork Management Field
Protocols
Connectivity and Delivery
Adm
inis
trat
ion
GU
I
Ope
ratio
n &
Man
agem
ent
Linux
Hardware
App 1 App 2 App n. . . .
Applications
Where we are heading: Open IoT Stack
Connectivity- MQTT- CoAP- LWM2M
IoT Gateway Services- Remote management- Application
management
IoT Applications
IoT Solution Frameworks- Home Automation- SCADA- OM2M
Reporting
Developer Tools
Open & Commercial Hardware
Security- DTLS- DNS-SD- DNS-SEC
Home Automation
• Flexible Framework• Based on Java and OSGi
• Huge number of “bindings”:KNX, Nest, Philips HUE, …
Solutions• Telco Service Providers
• Implementation of oneM2M: OM2M
• Industrial IoT: • Eclipse neoSCADA
• Support Siemens S7 PLC, IEC 60870-4-105 • 4DIAC - IEC 61499• Rise V2G - IEC 15118• OPC-UA
• IoT network management: Krikkit• Rules engine for IoT devices• Powering Cisco’s Data in Motion.
Eclipse IoT is also...IoT Server Platform
• Software provisioning• https://projects.eclipse.org/projects/iot.hawkbit
• Uniform service interface for Telemetry and Command & Uniform service interface for Telemetry and Command & Control
ntrol• https://projects.eclipse.org/projects/iot.hono
Vorto: IoT device modeling tools
Open IoT Stack
New and Existing Devices
IoT Gateways Network/Wireless Services
Backend Systems
Open IoT Stack
Eclipse IoT Community
Eclipse IoT today
2 21150+
MLOC projects developers
Commercial Ecosystem
Open IoT Stack for Java
80 teams $20K+ in prizes
http://iot.eclipse.org/open-iot-challenge
Virtual IoT Meetup
Bi-weekly webinars with IoT experts800 members
http://www.meetup.com/Virtual-IoT
More Info: iot.eclipse.org
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.0
47
Sandbox Servershttp://iot.eclipse.org/sandbox.html
Get Involved!
• Open (or fix!) bugs• Request new features• Write articles, tutorials• Participate on the mailing lists• Share your success stories• Propose your project!
Questions
Backup
IoT Solutions – Home Automation
Intranet of Things for Home Automation
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
...
IoT Solutions: SCADA
• SCADA (Supervisory Control and Data Acquisition) is defined as the monitoring and control of technical processes by means of a computer system
Hierarchical Architecture
Local control centers
Regional control centers
Global control center
Devices, like DataloggersPLCs, Beaglebone, Raspberry PI, ...
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