SlideShare a Scribd company logo
Connecting IoT Devices to FIWARE
Fernando López
FIWARE Cloud and Platform Senior Expert
fernando.lopez@fiware.org
@flopezaguilar
1
#SmartCities
#SmartAgrifood
#SmartIndustry
FIWARE: Technology for Smart*
#SmartRegions
NGSI	CONTEXT	INFORMATION
IoT Interoperability ? Still a $1,000,000 question
3
4
5
We	need	to	find
We need to find the exit of this labyrinth
6
FIWARE IoT: Interoperability at Context Data Level
Satisfying Developers view:
§ Common language for all Data Sources (IoT and non-IoT).
§ Single REST API. Query, Subscribe, Trigger Actions.
§ Open Source solutions published in GitHub, Read-the-docs, etc.
7
Street Devices
• Location
• Observations
• Commands
Context Broker
NGSI API
Boiler
• Manufacturer
• Last revision
• Product id
• Temperature
• Actions
Users
• Name-Surname
• Birthday
• Location
• ToDo list
City
• OpenData
• Users Input
Public Bus T.System
• Location
• Arrival time
APPs / Services / Data Scientist
Previously: Sylos or Verticals
SmartCity/Smart*
8
High	Efficiency
• Automatization
Higher	IT	Business
• Common	suppliers
Maintenance
• Different	platforms
Previously: Horizontals
SmartCity/Smart*
9
Higher	Efficiency
• Automatization
• Maintenance
Higher	IT	Business
• Common	suppliers
Intelligence
Connectivity
Monolithic
• Very	complex
• Scaling
• Only	one	connectivity
FIWARE Smart*: Local Ecosystem
growth engine
10
Higher	Efficiency
Boost	Overall	
Business
• Cross-vertical	ideas	and	
services	
• New	Players
• Data	Scientists
• Developers
• Shared	Networks,	Cloud
Smart* FIWARE most-used IoT Stack
11
Talking to IoT – Choosing an IoT-Agent
12
Use IoT Agents node.js
library to develop your
own IoT Agent.
Can I program my
devices/gateways
to support a given
IoT protocol?
Is your IoT network
lossy & unstable or
your devices too
constrained to support
HTTP/TCP?
Use LWM2M IoT Agent. UDP is
recommended for constrained
networks and CoAP is REST for
constrained devices
Are your coding
Preferences/ libraries/
language handling better
JSON objects rather than
shorter text messages?
Use Ultralight2.0 IoT
Agent. Messages are
simple and light as “t|25”
No
Yes
Use JSON IoT Agent.
Choose MQTT if RT
bidirectionality is a
must.
Yes
No
No
Yes
Ongoing Work
§ Evolution of IoT Agents
• Include new functionalities such as data Transformations.
• New protocols (Modbus)
• Consider IoT management.
§ From Cloud-Centralized to Distributed models
• IoT Agents, NGSI Brokers and CEP at the IoT Gateway Level.
§ Context Data Models
• Smartcities: OASC Alliance
• SmartAgrifood: IoF Project
• SmartIndustry
§ Federation and other implementations of NGSI Brokers
• IoT Broker
§ Market dynamization (marketplace)
• FIWARE-ready IoT Device Program.
13
IoT Agents
14
FIWARE IoT architecture
15
16
IoT Platform
1717
IOTA IOTA IOTA
DEV
DEV
DEV
DEV
DEV
DEV
DEV
DEV
DEV
UL 2.0 LWM2M MQTT
NGSI
IoT Manager
Provision API
App
App
App
App
App
App
App
App
App
App
App
App
IoT Agents Overview
18
• Design principles:
• Modular approach
• Deployment flexibility
• Ease the creation of Custom IoT Agents
• Device Protocol to NGSI Bridge
• One entity per device
• Constrained set of interactions
• Provisioning of devices and groups of devices
• IoT Manager
• Additional services (e.g. security, model transformation, stats)
Example: Group provision
19
API Key provision
Type definition
Common attributes and
commands
POST /iot/services HTTP/1.1
Host: localhost:4041
Fiware-Service: smartsville
Fiware-ServicePath: /management
Content-Type: application/json
{
"services": [
{
"apikey": "1234567890",
"resource": "/iot/d",
"type": "smartcity",
"protocol": "PDI-IoTA-UltraLight"
}
]
}
Example: Device provision
20
Device ID definition
Defines per-device
attributes and commands
POST /iot/devices HTTP/1.1
Host: localhost:4041
Fiware-Service: smartsville
Fiware-ServicePath: /management
Content-Type: application/json
{
"devices": [{
"device_id": "smartsville",
"entity_type": "smartcity",
"protocol": "PDI-IoTA-UltraLight",
"attributes": [
{
"object_id": "lum",
"name": "Luminance",
"type": "lumens"
}
]}]}
Example: Ultralight 2.0 HTTP
21
Simple HTTP Protocol
Key Pair values
Push and Pull commands
POST /iot/d?k=1234567890&i=smartsville HTTP/1.1
Host: localhost:7896
Content-Type: text/plain
Cache-Control: no-cache
park1|true|park2|false|lum|300
HTTP/1.1 200 OK
Content-Length: 88
Content-Type: text/html
Connection: Closed
smartsville@semaphoreFreq|2|smartsville@luminosityL
imit|200
Links and documentation
§ IoT Agent Library
• https://github.com/telefonicaid/iotagent-node-lib
§ Ultralight 2.0 IoT Agent
• https://github.com/telefonicaid/iotagent-ul
§ The FIWARE Catalogue
• https://catalogue.fiware.org/
22
IoT Broker
23
Table of Contents
• Introduction
• What does IoT Broker do?
• Advanced Features:
• IoT Knowledge Server
• IoT Broker Federation
• IoT Broker Scalability
25
The FIWARE Enablers for IoT
What does the IoT Broker do?
FIWARE GE:
IoT Broker
Thing Abstraction: enable
applications to interact with things instead of
sensors
Thing-Level Interaction: Organizing
information flows:
- executing information
queries on behalf of
applications
- discover the resources
providing the requested
information
- collecting & aggregating the
received information – query
and subscribe/notify
abstractions
apps
Devices Gateways other sources
IoT Broker
§ decouples applications from underlying IoT device installations
§ paradigm adopted: Subscribe/Notify
§ Context data fetched directly from reporitory
§ No need of a centralized repository, but can be added “Plug&Play”
§ Optimized communications with underlying device installations
§ Initialized only when requested from the application
§ Bandwidth communication reduced
§ Scalability ensured in a scenario of billion of devices
§ Assemble lower-level device information (device-centric access) into
higher-level Thing information (information-centric access)
§ Naming: From Devices (e.g. sensorId) to Things (e.g. Trafalgar Square).
§ Type & Context: Close the gap between information-centric applications and
device-centric IoT installations
§ Discovery & Resolution: IoT applications are agnostic of the device
installations
§ Advanced Features:
§ Association
§ Entity Composition
Emerging	IoT	Protocol	Stack
IoT Development System
• SDK
• OS Integration
• IoT Hardware
IoT Integration Layer
• IoT Resources: Black Box
Container
• REST-based Access
OMA	NGSI
(IoT	Broker)
IoT Entities
• Contextualized Information
• Content-based Queries
• Pub / Sub
Knowledge-base
Semantic Processing Agents
Data Integration
• across many systems
• Semantic Representation
• Semantic Mediation
New Standardization: ETSI ISG on
Contextualized Information Models
Advanced Feature:
§ IoT Knowledge Server
§ Add semantic information into NGSI messages
§ Enhance NGSI messages with semantic reasoning
§ IoT Broker Federation
§ Separate IoT domains
§ Improve IoT system integration
§ IoT Broker Scalability
§ Enhance performances in envisioned scenario of millions of devices in
each domain
IoT Knowledge Server
IoT Knowledge Server: Overview
§ IoT Knowledge Server: A standalone component created for serving
semantic information
§ Purpose: serving IoT Broker with triple-store datasets of semantic
ontologies (e.g., NGSI/SmartSantander ontology)
§ Record and Explore Information Structure contained in the real-world
data
§ “get sub types of an entity type”
§ Interfaces: REST API and Subscribe/Notify in JSON format
§ IoT Knowledge Server is composed of two components (web servers)
and two databases along with the servers
Functionalities
§ Pre-Defined Queries
§ HTTP requests for getSubTypes, getSuperTypes, getAttributes,
getAllSubTypes, getAllSuperTypes
§ Add new queries
§ New queries with one or zero variables (e.g. Entity Type) can be added to a
file and we can start using as a new functionality (other than the 5 above)
§ Register new queries
§ Adding new queries by HTTP request on the fly (without restarting the
server)
§ Forward SPARQL queries
§ To provide single point of contact even for direct SPARQL queries along with
the high level ones (getSubTypes)
§ Subscribe functionality
§ Subscribing to queries and regular (fixed time) updates on change to the
subscribers by the IoTKnowledgeServer.
§ Caching mechanism
§ Caching mechanisms for fast respond (without asking SPARQL server)
§ Both for Queries and for Subscriptions
An example query
Apache
Jena
Fuseki
RDF Triple Store
REST
JSON
JDBC
IoT Broker
JSON
Ontology
manager
REST
getSubTypes of Sensor
“getSubTypes_Sensor”
2
Get SPARQL
Query for getSubTypes
SELECT ?type WHERE {?type
rdfs:subClassOf ngsi:<???>}
SELECT ?type WHERE {?type
rdfs:subClassOf ngsi:Sensor}
NULL
3
1
4
5
6
7 {TempSensor,
NoiseSensor,
LightSensor}
8
{TempSensor,
NoiseSensor,
LightSensor}
<K,V>
REST
9
<“getSubTypes_Sensor”,
{TempSensor,
NoiseSensor,
LightSensor} >
IoT Knowledge
Server
IoT Knowledge Server: Example
ApplicationApplicationApplications
IoT AgentsContext
Providers
IoT Broker IoT Discovery
Availability request:
Entity of type “sensor”
Legend:
- NGSI-10
- NGSI-9
- IoT
Knowledge
Server APIData request:
Entity of type
“sensor”
Data Responses:
Entity of type
“sensor”,
“TempSensor”,
“NoiseSensor”,
“LightSensor”
IoT Knowledge
Server
getSubTypes of Sensor {TempSensor,
NoiseSensor,
LightSensor}
Data request:
Entity of type
“sensor”,
“TempSensor”,
“NoiseSensor”,
“LightSensor”
IoT Broker Federation
IoT Broker Federation
§ Smart Cities are dominated by federated information from different
agencies
§ An IoT platform is responsible for a single IoT domain
§ Separate IoT data in different domains
§ Full power on the produced data to the IoT domain administrator, e.g. for
privacy purpose
§ Selective communication to a specific domain
§ Selected by IoT domain name
§ Selected by entity name
§ Selected by attribute type provided
§ Selected by scope, e.g. geographic scope
§ Mixture of the above.
Federation: hierarchical
Applications
NGSI
agents
NGSI
NGSI
NGSI
NGSI
IoT Platform (a)
IoT
Broker
IoT
Discovery
IoT Platform (b)
IoT
Broker
IoT
Discovery
NGSI
agents
▌IoT Platform Hierarchy
lTwo type of platform
• Subordinated IoT Platform: responsible for
its IoT domain; subordinated to Platform
• Top IoT Platform: responsible of its own
domain of NGSI devices; contact point for all
subordinated domains
lTwo IoT domains manage their data in
separate repositories
lCommon communication language
based on standard NGSI protocol
lMechanism of Subscribe Notify for
accessing the data
▌Feature: broadcasting
lTop IoT Platform dispatches
query/subscription to subordinated IoT
Platform
▌Feature: selective communication
lPossibility to query/subscribe only to a
specific subordinated IoT Platform
Federation: mash-up
Applications
NGSI
agents
NGSI
NGSI
NGSI
NGSI
agents
NGSI
Applications
NGSI
NGSI
agents
NGSIApplications NGSI
IoT Platform (a)
IoT
Broker
IoT
Discovery
IoTPlatform(c)
IoT
Broker
IoT Platform (b)
IoT
Broker
IoT
Discovery
NGSI
▌ IoT Platform Mesh
l Each platform is a peer
l Each peer is responsible of its own domain
l Applications requesting a peer will get data
coming from other peer transparently
▌ Feature: broadcasting
l Peer broadcast request to all known peer
▌ Feature: selective communication
l Possibility to query/subscribe only to a specific
known peer
▌ Feature: loop detection
l A loop detection feature avoid loop in the topology
IoT Broker Scalability
Scalability
ApplicationApplicationApplications
IoT AgentsContext
Providers
IoT Broker
IoT Discovery
registration
availability
requests
LoadBalancer(e.g.DNS)
Legend:
- NGSI-10
- NGSI-9
IoT Broker
IoT Broker
- Update
- Query
- Subscription
Responses
- Query
- Subscription
IoT on the edge
41
FIWARE IoT architecture
42
edge
43
FIWARE in the cloud & in the edge
sensor data providers
LPWAN sensors
developers
end users
other data
providers
latency-critical
sensor & actuator
networks
FIWARE
backend
Apps
Operator
platform
LPWA
Network
servers
Equipment
vendor
platform
sensor data providers
Smart City platform
44
CKAN
Big Data
Context Broker
Accounting&Payment&Billing
IDM&Auth
Short-term
historic
data
BigData
Processing
Data
Quering/Action,
Publish/Subscr
Open Data
publishing
Real-time
processing
BI
ETL
RULES
DEFINITION
TOOL
OPERATIONAL
DASHBOARD
KPI GOVERNANCE OPEN DATA PORTALS
Service
orchestrator
Context
Adapters
CEP
IoT Backend
measures /
commands
Sensors Open DataActuators
Media
streams
Real Time
Media
Stream
Processing
City Services
GIS
Inventory
Specific Enablers
Generic Enablers
IoT Edge
Device
manag
ement
&
abstra
ction
45
46
http://fiware.org
Follow @FIWARE on Twitter
Thank you!
http://fiware.org
Follow @FIWARE on Twitter
Backup slides

More Related Content

What's hot (20)

PPTX
IoT Agents (Introduction)
dmoranj
 
PPTX
Azure IoT Hub
WinWire Technologies Inc
 
PPTX
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
Getting value from IoT, Integration and Data Analytics
 
PPTX
IoT on Azure
Vinoth Rajagopalan
 
PPTX
IoT Broker
FIWARE
 
PPTX
FIWARE Developers Week_IoT basic exercises
FIWARE
 
PPTX
Introduction to Azure IoT Suite
Daniel Toomey
 
PPTX
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)
Codit
 
PPTX
Business Transformation with Microsoft Azure IoT
Ilyas F ☁☁☁
 
PPTX
Connecting Heterogeneus IoT Technologies & Products
FIWARE
 
PPTX
DotNetToscana - Azure IoT Hub - Il Concentratore
Riccardo Cappello
 
PPTX
Connecting IoT devices to Azure
Guy Barrette
 
PDF
What is an IoT Agent
Fernando Lopez Aguilar
 
PPTX
Microsoft Azure IoT Hub (Sam Vanhoutte @TechdaysNL 2017)
Codit
 
PPTX
Anonymous Individual Integration for IoT
Paul Fremantle
 
PPTX
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Vinoth Rajagopalan
 
PPT
FIWARE Developers Week_FIWARE IoT: Beginner's tutorial_conference
FIWARE
 
PPTX
Azure iot
書廷 林
 
PPTX
Context Information Management in IoT enabled smart systems - the basics
Fernando Lopez Aguilar
 
PDF
New Features for Mobile Device Management (MDM) With Entgra
Vichitra Godamunne
 
IoT Agents (Introduction)
dmoranj
 
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
Getting value from IoT, Integration and Data Analytics
 
IoT on Azure
Vinoth Rajagopalan
 
IoT Broker
FIWARE
 
FIWARE Developers Week_IoT basic exercises
FIWARE
 
Introduction to Azure IoT Suite
Daniel Toomey
 
Azure IoT suite - A look behind the curtain (Sam Vanhoutte @AZUG Event)
Codit
 
Business Transformation with Microsoft Azure IoT
Ilyas F ☁☁☁
 
Connecting Heterogeneus IoT Technologies & Products
FIWARE
 
DotNetToscana - Azure IoT Hub - Il Concentratore
Riccardo Cappello
 
Connecting IoT devices to Azure
Guy Barrette
 
What is an IoT Agent
Fernando Lopez Aguilar
 
Microsoft Azure IoT Hub (Sam Vanhoutte @TechdaysNL 2017)
Codit
 
Anonymous Individual Integration for IoT
Paul Fremantle
 
Global Azure boot camp 2015 - Microsoft IoT Solutions with Azure
Vinoth Rajagopalan
 
FIWARE Developers Week_FIWARE IoT: Beginner's tutorial_conference
FIWARE
 
Azure iot
書廷 林
 
Context Information Management in IoT enabled smart systems - the basics
Fernando Lopez Aguilar
 
New Features for Mobile Device Management (MDM) With Entgra
Vichitra Godamunne
 

Similar to Connecting to the internet of things (IoT) (20)

PPTX
IoT Discovery GE: An Introduction
Tarek Elsaleh
 
PDF
FIWARE Global Summit - Connecting to IoT
FIWARE
 
PDF
FIWARE Global Summit - Connecting Sensors to FIWARE with IDAS: An Overview
FIWARE
 
PDF
FIWARE Tech Summit - FIWARE IoT Agents
FIWARE
 
PPTX
Connecting to the IoT
FIWARE
 
PDF
FIWARE Training: IoT and Legacy
FIWARE
 
PDF
NGSI-LD IoT Agents
FIWARE
 
PPTX
Fiware: the pillar of the Future Internet (Overview)
Juanjo Hierro
 
PPTX
IoT Discovery tutorial
Tarek Elsaleh
 
PPTX
IoT-Broker Developers Week
Flavio Cirillo
 
PDF
FIWARE Training: Connecting to Legacy Systems, IoT and other Systems
FIWARE
 
PDF
FIWARE Tech Summit - FIWARE NGSIv2 Introduction
FIWARE
 
PPT
FIWARE IoT Proposal & Community
FIWARE
 
PPTX
UNIT 1 Nan mudhalvan how tofaefjlnajlncjlanjlcnajknfjkanjkfnajnfj
22l105
 
PPTX
FIWARE NGSI: Managing Context Information at Large Scale
FIWARE
 
PPTX
IoT Agents (With Lightweight M2M)
dmoranj
 
PPTX
Internet of Things (IoT)
Akanksha Prasad
 
PDF
FIWARE-IoT-Broker-introduction
gesslers
 
PPTX
Internet of Things (IOT) - Lecture 1.pptx
jocidop652
 
PPTX
Internet of Things (IOT) - Lecture 1.pptx
jocidop652
 
IoT Discovery GE: An Introduction
Tarek Elsaleh
 
FIWARE Global Summit - Connecting to IoT
FIWARE
 
FIWARE Global Summit - Connecting Sensors to FIWARE with IDAS: An Overview
FIWARE
 
FIWARE Tech Summit - FIWARE IoT Agents
FIWARE
 
Connecting to the IoT
FIWARE
 
FIWARE Training: IoT and Legacy
FIWARE
 
NGSI-LD IoT Agents
FIWARE
 
Fiware: the pillar of the Future Internet (Overview)
Juanjo Hierro
 
IoT Discovery tutorial
Tarek Elsaleh
 
IoT-Broker Developers Week
Flavio Cirillo
 
FIWARE Training: Connecting to Legacy Systems, IoT and other Systems
FIWARE
 
FIWARE Tech Summit - FIWARE NGSIv2 Introduction
FIWARE
 
FIWARE IoT Proposal & Community
FIWARE
 
UNIT 1 Nan mudhalvan how tofaefjlnajlncjlanjlcnajknfjkanjkfnajnfj
22l105
 
FIWARE NGSI: Managing Context Information at Large Scale
FIWARE
 
IoT Agents (With Lightweight M2M)
dmoranj
 
Internet of Things (IoT)
Akanksha Prasad
 
FIWARE-IoT-Broker-introduction
gesslers
 
Internet of Things (IOT) - Lecture 1.pptx
jocidop652
 
Internet of Things (IOT) - Lecture 1.pptx
jocidop652
 
Ad

More from Fernando Lopez Aguilar (20)

PDF
Introduction to FIWARE technology
Fernando Lopez Aguilar
 
PDF
DW2020 Data Models - FIWARE Platform
Fernando Lopez Aguilar
 
PPTX
FIWARE and Smart Data Models
Fernando Lopez Aguilar
 
PPTX
How to deploy a smart city platform?
Fernando Lopez Aguilar
 
PPTX
Building the Smart City Platform on FIWARE Lab
Fernando Lopez Aguilar
 
PDF
Data Modeling with NGSI, NGSI-LD
Fernando Lopez Aguilar
 
PDF
FIWARE and Robotics
Fernando Lopez Aguilar
 
PDF
Big Data and Machine Learning with FIWARE
Fernando Lopez Aguilar
 
PDF
Operational Dashboards with FIWARE WireCloud
Fernando Lopez Aguilar
 
PDF
Creating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Fernando Lopez Aguilar
 
PDF
FIWARE Identity Management and Access Control
Fernando Lopez Aguilar
 
PDF
Data persistency (draco, cygnus, sth comet, quantum leap)
Fernando Lopez Aguilar
 
PDF
How to debug IoT Agents
Fernando Lopez Aguilar
 
PDF
Core Context Management
Fernando Lopez Aguilar
 
PDF
FIWARE Overview
Fernando Lopez Aguilar
 
PDF
Overview of the FIWARE Ecosystem
Fernando Lopez Aguilar
 
PPTX
Cloud and Big Data in the agriculture sector
Fernando Lopez Aguilar
 
PDF
Berlin OpenStack Summit'18
Fernando Lopez Aguilar
 
PPTX
Setting up your virtual infrastructure using FIWARE Lab Cloud
Fernando Lopez Aguilar
 
PPTX
How to deploy spark instance using ansible 2.0 in fiware lab v2
Fernando Lopez Aguilar
 
Introduction to FIWARE technology
Fernando Lopez Aguilar
 
DW2020 Data Models - FIWARE Platform
Fernando Lopez Aguilar
 
FIWARE and Smart Data Models
Fernando Lopez Aguilar
 
How to deploy a smart city platform?
Fernando Lopez Aguilar
 
Building the Smart City Platform on FIWARE Lab
Fernando Lopez Aguilar
 
Data Modeling with NGSI, NGSI-LD
Fernando Lopez Aguilar
 
FIWARE and Robotics
Fernando Lopez Aguilar
 
Big Data and Machine Learning with FIWARE
Fernando Lopez Aguilar
 
Operational Dashboards with FIWARE WireCloud
Fernando Lopez Aguilar
 
Creating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Fernando Lopez Aguilar
 
FIWARE Identity Management and Access Control
Fernando Lopez Aguilar
 
Data persistency (draco, cygnus, sth comet, quantum leap)
Fernando Lopez Aguilar
 
How to debug IoT Agents
Fernando Lopez Aguilar
 
Core Context Management
Fernando Lopez Aguilar
 
FIWARE Overview
Fernando Lopez Aguilar
 
Overview of the FIWARE Ecosystem
Fernando Lopez Aguilar
 
Cloud and Big Data in the agriculture sector
Fernando Lopez Aguilar
 
Berlin OpenStack Summit'18
Fernando Lopez Aguilar
 
Setting up your virtual infrastructure using FIWARE Lab Cloud
Fernando Lopez Aguilar
 
How to deploy spark instance using ansible 2.0 in fiware lab v2
Fernando Lopez Aguilar
 
Ad

Recently uploaded (20)

PDF
Digital Security in 2025 with Adut Angelina
The ClarityDesk
 
PPTX
Template Timeplan & Roadmap Product.pptx
ImeldaYulistya
 
PPTX
1.10-Ruta=1st Term------------------------------1st.pptx
zk7304860098
 
PDF
Technical Guide to Build a Successful Shopify Marketplace from Scratch.pdf
CartCoders
 
PDF
DORA - MobileOps & MORA - DORA for Mobile Applications
Willy ROUVRE
 
PDF
The Complete Guide to Chrome Net Internals DNS – 2025
Orage Technologies
 
PPTX
英国学位证(RCM毕业证书)皇家音乐学院毕业证书如何办理
Taqyea
 
PPTX
ZARA-Case.pptx djdkkdjnddkdoodkdxjidjdnhdjjdjx
RonnelPineda2
 
PPTX
sajflsajfljsdfljslfjslfsdfas;fdsfksadfjlsdflkjslgfs;lfjlsajfl;sajfasfd.pptx
theknightme
 
PDF
Internet Governance and its role in Global economy presentation By Shreedeep ...
Shreedeep Rayamajhi
 
PPTX
Internet_of_Things_Presentation_KaifRahaman.pptx
kaifrahaman27593
 
PDF
The Power and Impact of Promotion most useful
RajaBilal42
 
PPTX
Simplifying and CounFounding in egime.pptx
Ryanto10
 
PPTX
unit 2_2 copy right fdrgfdgfai and sm.pptx
nepmithibai2024
 
PPTX
PE introd.pptxfrgfgfdgfdgfgrtretrt44t444
nepmithibai2024
 
PPTX
ipv6 very very very very vvoverview.pptx
eyala75
 
PPTX
Optimization_Techniques_ML_Presentation.pptx
farispalayi
 
PPTX
一比一原版(LaTech毕业证)路易斯安那理工大学毕业证如何办理
Taqyea
 
PPTX
Random Presentation By Fuhran Khalil uio
maniieiish
 
PDF
Web Hosting for Shopify WooCommerce etc.
Harry_Phoneix Harry_Phoneix
 
Digital Security in 2025 with Adut Angelina
The ClarityDesk
 
Template Timeplan & Roadmap Product.pptx
ImeldaYulistya
 
1.10-Ruta=1st Term------------------------------1st.pptx
zk7304860098
 
Technical Guide to Build a Successful Shopify Marketplace from Scratch.pdf
CartCoders
 
DORA - MobileOps & MORA - DORA for Mobile Applications
Willy ROUVRE
 
The Complete Guide to Chrome Net Internals DNS – 2025
Orage Technologies
 
英国学位证(RCM毕业证书)皇家音乐学院毕业证书如何办理
Taqyea
 
ZARA-Case.pptx djdkkdjnddkdoodkdxjidjdnhdjjdjx
RonnelPineda2
 
sajflsajfljsdfljslfjslfsdfas;fdsfksadfjlsdflkjslgfs;lfjlsajfl;sajfasfd.pptx
theknightme
 
Internet Governance and its role in Global economy presentation By Shreedeep ...
Shreedeep Rayamajhi
 
Internet_of_Things_Presentation_KaifRahaman.pptx
kaifrahaman27593
 
The Power and Impact of Promotion most useful
RajaBilal42
 
Simplifying and CounFounding in egime.pptx
Ryanto10
 
unit 2_2 copy right fdrgfdgfai and sm.pptx
nepmithibai2024
 
PE introd.pptxfrgfgfdgfdgfgrtretrt44t444
nepmithibai2024
 
ipv6 very very very very vvoverview.pptx
eyala75
 
Optimization_Techniques_ML_Presentation.pptx
farispalayi
 
一比一原版(LaTech毕业证)路易斯安那理工大学毕业证如何办理
Taqyea
 
Random Presentation By Fuhran Khalil uio
maniieiish
 
Web Hosting for Shopify WooCommerce etc.
Harry_Phoneix Harry_Phoneix
 

Connecting to the internet of things (IoT)

  • 1. Connecting IoT Devices to FIWARE Fernando López FIWARE Cloud and Platform Senior Expert [email protected] @flopezaguilar
  • 2. 1
  • 3. #SmartCities #SmartAgrifood #SmartIndustry FIWARE: Technology for Smart* #SmartRegions NGSI CONTEXT INFORMATION
  • 4. IoT Interoperability ? Still a $1,000,000 question 3
  • 5. 4
  • 6. 5 We need to find We need to find the exit of this labyrinth
  • 7. 6
  • 8. FIWARE IoT: Interoperability at Context Data Level Satisfying Developers view: § Common language for all Data Sources (IoT and non-IoT). § Single REST API. Query, Subscribe, Trigger Actions. § Open Source solutions published in GitHub, Read-the-docs, etc. 7 Street Devices • Location • Observations • Commands Context Broker NGSI API Boiler • Manufacturer • Last revision • Product id • Temperature • Actions Users • Name-Surname • Birthday • Location • ToDo list City • OpenData • Users Input Public Bus T.System • Location • Arrival time APPs / Services / Data Scientist
  • 9. Previously: Sylos or Verticals SmartCity/Smart* 8 High Efficiency • Automatization Higher IT Business • Common suppliers Maintenance • Different platforms
  • 10. Previously: Horizontals SmartCity/Smart* 9 Higher Efficiency • Automatization • Maintenance Higher IT Business • Common suppliers Intelligence Connectivity Monolithic • Very complex • Scaling • Only one connectivity
  • 11. FIWARE Smart*: Local Ecosystem growth engine 10 Higher Efficiency Boost Overall Business • Cross-vertical ideas and services • New Players • Data Scientists • Developers • Shared Networks, Cloud
  • 12. Smart* FIWARE most-used IoT Stack 11
  • 13. Talking to IoT – Choosing an IoT-Agent 12 Use IoT Agents node.js library to develop your own IoT Agent. Can I program my devices/gateways to support a given IoT protocol? Is your IoT network lossy & unstable or your devices too constrained to support HTTP/TCP? Use LWM2M IoT Agent. UDP is recommended for constrained networks and CoAP is REST for constrained devices Are your coding Preferences/ libraries/ language handling better JSON objects rather than shorter text messages? Use Ultralight2.0 IoT Agent. Messages are simple and light as “t|25” No Yes Use JSON IoT Agent. Choose MQTT if RT bidirectionality is a must. Yes No No Yes
  • 14. Ongoing Work § Evolution of IoT Agents • Include new functionalities such as data Transformations. • New protocols (Modbus) • Consider IoT management. § From Cloud-Centralized to Distributed models • IoT Agents, NGSI Brokers and CEP at the IoT Gateway Level. § Context Data Models • Smartcities: OASC Alliance • SmartAgrifood: IoF Project • SmartIndustry § Federation and other implementations of NGSI Brokers • IoT Broker § Market dynamization (marketplace) • FIWARE-ready IoT Device Program. 13
  • 17. 16
  • 18. IoT Platform 1717 IOTA IOTA IOTA DEV DEV DEV DEV DEV DEV DEV DEV DEV UL 2.0 LWM2M MQTT NGSI IoT Manager Provision API App App App App App App App App App App App App
  • 19. IoT Agents Overview 18 • Design principles: • Modular approach • Deployment flexibility • Ease the creation of Custom IoT Agents • Device Protocol to NGSI Bridge • One entity per device • Constrained set of interactions • Provisioning of devices and groups of devices • IoT Manager • Additional services (e.g. security, model transformation, stats)
  • 20. Example: Group provision 19 API Key provision Type definition Common attributes and commands POST /iot/services HTTP/1.1 Host: localhost:4041 Fiware-Service: smartsville Fiware-ServicePath: /management Content-Type: application/json { "services": [ { "apikey": "1234567890", "resource": "/iot/d", "type": "smartcity", "protocol": "PDI-IoTA-UltraLight" } ] }
  • 21. Example: Device provision 20 Device ID definition Defines per-device attributes and commands POST /iot/devices HTTP/1.1 Host: localhost:4041 Fiware-Service: smartsville Fiware-ServicePath: /management Content-Type: application/json { "devices": [{ "device_id": "smartsville", "entity_type": "smartcity", "protocol": "PDI-IoTA-UltraLight", "attributes": [ { "object_id": "lum", "name": "Luminance", "type": "lumens" } ]}]}
  • 22. Example: Ultralight 2.0 HTTP 21 Simple HTTP Protocol Key Pair values Push and Pull commands POST /iot/d?k=1234567890&amp;i=smartsville HTTP/1.1 Host: localhost:7896 Content-Type: text/plain Cache-Control: no-cache park1|true|park2|false|lum|300 HTTP/1.1 200 OK Content-Length: 88 Content-Type: text/html Connection: Closed smartsville@semaphoreFreq|2|smartsville@luminosityL imit|200
  • 23. Links and documentation § IoT Agent Library • https://github.com/telefonicaid/iotagent-node-lib § Ultralight 2.0 IoT Agent • https://github.com/telefonicaid/iotagent-ul § The FIWARE Catalogue • https://catalogue.fiware.org/ 22
  • 25. Table of Contents • Introduction • What does IoT Broker do? • Advanced Features: • IoT Knowledge Server • IoT Broker Federation • IoT Broker Scalability
  • 27. What does the IoT Broker do? FIWARE GE: IoT Broker Thing Abstraction: enable applications to interact with things instead of sensors Thing-Level Interaction: Organizing information flows: - executing information queries on behalf of applications - discover the resources providing the requested information - collecting & aggregating the received information – query and subscribe/notify abstractions apps Devices Gateways other sources
  • 28. IoT Broker § decouples applications from underlying IoT device installations § paradigm adopted: Subscribe/Notify § Context data fetched directly from reporitory § No need of a centralized repository, but can be added “Plug&Play” § Optimized communications with underlying device installations § Initialized only when requested from the application § Bandwidth communication reduced § Scalability ensured in a scenario of billion of devices § Assemble lower-level device information (device-centric access) into higher-level Thing information (information-centric access) § Naming: From Devices (e.g. sensorId) to Things (e.g. Trafalgar Square). § Type & Context: Close the gap between information-centric applications and device-centric IoT installations § Discovery & Resolution: IoT applications are agnostic of the device installations § Advanced Features: § Association § Entity Composition
  • 29. Emerging IoT Protocol Stack IoT Development System • SDK • OS Integration • IoT Hardware IoT Integration Layer • IoT Resources: Black Box Container • REST-based Access OMA NGSI (IoT Broker) IoT Entities • Contextualized Information • Content-based Queries • Pub / Sub Knowledge-base Semantic Processing Agents Data Integration • across many systems • Semantic Representation • Semantic Mediation New Standardization: ETSI ISG on Contextualized Information Models
  • 30. Advanced Feature: § IoT Knowledge Server § Add semantic information into NGSI messages § Enhance NGSI messages with semantic reasoning § IoT Broker Federation § Separate IoT domains § Improve IoT system integration § IoT Broker Scalability § Enhance performances in envisioned scenario of millions of devices in each domain
  • 32. IoT Knowledge Server: Overview § IoT Knowledge Server: A standalone component created for serving semantic information § Purpose: serving IoT Broker with triple-store datasets of semantic ontologies (e.g., NGSI/SmartSantander ontology) § Record and Explore Information Structure contained in the real-world data § “get sub types of an entity type” § Interfaces: REST API and Subscribe/Notify in JSON format § IoT Knowledge Server is composed of two components (web servers) and two databases along with the servers
  • 33. Functionalities § Pre-Defined Queries § HTTP requests for getSubTypes, getSuperTypes, getAttributes, getAllSubTypes, getAllSuperTypes § Add new queries § New queries with one or zero variables (e.g. Entity Type) can be added to a file and we can start using as a new functionality (other than the 5 above) § Register new queries § Adding new queries by HTTP request on the fly (without restarting the server) § Forward SPARQL queries § To provide single point of contact even for direct SPARQL queries along with the high level ones (getSubTypes) § Subscribe functionality § Subscribing to queries and regular (fixed time) updates on change to the subscribers by the IoTKnowledgeServer. § Caching mechanism § Caching mechanisms for fast respond (without asking SPARQL server) § Both for Queries and for Subscriptions
  • 34. An example query Apache Jena Fuseki RDF Triple Store REST JSON JDBC IoT Broker JSON Ontology manager REST getSubTypes of Sensor “getSubTypes_Sensor” 2 Get SPARQL Query for getSubTypes SELECT ?type WHERE {?type rdfs:subClassOf ngsi:<???>} SELECT ?type WHERE {?type rdfs:subClassOf ngsi:Sensor} NULL 3 1 4 5 6 7 {TempSensor, NoiseSensor, LightSensor} 8 {TempSensor, NoiseSensor, LightSensor} <K,V> REST 9 <“getSubTypes_Sensor”, {TempSensor, NoiseSensor, LightSensor} > IoT Knowledge Server
  • 35. IoT Knowledge Server: Example ApplicationApplicationApplications IoT AgentsContext Providers IoT Broker IoT Discovery Availability request: Entity of type “sensor” Legend: - NGSI-10 - NGSI-9 - IoT Knowledge Server APIData request: Entity of type “sensor” Data Responses: Entity of type “sensor”, “TempSensor”, “NoiseSensor”, “LightSensor” IoT Knowledge Server getSubTypes of Sensor {TempSensor, NoiseSensor, LightSensor} Data request: Entity of type “sensor”, “TempSensor”, “NoiseSensor”, “LightSensor”
  • 37. IoT Broker Federation § Smart Cities are dominated by federated information from different agencies § An IoT platform is responsible for a single IoT domain § Separate IoT data in different domains § Full power on the produced data to the IoT domain administrator, e.g. for privacy purpose § Selective communication to a specific domain § Selected by IoT domain name § Selected by entity name § Selected by attribute type provided § Selected by scope, e.g. geographic scope § Mixture of the above.
  • 38. Federation: hierarchical Applications NGSI agents NGSI NGSI NGSI NGSI IoT Platform (a) IoT Broker IoT Discovery IoT Platform (b) IoT Broker IoT Discovery NGSI agents ▌IoT Platform Hierarchy lTwo type of platform • Subordinated IoT Platform: responsible for its IoT domain; subordinated to Platform • Top IoT Platform: responsible of its own domain of NGSI devices; contact point for all subordinated domains lTwo IoT domains manage their data in separate repositories lCommon communication language based on standard NGSI protocol lMechanism of Subscribe Notify for accessing the data ▌Feature: broadcasting lTop IoT Platform dispatches query/subscription to subordinated IoT Platform ▌Feature: selective communication lPossibility to query/subscribe only to a specific subordinated IoT Platform
  • 39. Federation: mash-up Applications NGSI agents NGSI NGSI NGSI NGSI agents NGSI Applications NGSI NGSI agents NGSIApplications NGSI IoT Platform (a) IoT Broker IoT Discovery IoTPlatform(c) IoT Broker IoT Platform (b) IoT Broker IoT Discovery NGSI ▌ IoT Platform Mesh l Each platform is a peer l Each peer is responsible of its own domain l Applications requesting a peer will get data coming from other peer transparently ▌ Feature: broadcasting l Peer broadcast request to all known peer ▌ Feature: selective communication l Possibility to query/subscribe only to a specific known peer ▌ Feature: loop detection l A loop detection feature avoid loop in the topology
  • 41. Scalability ApplicationApplicationApplications IoT AgentsContext Providers IoT Broker IoT Discovery registration availability requests LoadBalancer(e.g.DNS) Legend: - NGSI-10 - NGSI-9 IoT Broker IoT Broker - Update - Query - Subscription Responses - Query - Subscription
  • 42. IoT on the edge 41
  • 44. edge 43 FIWARE in the cloud & in the edge sensor data providers LPWAN sensors developers end users other data providers latency-critical sensor & actuator networks FIWARE backend Apps Operator platform LPWA Network servers Equipment vendor platform sensor data providers
  • 45. Smart City platform 44 CKAN Big Data Context Broker Accounting&Payment&Billing IDM&Auth Short-term historic data BigData Processing Data Quering/Action, Publish/Subscr Open Data publishing Real-time processing BI ETL RULES DEFINITION TOOL OPERATIONAL DASHBOARD KPI GOVERNANCE OPEN DATA PORTALS Service orchestrator Context Adapters CEP IoT Backend measures / commands Sensors Open DataActuators Media streams Real Time Media Stream Processing City Services GIS Inventory Specific Enablers Generic Enablers IoT Edge Device manag ement & abstra ction
  • 46. 45