Michael Koster from ARM presented during the Open Mobile Alliance LwM2M Workshop event on January 28, 2015. This is a copy of the slides presented for his session titled, "IPSO Alliance Objects".
2. 2
IPSO Smart Objects
Developed by the IP for Smart Objects Alliance (IPSO)
Semantic Interoperability across IoT devices and applications
Based on LWM2M object model
Reusable object IDs and resource IDs
Usable on many different transport protocols (CoAP, HTTP,
MQTT) which can support LWM2M addressing, data types,
and content formats
Basic Starter Pack for simple objects was published in 2014
Basic Objects represent simple sensors and actuators
Extensions in progress to broaden the use case applicability
3. 3
Web to the Edge - Internet Standards for IoT
Application Software
IPSO Objects
OMA LWM2M
CoAP HTTP
6LowPAN IPV4/IPV6
MCU – 16KiB RAM MPU
802.15.4 WiFi, Ethernet
Hardware
HW Network
Routing
Application Protocol
API and Services
Data Models
Application
Web Server
4. 4
IPSO Smart Objects use the LWM2M Object Model
Reusable resource and object IDs
Common definitions for concepts
across diverse applications
Map to semantic terms e.g.
temperature, currentValue
IDs are registered with the OMNA
Usable across different transport
protocols which can support:
URI Addressing
Data Types
Content Formats
Operations (Read, Write, Execute)
Some protocols may allow a subset e.g
MQTT can do Actuation and Notification
3303/0/5700
Object ID, defines object type
Object Instance, one or more
Resource ID, defines resource
type
10. 10
IPSO Smart Object Roadmap TBD
New Smart Objects to cover more use cases but need owners
More basic objects e.g. sensors, actuators, controllers
Home appliances, media control devices
Complex and composite objects using LWM2M Object Linking
Gateway integration, TR-069 interworking
Bluetooth and Zigbee Object Model Bindings
Standalone schema and templates for high level semantics
Device to Device Interaction using IPSO Smart Obejcts
12. 12
Composite Objects through Object Linking
Object Link is a new LWM2M data type
32 bit packed representation of Object ID and Instance
Composite objects can be made by using object links to
transclude other objects (include by reference)
Can use web-like pattern, following links
Linked objects are serialized inline when using SenML
13. 13
Example Composite Object using Links
3308/0
3306/0
Thermostat
8300 – IPSO Thermostat
3303/0 - IPSO Temperature
3308 – IPSO Setpoint
3306 – IPSO Actuation
Input link (7100)
Setpoint link (7101)
Output link (7102)
Application Type (5750)
3303/0
14. 14
IPSO Application Templates
Application Templates using JSON as a high level
constructor for object instances and high level composite
objects
Controls object linking and encapsulation structure
Settings, e.g. LWM2M Observe Attributes
Additional core-link-format metadata for discovery
Can include semantic hooks for abstract models
Hypermedia template for semantic discovery
Does this in a layered way as needed
17. 17
IPSO Application Templates
Constructor for embedded objects
Constructor for complex, composite objects
Controls, e.g. LWM2M Observe Attributes
Hypermedia template for embedded server
Hypermedia template for client applications
Semantic Annotation using core-link-format metadata
18. 18
IoT Use Case Architecture Framework
Application
Service e.g.
LWM2M
Application
Application
s
Client
Server
Peer-
Peer
Managed
Device, e.g.
16KB RAM,
128KB
Flash
Smart Object Registration,
Discovery and Data Layer
Service, Device Proxy and
Cache
Local, Gateway, or Cloud
Based
Applications can Discover and
Interact with devices using Peer-
Peer networking or through
Services, using the Same
Semantics
Applications running on
Servers, Gateways,
Browsers,
Smartphones, Tablets
Sensor/
Actuator
Device
Devices with
Embedded
Applications
Service e.g.
LWM2M
19. 19
Networked Devices in the Connected Home
TV
Audio
DoorLock
Light
Washing
Machine
Router
LWM2M
Server
Smart
Phone
Ethernet,
WiFi,
Thread
Fitbit
BTLE
LWM2M
Server
23. 23
Resource Discovery on the Local Network
Could return a link-format document:
</3//9>;obs;rt=“urn:X-ipso:batt-level”;ct=”50”,
</3//0>;rt=”urn:X-ipso:dev-mdl”;ct=”50”,
</3//1>;rt=”urn:X-ipso:dev-mfg”;ct=”50”,
</3305/0/5800>;obs;rt=”urn:X-ipso:pwr-w”;ct=”50”,
</3305/0/5805>;obs;rt=”urn:X-ipso:pwr-accum-wh”;ct=”50”,
</3303/0/5700>;obs;rt=”urn:X-ipso:temp-C”;ct=”50”
CoAP
Server
CoAP
Client
DISCOVERY
GET /.well-known/core
2.05 Content
Could use
multicast
24. 24
Device Registers With LWM2M Server, Application
Discovers
App
LWM2M
Server
Soft Endpoints
IP
Devic
e
IP
Devic
e
LWM2M Clients
/3303/0/5700
/domain/endpoints/3303/0/5700
25. 25
Application Interacts With Device Transparently Through
Server
App
LWM2M
Server
IP
Devic
e
IP
Devic
e
LWM2M Clients
/domain/endpoints/3303/0/5700
/3303/0/5700