Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

OMA LwM2M Workshop - Michael Koster, IPSO Alliance Objects


Published on

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".

Published in: Technology
  • Be the first to comment

OMA LwM2M Workshop - Michael Koster, IPSO Alliance Objects

  1. 1. 1 IPSO Smart Objects for IoT January 28, 2015
  2. 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. 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. 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
  5. 5. 5 Example IPSO Smart Object (Temperature)
  6. 6. 6 Example IPSO Smart Object (Temperature) ..continued
  7. 7. 7 IPSO Smart Object Starter Pack
  8. 8. 8 Ad-Hoc IPSO Smart Object – BLE Heart Rate Sensor Profile
  9. 9. 9 Ad-Hoc IPSO Smart Object – Smart Thermostat
  10. 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
  11. 11. 11 Composite IPSO Smart Objects – Conceptual View
  12. 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. 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. 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
  15. 15. 15 Example Template for Object Linking “objects”: { 8300: { “description”: “IPSO PID Control”, “instances”: { 0: { “resources”: { 7100: { “description”: “Input Object Link”, “value”: [3300,0] }, 7101: { “description”: “Setpoint Object Link”, “value”: [3308,0] }, 7102: { “description”: “Output Object Link”, “value”: [3306,0] }, 5750: { “description”: ”Application Type”, “value”: “Thermostat” <etc>
  16. 16. 16 objects: { 3303: { “description”: ”ipso temperature sensor”, “lwm2m-attributes”: {“pmin”: 60, “pmax”: 300, “max-age”: 360}, “core-link-attributes”: {“rt”: [”oma.lwm2m”, “urn:X-ipso:temperature”]}, “instances”: { 0:{ “lwm2m-attributes”: {}, “core-link-attributes”: {“rt”: ”urn:oma:lwm2m:ext:3303”}, “resources”: { 5700:{ “description”: ”Current Measured Value” “lwm2m-attributes”: {“pmin”: 10,”step”: 0.5}, “core-link-attributes”: {“rt”: ”ucum:temperature”, ”obs”, “ct”: 50} }, 5701: { “description”: ”units”, ”value”: ”ucum:Cel”, “operations”: [“r”] }, 5601: {“description”: ”Min Measured Value”, ”value”: 100}, 5602: {“description”: ”Max Measured Value”, ”value”: 0}, 5603: {“description”: ”Min Range Value”, ”value”: 0}, 5604: {“description”: ”Max Range Value”, ”value”: 100}, 5605: {“description”: ”Reset Min/Max”} } Example Template using Semantic Annotation
  17. 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. 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. 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
  20. 20. 20 Managed Devices TV Audio DoorLock Light Washing Machine Router LWM2M Server Smart Phone Fitbit BTLE Simple Devices Are Managed through LWM2M Servers LWM2M Server Locally Managed Remotely Managed Directly Managed from Smart Device
  21. 21. 21 Managed Device Interactions TV Audio DoorLock Light Washing Machine Router LWM2M Server Smart Phone Ethernet, WiFi, Thread Fitbit BTLE LWM2M Server Local Application Scene Control Binding, Pairing Remote Application Energy Management
  22. 22. 22 Application Devices TV Audio DoorLock Light Washing Machine Router Device Server Smart Phone Fitbit BTLE App Devices may interact with each other and participate in managed interactions LWM2M Server Phone App
  23. 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. 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. 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
  26. 26. 26 Application Receives Notifications Through Server App LWM2M Server IP Devic e IP Devic e LWM2M Clients
  27. 27. 27 LWM2M Communication Through NAT Router App LWM2M Server CoAP IP Devic e IP Devic e HW Device Endpoints NAT Router