LWM2M Introduction - Edinburgh 2016 Workshop with ARM

11
LWM2M INTRODUCTION Edinburgh - May 2016 Hannes Tschofenig - ARM Limited The information in this presentation is public. | Copyright © 2016

Transcript of LWM2M Introduction - Edinburgh 2016 Workshop with ARM

Page 1: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

LWM2M INTRODUCTION

Edinburgh - May 2016Hannes Tschofenig - ARM Limited

The information in this presentation is public. | Copyright © 2016

Page 2: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

DEVICE MANAGEMENT FUNCTIONALITY

Mobile Device Management

Device Management

Bootstrapping

Device Configuration

Firmware Update

Fault Management

Key management Service

provisioning Access Control Changes to settings Changes to parameters of

the device Update application and system

software Bug fixes Report Errors from devices Query about status of devices

Application Configuration & Control

Reporting

Configure settings of the application

Send control commands Notify changes in sensor values Notify alarms and events

Page 3: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

HIGH LEVEL ARCHITECTURE M2M Applications

Application abstraction through REST API

Resource Discovery and Linking

LWM2M Clients are Devices Device abstraction through CoAP and

objects. Works over any IP network connection

LWM2M Server Uses CoAP Re-uses the Resource Directory Gateway and Cloud deployable

Page 4: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

LWM2M INTERFACES

• Bootstrap Interface– Configure Servers & Keys & ACLs– Pre-Configured, Smart Card, or Server

Initiated Bootstrap– CoAP REST API

• Registration Interface– RFC 6690 and Resource Directory

• Management Interface Using Objects– Management Objects and Resources– CoAP REST API

• Reporting Interface– Object Instances and Resources

Report– Asynchronous notification using CoAP

Observe

Page 5: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

LWM2M SPECIFICATIONS

• Requirements, architecture and technical specifications are available for download at http://technical.openmobilealliance.org/Technical/technical-information/release-program/current-releases/oma-lightweightm2m-v1-0

• Issue tracker is available at https://github.com/OpenMobileAlliance/OMA_LwM2M_for_Developers/issues

• Wiki page is available at https://github.com/OpenMobileAlliance/OMA_LwM2M_for_Developers/wiki

• Leshan, a popular open source LWM2M server implementation (in Java) at https://github.com/eclipse/leshan

Page 6: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

• A LWM2M Client has one or more Object Instances

• An Object is a collection of Resources• A Resource is an atomic piece of

information that can be Read, Written or Executed

• Resources can have multiple instances• Access control list (ACL) objects control

access to objects accessed by LWM2M Servers

• Objects and Resources are identified by a 16-bit Integer, Instances by an 8-bit Integer

OBJECT MODEL

©Sensinode 2013

Page 7: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

• REST API with a URI template• Objects • Object Instances• Resources

• Reusable resource and object IDs• Common definitions for concepts• Map to semantic terms e.g.

temperature, currentValue• IDs are registered with the OMNA

• Can be embedded in a path hierarchy on the server• /home/weather/3303/0/5700

3303/0/5700

Object ID, defines object type

Object Instance, one or more

Resource ID, defines resource type

OBJECT MODEL, CONT.

Page 8: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

The LWM2M Technical Specification defines several objects

OBJECTS DEFINITIONS

©Sensinode 2013

Object Name ID Multiple Instances? DescriptionLWM2M Security 0 Yes This LWM2M Object provides the keying material of a

LWM2M Client appropriate to access a specified LWM2M Server.

LWM2M Server 1 Yes This LWM2M objects provides the data related to a LWM2M server.

Access Control 2 Yes Access Control Object is used to check whether the LWM2M Server has access right for performing an operation.

Device 3 No This LWM2M Object provides a range of device related information which can be queried by the LWM2M Server, and a device reboot and factory reset function.

Connectivity Monitoring 4 No This LWM2M objects enables monitoring of parameters related to network connectivity.

Firmware 5 No This Object includes installing firmware package, updating firmware, and performing actions after updating firmware.

Location 6 No The GPS location of the device.Connectivity Statistics 7 No This LWM2M Objects enables client to collect statistical

information and enables the LWM2M Server to retrieve these information, set the collection duration and reset the statistical parameters.

Page 9: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

Temperature sensor: This IPSO object should be used over a temperature sensor to report a remote temperature measurement. It also provides resources for minimum/maximum measured values and the minimum/maximum range that can be measured by the temperature sensor. The unit used here is Celsius degree. Object info

Resource Info

Object Object ID Object URN Multiple Instances?

IPSO Temperature 3303 urn:oma:lwm2m:ext:3303 Yes

Resource Name Resource ID

Access Type

Multiple Instances? Type Units Descriptions

Sensor Value 5700 R No Decimal Cel This resource type returns the Temperature Value in °C

Min Measured Value 5601 R No Decimal Cel The minimum value measured by the sensor since it is ON

Max Measured Value 5602 R No Decimal Cel The maximum value measured by the sensor since it is ON

Accessing the Resources• Temperature Value

/3303/0/5700• Min Measured Value

/3303/0/5601• Max Measured Value

/3303/0/5602

LWM2M Client

/3303/0

5700

5601

5602

Temperature Value

Min Measured Value

Max Measured Value

Object

IPSO OBJECT EXAMPLE: TEMPERATURE

Page 10: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

The information in this presentation is public. | Copyright © 2016 Open Mobile Alliance Ltd. All rights reserved.

FINDING ALL DEFINED OBJECTS

OMNA Lightweight M2M (LWM2M) Object & Resource Registry contains all definitions.

Includes object definitions from

Page 11: LWM2M Introduction - Edinburgh 2016 Workshop with ARM

COMPOSITE OBJECT