Presentation for the 12/12/12 Open Source Internet of Things Silicon Valley meetup.
http://www.meetup.com/The-Open-Source-Internet-Of-Things-Silicon-Valley/
Summary of the IoT TOolkit project and related concepts
http://iot-toolkit.com/
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Iottoolkit osiot
1. Tools for the Open Source
Internet of Things
IoT Toolkit
Smart Object API
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 1
2. Open Avenues for Participation
● Traditional manufacturer-consumer roles disrupted; Customize
Your Life is the new DIY
● Global innovation cycle is limited by serialized secret design
iterations and fear of lawsuits, improved by early and often
interaction during design protovation
● Industry SIGs limit participation to conforming entities
● Traditional IP trade for equity system limits access of
individuals to their own work, we need new equity value
models
● The Internet of Things will out-scale and out-last any walled
garden; what we need is an open ecosystem based on
individuals being the seat of control for their own data,
experience, and contribution
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 2
3. Open Source Ecosystem
● What is a Platform? Developers and users sharing resources,
who controls it?
● What is an Infrastructure? Communities of developers and
users sharing resources, who controls it?
● What is an Ecosystem? Communities interacting around co-
development of shared resources, community controls it.
● What is meant by “open” in which context? Is there a single
source element in the system? Who controls the access?
● What is Open Source? Free speech vs. lunch, Open Source ==
Multiple Source
● What is an Open Source Ecosystem? Open Avenues of
Participation at all levels
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 3
4. Internet of Things
● Network of Sensing, Reasoning, and Action
● Context Aware, Real-Time and Hyper-Local,
Granular Scale
● Integrating physical sensors and other data
sources, connecting the physical world to the
virtual world
● Consists of Physical Graph and Social Graph:
People connecting to things, things connecting
to things, people connecting to people
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 4
5. IoT Early Deployment
● Sensors and Actuators => Gateway or Hub =>
Cloud Service
● Vertical integration around one primary vendor
● Each vendor has a variation of REST-like API
● No high level opportunistic integration between
vendors
● Single source lock-in strategies even for “open
platforms”, typical is open source client + single
(closed) source service i.e. freemium style
services
● Too many services for users to manage
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 5
6. IoT Application is a Graph
● IoT applications will consist of graphs
● Sensors, acuators, and informing devices at the
edges
● Processing (rules, logic, filtering, aggregation) at
the nodes
● Linked according to user intentions
● Many connections, vertical, horizontal, diagonal
● Redundancy through a rugged overlay network
● Data push-on-update for scalability
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 6
7. IoT Application is a Graph
Sensors Application Actuators
User Input Logic Storage
Data Services and User
Sources Gateways Display
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 7
8. Semantic Web
● Nodes in the IoT application graph are linked by
semantic compatibility, e.g. data types and physical
types
● Semantic Web provides mechanism for discovery
and linkage of appropriate nodes by type
compatibility
● Self-describing data from ontologies
● Dynamic API to data types
● Drives high degree of articulation from simple
resource based RESTful API
● Replication and persistence formats, Big Data
compatible
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 8
9. Smart Object API
Smart Object API based on Semantic Web Linked
Data resource description and a simple set of
resource types making up a Virtual Object:
● Description: The Linked Data describing the
Object's resources, it's structure, and data types
● Observable Properties: The encapsulated data
types e.g. time+location data stream
● Observers: dynamic links for data updates to be
pushed (http POST/PUT, CoAP obs, MQ, PubSub)
● Agent: Software process to invoke on data
updates
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 9
10. Smart Object Encapsulation
of API Resources
HTTP Interface CoAP Interface
Application software
Agents handle state RDF describes resources,
changes and structure, types, and Linked
Agent Data <=> CoAP RD proxy
application logic,
including filtering and
aggregation
Description
Observers
Maps updates to Observable Data type
HTTP POST, MQTT, Property encapsulation
PubSub with description
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 10
11. Smart Object
Smart Object
Has
In Ha
te s
Ha bes
ra
Observable
ct
s
ri
s
sc
Property H
wi
De
th
a Ca
es Inv ndl lls
ib Me o er
cr tho kes s in
Des ds
Invokes methods in
in Agent Exposes
Description (API ) API via Metho
d
CREATE
D
DELETE
es
Is
Ha
Is
s
cr
Ha
ib
s
es
Applicatio Web Web API
Method API via RDF
Exposes
M2M API
n Agent URLs to API
Routes
Triples over Internet Proxy
ADDTRIPLES Client
REMOVETRIPL
ES
DESCRIBE
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 11
12. Observable Property
Observable
Property
Ha
Has
Has
s
Propert
Describes Describes
y
Subscriptio Descriptio Of
n n Interest
Ha
Ha
Ha
s
s
s
s
Ha
Ha
s
Ha
s
Exposes
Handle RDF Instanc
Exposes
Method API via r Method API via Triples MethodExposes
API via e
SUBSCRIBE URL ADDTRIPLES CREATE
Of
UNSUBSCRIBE REMOVETRIPLES DELETE
DESCRIBE GET Type
SET
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 12
13. IoT Toolkit: Gateway + Service
GaaS
● Constrained network gateway supporting multiple Wireless
Sensor Nets (WSN)
● Using CoAP as a sensor abstraction layer, create Resource
Description for each sensor using core-link-format and IPSO
application concepts from link-format compatibility ontology.
● HTTP LD <=> CoAP RD Semantic proxy
● Service and gateway use same reference implementation and
API
● Software Agents and Resources may be replicated across
gateways and services for redundancy
● Creates a compatibility layer for sensor nets and services
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 13
14. IoT “Silo”
or other Cloud IoT Toolkit
data source Apps IoT Applications
Service IoT Gateway- run in Cloud
as-a-Service
API or on Gateway
INTERNET
IoT MULTI- Gateway
Closed
PROTOCOL Apps
Gateway
GATEWAY
Multiple Sensor Nets,
Constrained
Protocols
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 14
15. Access Control
● Rethinking of access control for granular
interaction between people and things
● Based on social graph connecting to physical
graph
● FOAF connects people to people
● SSN, O&M, IoT ontologies will connect things to
things and define situations and context
● FOAT ontology is proposed to connect people to
things with concepts of individual authority
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 15
16. Ontologies
● Ontologies define the data architecture of
these systems
● This system needs various ontologies to drive
the interactions and propagate new constructs
– SSN, IoT, O&M define sensing, actuation, situations
– SmartObject to define resources in the SmartObject
API
– LinkFormat to map CoAP RD to Linked Data
– FOAT to define relationships between people and
things
– IoTServices to define services e.g. SPARQL,
MapReduce endpoints
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 16
17. IoT Toolkit Project
● Reference implementation work in progress using
Python, rdflib, restlite
● Reference platforms Raspberry Pi + Ciseco EVE
multi-WSN, Ubuntu micro-instance GaaS
● Xbee, Z-Wave, EnOcean, XRF, RFM12B on
board, BT, WiFi, etc using USB plugs
● To Do: Document+Test complete API, high level
semantic patterns, ontologies, sensor nets,
service functionality e.g. SPARQL endpoint,
MapReduce
12/12/2012 Michael J Koster Tools for the Open Source Internet of Things 17