Eclipse Internet of Things in Action EclipseCON 2014
1. Eclipse IoT In Action
Open Source Technologies for end-to-end IoT Solutions
Marco Carrer, EUROTECH
Kristopher Clark, ACTUATE
2. Eclipse IoT in Action
Applying open source to end-to-end IoT solutions
• Integrate and CollectCollect
• TransportTransport
• Data Analytics and IntelligenceData Analytics
• ManageManage
3. Eclipse IoT in Action
EclipseCON 2014 Setup
Door set 1 Door set 2
Environmental
Sensors
7. Environmental Monitoring
Eurotech ReliaSENS 18-12
Air Out Air In
Connectivity
• Cellular (3g, GRPS), WiFi
• Ethernet, GPS Positioning
Environment Analysis
• Electromagnetic radiation
• Radioactivity
• Temperature, Humidity, Pressure
Air Quality Measurements
• CO, CO2, NO, NO2, O3
• SO2, H2S, VOC
• PM10
8. IoT Gateway Software Stack
OSGi
on
Linux
Hardware
Java VM
Application
Application
• Built-in OSGi Services for IoT Apps
• High-level Programming Language
• Software Modularity
• Configuration Management
• Application Management
• Shorter Time-to-Market
• Device Abstraction
• Application Portability
• Investment Protection
• Integrated Device Cloud features
Application
9. Developer’s Experience
Emulate on PC Deploy on Target Cloud Managed
Start developing your IoT
/M2M application in the
comfort of your PC.
• Full Eclipse Integration
• Target Platform Definition
• Emulated Services
• Run/Debug from Eclipse
• Support Mac/Linux Hosts
When you are ready, deploy
your application on the
gateway.
• One-click Deployment
• Eclipse Plugin
• Remote Debugging
Provision and manage your
applications in field devices
from the Cloud.
• Remote OSGi
Management via MQTT
• Web-based Console
10. Functional Overview
Java VM
OSGi Application Container
Device Abstraction
Gateway Basic Services
Network Configuration
Network Management Field
Protocols
Connectivity and Delivery
AdministrationGUI
Operation&Management
Linux
Hardware
App 1 App 2 App n. . . .
Applications
11. Eclipse IoT in Action
Java VM
OSGi Application Container (Equinox)
Device Abstraction
javax.comm
Gateway Basic Services
DB Service
Clock Services
Device Profile
Watchdog
Network ConfigurationNetwork Configuration
Field Protocols
People Counter
Protocol
ReliaSENS
Protocol
Connectivity and Delivery
Data Services MQTT Paho
AdministrationGUI
Applications
EclispeCON People Counter
Application
RemoteManagement
Configuration
Management
Updates
Management
PositionUSB / javax.usb
Cloud Services
ReliaSENS Application
13. Eclipse IoT in Action
MQTT Topics and Payloads
econ/hyatt/ballroom
doorset1 doorset2 sensors
• Timestamp
• Metrics:
• inCount1
• outCount1
• inCount2
• outCount2
• Timestamp
• Metrics:
• inCount1
• outCount1
• inCount2
• outCount2
• Timestamp
• GPS Position
• Metrics:
• CO2
• VOC
• E
• PM10
• TEMP
• HUM
• PRESS
Kura Payload Kura Payload Kura Payload
14. What is BIRT?
AUGUST
2004
Actuate Joins
Eclipse Foundation
as Strategic Developer
and Board Member
Actuate proposed and started
BIRT
Business Intelligence
and Reporting Tools Project
a top-level Eclipse project
Adds BI and Reporting
as Open Source Project
Professional open source
Primary development resources
funded by Actuate
Contributions from many sources
IBM, Innovent Solutions and community
15. Simplicity
that makes
simple layouts
easy
Power
to create
very complex
layouts
BIRT
BIRT
• Makes all data-driven content development easy
• Modern, web-page design metaphor
• Open and standards-based
• Flexible with rich programmatic control
• Full support for libraries and reuse
• Foundation for a range of solutions
A New Generation of Embeddable Reporting and Analytics Technology
16. BIRT Designer
High-Level BIRT Architecture
BIRT Engine
Presentation
Services
Design Engine
Generation
Services
Data
Services
Charting
Engine
Eclipse
Designer
Chart
Designer
Eclipse
DTP,
WTP,…
Data
Data
HTML
PDF
Excel
Word
PowerPoint
PostScript
…
XML
Design
Document
17. Create Rich Data Visualizations
with BIRT Designer from any Data Source
18. Embed in your application
Open source and commercial
APIs to integrate
visualizations in context
Interactive user
experience tools
Secure server to
manage and
generate visualizations
BIRT
iHub
19. What we do with Data
DEVICE/GATEWAY
(data collection)
CLOUD
(device management and data analytics)
UI
(data visualization)
Linux
Hardware
Java VM
Eclipse
Equinox OSGi
Hardware
Everyware Cloud
Device
Manag
ement
MQTT
Broker
EUROTECH
DEVICE
CLOUD
REST API
MQTT
Dashboards
BIRT iHub
BIRT Design
BIRT
Data
Object
Web Reports
BIRT Mobile