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.

FIWARE Tech Summit - lwM2M IoT Agent in Depth

1,241 views

Published on

Presentation by David Fernández Ros
Senior Researcher, HOP Ubiquitous

FIWARE Tech Summit
28-29 November, 2017
Malaga, Spain

Published in: Technology
  • Be the first to comment

  • Be the first to like this

FIWARE Tech Summit - lwM2M IoT Agent in Depth

  1. 1. LwM2M IOT Agent in Depth David Fernández Ros - davidfr@hopu.eu
  2. 2. HOP Ubiquitous Introduction 1 We create innovative cities with the goal of improving life quality. Thanks to the deployment of Smart POIs (Smart Point of Interaction self- managing) we achieve co-creation with the citizen, the tourism experience improvement and city monitoring.
  3. 3. The Smart Spot device 2 Our Smart Spot, developed by the HOPU team, is ready for integration and development with the FIWARE infrastructure It offers many possibilities for Smart Cities, such as: ● Bluetooth Low Energy (iBeacon, Eddystone (Physical Web)) ● Temperature, humidity & pressure monitoring ● Air quality monitoring ● Noise monitoring ● Crowd Monitoring And many more to come
  4. 4. Working with OMA LwM2M 3 A device created following a standard: For this reason, the Smart Spot is a solution compatible with most of platforms such as FIWARE.
  5. 5. Connecting the Smart Spot to FIWARE 4 Bootstrap process allows the device to configure and connect to up to 3 additional servers: Thanks to the LwM2M Bootstrap Server deployed and integrated in the Homard platform, it is really easy to setup the server configuration for a the device. In this way, anyone can deploy its own LwM2M IOTAgent with a public server IP and configure the device to integrate it in FIWARE.
  6. 6. Reaching the FIWARE ecosystem via LwM2M 5 FIWARE LWM2M IOTAgent: Mapping from LwM2M to NGSI 9/10 and viceversa FIWARE Orion Context Broker: Publish/Subscribe Context Broker
  7. 7. Reaching the FIWARE ecosystem via LwM2M (II) 6
  8. 8. Parsing LwM2M to FIWARE Data Models 7 Protocols: The IOTAgent Northbound speaks NGSI 9/10: ● Interact with Orion Context Broker ● Receive administrative information such as provisioning. The IOTAgent Southbound speaks OMA LwM2M: ● Interact with Devices Mapping: LwM2M resources must be mapped as OMA NGSI Data Models
  9. 9. IOTAgent mapping configuration methods 8 Device provisioning (administration API): ● Individual provisioning of devices based on its endpoint name. Group of devices provisioning (administration API): ● Configure a group of devices for being auto- provisioned when they register in the agent. Static provisioning (configuration file): ● Configure static routes that map incoming devices to different statically configured types.
  10. 10. IOTAgent mapping resource types 9 Lazy LwM2M Read/Write resources such as ‘Timezone’ resource (3/0/15). Attributes LwM2M Observable values such as ‘Battery Level’ resource (3/0/9). Commands LwM2M Executable resources such as ‘Reboot’ resource (3/0/4).
  11. 11. IOTAgent mapping example 10 Mapping config (IOTAgent)lazy: [ { name: 'Timezone’, type: 'String' } ], attributes: [ { name: 'temperature', type: 'Float' }, { name: 'humidity', type: 'Float' } ], lwm2mResourceMapping: { 'Timezone' : { objectType: 3, objectInstance: 0, objectResource: 15 }, 'temperature' : { objectType: 3303, objectInstance: 0, objectResource: 5700 }, 'relativeHumidity' : { objectType: 3304, objectInstance: 0, objectResource: 5700 }, } Entity (Orion Context Broker) { "id": "HOP240ac406a4fe:ssexample", "type": "ssexample", "Timezone": { "type": "String", "value": “Europe/Berlin", "metadata": {} }, "temperature": { "type": "Float", "value": "21.7048244", "metadata": {} }, "relativeHumidity": { "type": "Float", "value": "36.5033569", "metadata": {} } } LwM2M Client (Device) OBJECT ID INSTANCE ID RESOURCE ID 3 (Device) 0 0 (Manufacturer) ... 4 (Reboot) ... 15 (Timezone) OBJECT ID INSTANCE ID RESOURCE ID 3303 (Temperature) 0 5700 Sensor Value ... OBJECT ID INSTANCE ID RESOURCE ID 3304 (Humidity) 0 5700 Sensor Value ...
  12. 12. IOTAgent mapping example 11 DEMO
  13. 13. IOTAgent mapping example 12 Entity (Orion Context Broker) Incorrect mapping The entity on Orion Context Broker is not following any data model.
  14. 14. Mappings must use OMA NGSI Data Models 13 Collaborative development People can contribute to the creation of new data models via github The aim is to use ETSI CIM C3IM standard Existent data models will be adapted and the new ones will follow the ETSI CIM C3IM standard which will be released on December
  15. 15. Mappings must use OMA NGSI Data Models 14 Collaborative development People can contribute to the creation of new data models via github The aim is to use ETSI CIM C3IM standard Existent data models will be adapted and the new ones will follow the ETSI CIM C3IM standard which will be released on December Common data model ...?option=keyValues
  16. 16. Current development state 15 Nowadays is receiving updates from community ❖ Upgraded the iotagent-node-lib dependency to the last version which will allow ● Multiple data model mapping ○ A device must be mapped in several entities or data models to reflect all the possible information to create powerful interfaces. ○ These data models are related between them. Device DeviceModel AirQualityObserved SmartSpot
  17. 17. Current development state 16 "location": { "type": "Point", "coordinates": [ -3.712247222, 40.423852778 ] }, Nowadays is receiving updates from community ❖ Upgraded the iotagent-node-lib dependency to the last version which will allow ● Multiple data model mapping ○ A device must be mapped in several entities or data models to reflect all the possible information to create powerful interfaces. ○ These data models are related between them. ● Complex attributes mapping ○ Data model attributes can be composed by several LwM2M resources, such as ‘location’
  18. 18. Current development state 17 Nowadays is receiving updates from community ❖ Upgraded the iotagent-node-lib dependency to the last version which will allow ● Multiple data model mapping ○ A device must be mapped in several entities or data models to reflect all the possible information to create powerful interfaces. ○ These data models are related between them. ● Complex attributes mapping ○ Data model attributes can be composed by several LwM2M resources, such as ‘location’ ● Security ○ Include security features for LwM2M protocol
  19. 19. Thank you! http://fiware.org Follow @FIWARE on Twitter

×