1. Why IoT needs
Open Source Communities
Philippe Krief, PhD
Eclipse Foundation
Research Relations Director
philippe.krief@eclipse.org
2. Internet of Things Landscape
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 2
3. May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 3
Today, IoT looks like this:
“Internet of Silos”
5. May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 5
One way to create a standard:
Make your own !
9. Which operating system(s) do you use for your IoT devices?
73.1%
23.1%
12.7% 11.1% 9.5% 7.4% 6.0% 6.0% 5.8% 5.6%
Linux No OS /
Bare-metal
FreeRTOS Other Windows
Embedded
mbed Contiki TinyOS Don’t know RIOT
5/5/2016 IoT Developer Survey 2016 - Copyright Eclipse Foundation 9
10. What messaging protocol(s) do you use for your IoT solution?
2.3%
3.5%
5.3%
6.2%
7.4%
13.2%
13.9%
15.5%
19.2%
21.2%
52.4%
61.2%
None
DDS
Other
Proprietary vendor protocol
I don’t know
XMPP
AMQP
In-house / proprietary
HTTP/2
CoAP
MQTT
HTTP
5/5/2016 IoT Developer Survey 2016 - Copyright Eclipse Foundation 10
11. Key Findings
5/5/2016 IoT Developer Survey 2016 - Copyright Eclipse Foundation 11
52%
use
open hardware
for deployment or prototyping
58%
actively participate in
open source
projects for IoT
Open IoT
12. MQTT CASE
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 12
13. What is MQTT
• Simple Publish/Subscribe protocol
• Small footprint
• Minimal on-the-wire formal and payload
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 13
MQTT Client MQTT Broker
14. May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 14
Invented
by IBM and Arcom
back in 1999
Open Source Community built the
Standard
Google Trend
15. LET’S TALK ABOUT ECLIPSE
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 15
16. Eclipse is all about Building Communities
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 16
Working Groups (2009)
Foundation (2004)
IDE (2001) Platform/RCP/... (2005) Research (2013)
…
17. Business Drivers for Collaborative Development
Identify precisely what your IT competitive differentiators are for your
customers
Focus all possible energies there, and acquire everything else from OSS, or help
build it in OSS
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 17
Build this in and with
open source, even if
that means working
with your direct
competitors.
Platform
&
Components
Value
18. Or in other words…
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 18
Co-develop the
platform/standards in
collaboration with others
Platform
&
Components
Value Focus on your value
Business
Friendly !
19. ECLIPSE IOT WORKING GROUP
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 19
20. Eclipse IoT by numbers
2 22 150+
MLOC projects developers
Lots of Java but also C, C++, Python, .Net, …
21. IoT Architectures
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 21
New and Existing
Devices
IoT Gateways Network/Wireless
Services
Backend Systems
22. Vorto
Open Source at Eclipse IoT
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 22
23. May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 23
And much more…
http://iot.eclipse.org/projects
25. EUROPEAN COMMISSION AND OPEN SOURCE
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 25
26. European Commission & Open Source
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 26
27. May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 27
28. 28May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0
AGILE:
Adaptive Gateways for dIverse muLtiple Environments
• AGILE builds a modular hardware and software
gateway for the Internet of Things with support for:
– protocol interoperability,
– device and data management,
– IoT apps execution,
– and external Cloud communication,
• featuring diverse pilot activities, Open Calls &
Community building.
For further information:
http://www.agile-iot.eu
@agile_iot
Gateway O/S
IoT
framework
IoT SDK …
Device
Discovery
… …
Management
UI
Developers UI
Workflow
Recommender
Collaboration
Tool
29. AGILE IoT Pilots
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 29
Pilot #1 Pilot #2
Pilot #3 Pilot #4
30. Philippe Krief
Research Relations Director
philippe.krief@eclipse.org
Twitter: @phkrief
May-2016 Copyright (c) 2016, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 30
https://www.eclipsecon.org/france2016
Toulouse, France · June 7 - 9, 2016
MEET THE ECLIPSE COMMUNITIES !
Editor's Notes
Bonjour
Il y une quinzaine d’année, je travaillais en Java sur des systèmes embarqués.
A l’époque la seule chose qui nous préoccupait était de s’assurer que l’OS sur lequel on aller tourner supporter notre VM Java.
A partir de là, il nous était facile de déployer nos solutions.
Il y avait peut de connectivité: une connexion GPS et, dans le meilleurs des cas, une connexion GSM pour renvoyer des data régulièrement vers un serveur.
En terme de standard, comme je travaillais sur les plateformes multimédias automobile, il n’y en avait pas vraiment. Certain d’entre nous interagissaient avec les CAN BUS mais comme simple moyen pour faire communiquer 2 microprocesseurs. Rien de plus.
A oui, il y avait 2/3 gars qui bossaient sur un protocole IBM propriétaire qui s’appelait Websphere MQ(TT) pour faire du message queuing avec SOA.
A developer community will do a number of things for the technology:
Increase the usefulness of the technology through add-ons, applications, and information resources.
Source of innovation of how the technology can be used and applied.
- Publish–subscribe pattern
? Confirm that WG started in 2009 (or 2013)?
-
In fact the complexity can be viewed from the typical IoT architecture. 1) you have to deal with different types of devices that may have different hardware platforms, operating systems, software stacks. 2) these devices typically connect to some type of IoT gateway that is responsible for managing the devices and connecting them to the Internet, 3) the gateways and some devices will need to have some type of network connectivity, either Wifi, mobile, satellite, and 4) the IoT application needs to integrate with the existing enterprise and backend system, ex. Databases, CRM, ERP, etc.
The Krikkit Eclipse project provides an API through a software library that will enable a user or developer to 'program' IoT edge devices such as sensor gateways and make it easy to acquire and manage data.
Vorto is an open source tool that allows to create and manage technology agnostic, abstract device descriptions, so called information models. Information models describe the attributes and the capabilities of real world devices. These information models can be managed and shared within the Vorto Information Model Repository. Code Generators for Information Models let you integrate devices into different platforms.
EclipseSCADA provides a state of the art open source SCADA system. Simply speaking the primary target of Eclipse SCADA is a way to connect different industrial devices to a common communication system and post-process as well as visualize the data to operating personnel.
Leshan provides libraries that help people develop their own Lightweight M2M server and client. OMA Lightweight M2M server and client in Java
Californium is a powerful CoAP framework targetting back-end services and stronger Internet of Things devices. It provides a convenient API for RESTful Web services that support all of CoAP's features.
4DIAC provides an industrial-grade open source infrastructurefor distributed industrial process measurement and control systemsbased on the IEC 61499 standard. IEC 61499 defines a domain specific modeling language for developing distributed industrial control solutions.
The Eclipse OM2M project, initiated by LAAS-CNRS, is an open source implementation of oneM2M and SmartM2M standard. It provides a horizontal M2M service platform for developing services independently of the underlying network, with the aim to facilitate the deployment of vertical applications and heterogeneous devices.
Pilot #1:
- Handle different types of data and sources
- Cloud platforms / services from application providers
- Data sharing of raw and processed data with other users
- Security
Pilot #2:
- API for Data Presentation
- VPN Tunnelling
- Encrypted data link
- Encrypted onboard storage
- Data should be accessible trough an authenticated cloud service
Pilot #3:
- Air quality and pollution monitoring
Pilot #4:
- Enhanced Retail Services