4. IoT + Open Source =
⢠What made IoT popular?
SmartThings
2012 early
prototype
Pebble proof of
concept using
Arduino (2012)
5. IoT Components
from the developerâs perspective
Devices External Services
Users - Use Cases Mobile â Web apps
6. IoT Features
from the developerâs perspective
⢠Device Communication
Data collection
Actuation
⢠Data Management
Storing and Handling-Processing
Data Sharing
⢠Device Management
⢠User Management & Access Control â User
Interfaces
⢠IoT Marketplace
7. IoT Open Source: An Overview
⢠Back-end Platforms â IoT Frameworks:
Data collection through APIs (M2M, REST, ..)
Data Management
⢠Device communication â Management
⢠User Interfaces
⢠IoT Marketplace
More than 40 IoT platforms available:
https://blog.profitbricks.com/top-49-tools-internet-of-things/
8. IoT Open Source: An Overview
⢠Back-end Platforms
⢠Nimbits
⢠Java-based Data Management
Nimbits Server records and processes geo and time
stamped data and executes rules you define based on that
information. Rules can be calculations, statistics, email
alerts, xmpp messages, push notifications and more.
nimbits.io is an Open Source Java Library that provides an
easy way to develop JAVA, Web and Android solutions that
use a Nimbits Server as a backend platform. If you're
developing software for the Internet Of Things then good
news, we're giving you a head start.
10. IoT Open Source: An Overview
⢠Back-end Platforms
MeshBlue/OctoBlue
APIs for Device/Data
Communication
SDK for BLE
https://developer.octob
lu.com/
WebSockets, MQTT,
CoAP Support
11. IoT Open Source: An Overview
⢠Back-end Platforms
MeshBlue/OctoBlue
Visual workflow editor
for Developers/End-
users
12. IoT Open Source: An Overview
⢠Back-end Platforms
Data collection (sensor to media
streams)
Queries
Composite Streams
Actuations
Data Access API
Protocol bridging
Puppet install
Apache Storm
ElasticSearch
CouchbaseDB
Apache Apollo
13. IoT Open Source: An Overview
⢠Back-end Platforms
Device Management: Connect devices
with MQTT, AMQP, Stomp, and other
protocols
HBase data management solution
Embeds Siddhi for Complex Event
Processing (CEP)
Communicates with Apache Solr for
search and analytics
Deploy to any provider that supports
Docker
Connection to WSO2 Identity Server
14. IoT Standards
⢠There is something special about IoT
⢠It involves devices
⢠Devices need protocols/standards to
communicate
16. IoT Open Source: An Overview
⢠Communication Frameworks
⢠M2M protocol support
MQTT
CoAP
OMA LWM2M
âŚ
⢠Device discovery {uPnP, âŚ}
17. IoT Open Source: An Overview
⢠Communication Frameworks
⢠M2M protocol support
CoAP
OMA LWM2M
MQTT
Client Libraries + Server + SandBox
18. IoT Open Source: An Overview
⢠Communication Frameworks
More than 100 commercial IoT
devices & protocols supported
Node.JS framework for discovery
and control
iOS + Android Libraries
21. IoT Open Source: An Overview
⢠Interfaces/Device Management
Java OSGI
Device Discovery
Manage Home
Automation Devices
22. IoT Open Source: An Overview
⢠Interfaces/Device Management
Remote
Management of
Gateway Devices
Deployment of
(Java) apps
23. IoT Open Source: An Overview
⢠Interfaces/Device Management
⢠Eclipse Leshan
Leshan is a OMA
Lightweight M2M server
and client
implementation
Remote firmware
deployment
Collect device
information
24. IoT Open Source: An Overview
⢠Interfaces/Device Management
Node.JS Visual
Workflow Editor
IoT app logic
Connection with
Services
27. IoT & WSO2
⢠HTTP, MQTT, AMQP and
other protocol support
⢠Protocol mediation and
bridging
⢠Data transformation
⢠OAuth2 Resource Server
support
⢠XACML Policy
Enforcement Point (PEP)
28. IoT & WSO2
⢠The ability to act as an
MQTT broker
⢠AMQP capabilities
⢠Both persistent and non-
persistent messaging
⢠High scalability
supporting elastic
scalability
⢠Additional M2M
Protocols ?
29. IoT & WSO2
⢠Mobile Device
Management for iOS,
Android and IoT devices
⢠A full App Store for
managing applications
and provisioning
applications onto
managed devices
⢠Integration with the
identity layer as well as
the BAM
⢠Deploy Policies
30. IoT & WSO2
⢠OAuth2 Identity Provider,
issuing, revoking and
managing tokens
⢠Single Sign-On support
including SAML2 SSO and
OpenID Connect support
⢠Support for other identity
protocols including WS-
Federation (Passive),
OpenID 2.0, Kerberos,
Integrated Windows
Authentication (IWA)
⢠Full support for XACML
31. IoT & WSO2
⢠Manages the lifecycle of
APIs and supports API
publishers
⢠Offers a developer-
focused portal for
developers to find,
explore and subscribe to
APIs
⢠Publishes usage, version
and other data into the
WSO2 BAM server
⢠Integrates with the WSO2
ESB
32. IoT & WSO2
⢠A data collection model
supporting direct collection
of data from the
bus/aggregation layer
⢠Elastically scalable storage
based on Apache Cassandra
⢠A map-reduce platform
based on Apache Hadoop
⢠A batch analytics capability
provided by Apache Hive
that allows analytics to be
written in an SQL-like
language
⢠A full modular dashboard for
creating and displaying
visualizations of the data
33. Where WSO2 stands
from the developerâs perspective
⢠Device Communication
Data collection
Actuation
⢠Data Management
Storing and Handling
Data Sharing
⢠Device Management
⢠User Management & Access Control
â User Interfaces
⢠IoT Marketplace
IoT Protocol Integration (CoAP,
XMPP, WebSockets, Weave,
etc.)
Device Authentication?
Standard Integration
User Application Logic
UMA Integration
34. IoT Challenges
⢠What is needed for The Future
-Open space for WSO2 Innovation
⢠IoT Protocol Support
Device Communication Device Discovery
Continuous Integration Integration Flexibility
Service Discovery
35. IoT Challenges
⢠What is needed for The Future
-Open space for WSO2 Innovation
⢠IoT Billing
Device2Device Billing Device2Service Billing
36. IoT Challenges
⢠What is needed for The Future
-Open space for WSO2 Innovation
⢠WSO2 on the Edge