CHAPTER 5 Building Blocks - Natural Capitalism-Creating the Next
Creating the open source building blocks for IoT
-
Upload
ian-skerrett -
Category
Internet
-
view
1.636 -
download
1
Transcript of Creating the open source building blocks for IoT
![Page 1: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/1.jpg)
Connect and Manage DevicesIan Skerrett
Eclipse Foundation
![Page 2: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/2.jpg)
Creating the Open Source Building Blocks
for IoTIan Skerrett
Eclipse Foundation
![Page 3: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/3.jpg)
Open Wins
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 3
![Page 4: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/4.jpg)
Open Wins
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 4
![Page 5: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/5.jpg)
MQTT – Open Wins
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 5
![Page 6: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/6.jpg)
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
6
Openness Attracts Developers
![Page 7: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/7.jpg)
IoT Developer Enablement
![Page 8: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/8.jpg)
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
8
Developers Build Cool Stuff
![Page 9: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/9.jpg)
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
![Page 10: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/10.jpg)
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.
![Page 11: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/11.jpg)
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
![Page 12: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/12.jpg)
05/01/2023 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 12
![Page 13: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/13.jpg)
Innovation
Open Source enables:• Permissionless innovation• Innovation through integration• Far higher levels of
experimentation
![Page 14: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/14.jpg)
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
![Page 15: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/15.jpg)
Operating Systems
![Page 16: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/16.jpg)
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?
![Page 17: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/17.jpg)
Data & Analytics
![Page 18: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/18.jpg)
Interoperability
![Page 19: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/19.jpg)
Connect and Manage Devices
![Page 20: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/20.jpg)
Vorto
OS at Eclipse IoT
![Page 21: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/21.jpg)
IoT Architectures
New and Existing Devices
IoT Gateways Network/Wireless Services
Backend Systems
![Page 22: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/22.jpg)
Open Solutions
New and Existing Devices
IoT Gateways Network/Wireless Services
Backend Systems
Open Standards and Open Source to Connect and Manage
![Page 23: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/23.jpg)
Connect and Manage with Open Standards
New and Existing Devices
CoAP
LWM2M
Many Open Standards
![Page 24: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/24.jpg)
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 25: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/25.jpg)
MQTT Adoption
![Page 26: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/26.jpg)
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?
![Page 27: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/27.jpg)
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 28: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/28.jpg)
Lightweight M2M
- Standard for device management
- Based on CoAP
Wakaama
![Page 29: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/29.jpg)
LWM2M Adoption
![Page 30: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/30.jpg)
IoT Gateway Services
IoT Gateways
Java and OSGi
![Page 31: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/31.jpg)
Gateways
![Page 32: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/32.jpg)
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 33: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/33.jpg)
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
![Page 34: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/34.jpg)
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
![Page 35: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/35.jpg)
Home Automation
• Flexible Framework• Based on Java and OSGi
• Huge number of “bindings”:KNX, Nest, Philips HUE, …
![Page 36: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/36.jpg)
![Page 37: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/37.jpg)
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.
![Page 38: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/38.jpg)
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
![Page 39: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/39.jpg)
Vorto: IoT device modeling tools
![Page 40: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/40.jpg)
Open IoT Stack
New and Existing Devices
IoT Gateways Network/Wireless Services
Backend Systems
Open IoT Stack
![Page 41: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/41.jpg)
Eclipse IoT Community
![Page 42: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/42.jpg)
Eclipse IoT today
2 21150+
MLOC projects developers
![Page 43: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/43.jpg)
Commercial Ecosystem
Open IoT Stack for Java
![Page 44: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/44.jpg)
80 teams $20K+ in prizes
http://iot.eclipse.org/open-iot-challenge
![Page 45: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/45.jpg)
Virtual IoT Meetup
Bi-weekly webinars with IoT experts800 members
http://www.meetup.com/Virtual-IoT
![Page 46: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/46.jpg)
More Info: iot.eclipse.org
![Page 47: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/47.jpg)
Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.0
47
Sandbox Servershttp://iot.eclipse.org/sandbox.html
![Page 48: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/48.jpg)
Get Involved!
• Open (or fix!) bugs• Request new features• Write articles, tutorials• Participate on the mailing lists• Share your success stories• Propose your project!
![Page 50: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/50.jpg)
Backup
![Page 51: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/51.jpg)
IoT Solutions – Home Automation
![Page 52: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/52.jpg)
Intranet of Things for Home Automation
![Page 53: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/53.jpg)
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 54: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/54.jpg)
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
![Page 55: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/55.jpg)
Hierarchical Architecture
Local control centers
Regional control centers
Global control center
Devices, like DataloggersPLCs, Beaglebone, Raspberry PI, ...
![Page 56: Creating the open source building blocks for IoT](https://reader035.fdocuments.net/reader035/viewer/2022070513/588441361a28aba8438b525b/html5/thumbnails/56.jpg)
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