Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Eclipse IoT: Open source technology for IoT developers

1,894 views

Published on

Presentation at IoT Evolution 2016

Published in: Software
  • Be the first to comment

Eclipse IoT: Open source technology for IoT developers

  1. 1. Connect and Manage Devices Ian Skerrett Eclipse Foundation
  2. 2. Open Wins 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 2
  3. 3. Open Wins 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 3
  4. 4. MQTT – Open Wins 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 4
  5. 5. 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 5 Openness Attracts Developers
  6. 6. IoT Developer Enablement
  7. 7. 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 7 Developers Build Cool Stuff
  8. 8. 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 8 Open Hardware Is a Key Enabler
  9. 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 accessible 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. 1/26/2016 IoT Developer Survey 2015 - Copyright Eclipse Foundation 9
  10. 10. 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 10 Open Source Will Be a Key Enabler
  11. 11. 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 11
  12. 12. The Money Will Not Be In Software Source: http://www.bloomberg.com/news/articles/2015-02-05/six-things-technology-has-made-insanely-cheap
  13. 13. Innovation Open Source enables: • Permissionless innovation • Innovation through integration • Far higher levels of experimentation
  14. 14. 1/26/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 15 Open source makes it easier for developers
  15. 15. Operating Systems
  16. 16. Operating System 2.1% 6.1% 6.8% 7.1% 7.5% 11.4% 11.4% 11.4% 20.0% 78.2% 0.0% 10.0% 20.0% 30.0% 40.0% 50.0% 60.0% 70.0% 80.0% 90.0% RIOT TinyOS mbed Don't know Contiki FreeRTOS Windows Embedded Other (please specify) No OS / Bare-metal Linux Which operating systems do you use for your IoT devices? 1/26/2016 IoT Developer Survey 2015 - Copyright Eclipse Foundation 17
  17. 17. Data & Analytics
  18. 18. Interoperability
  19. 19. Connect and Manage Devices
  20. 20. Vorto OS at Eclipse IoT
  21. 21. IoT Architectures New and Existing Devices IoT Gateways Network/Wireless Services Backend Systems
  22. 22. Open Solutions New and Existing Devices IoT Gateways Network/Wireless Services Backend Systems Open Standards and Open Source to Connect and Manage
  23. 23. Connect and Manage with Open Standards New and Existing Devices CoAP LWM2M Many Open Standards
  24. 24. 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 Mosquitto MQTT Broker (C Code)
  25. 25. 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
  26. 26. Lightweight M2M - Standard for device management - Based on CoAP Wakaama
  27. 27. Secure Service Discovery Tiaki Leveraging DNS-SEC and DNS- SD for retrieving a device configuration parameter, or its public key for establishing secured communications
  28. 28. IoT Gateway Services IoT Gateways Java and OSGi
  29. 29. 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
  30. 30. 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
  31. 31. 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
  32. 32. 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.
  33. 33. Vorto
  34. 34. Open IoT Stack New and Existing Devices IoT Gateways Network/Wireless Services Backend Systems Open IoT Stack
  35. 35. Commercial Ecosystem Open IoT Stack for Java
  36. 36. More Info: iot.eclipse.org
  37. 37. Sandbox Servers http://iot.eclipse.org/sandbox.html Copyright (c) 2014 Eclipse Foundation, licensed under the EPL- 1.0 39
  38. 38. Demo
  39. 39. Questions @ianskerrett Ian.Skerrett@eclipse.org
  40. 40. Backup
  41. 41. IoT Solutions – Home Automation
  42. 42. Intranet of Things for Home Automation
  43. 43. Event Bus Persistence ServicesAutomation Logic User Interfaces Item Registry Hue Binding Samsung Binding Bluetooth Binding Sonos Binding Hue Bluetooth Samsung Sonos ...
  44. 44. 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
  45. 45. Hierarchical Architecture Local control centers Regional control centers Global control center Devices, like Dataloggers PLCs, Beaglebone, Raspberry PI, ...
  46. 46. 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 SCADA Client and server for Java Client for .NET using IKVM Partially: JSON, WebService † SNMP and OPC from openSCADA * included in next release 0.2.0 ** planned for 0.3.0

×