Device Management
with OMA Lightweight M2M
Alexandre Moreno
1 / 30
Agenda
1. Introduction
2. Architecture overview
3. Interfaces
4. IPSO Smart Objects
2 / 30
What is it? LWM2M is a device lifecycle management
specification (enabler)
lightweight: amount of data transferred as small
as possible.
provides a spec. for functions like:
firmware upgrade
provisioning of certificates
access control policies
connectivity monitoring
etc.
3 / 30
What is it?
Why use it?
decoupling of devices from our platform services
(via standard interfaces)
no more end-to-end solution trap
addresses security need for software updates and
device re-configuration
gives us credibility as a serious partner
both device management and application data
handling in the same protocol.
better time to market
reach many more devices!
new business opportunities
business benefits highlighted
4 / 30
LWM2M Server
persistent endpoint through which
devices and apps interact
deployable on gateways and in the
cloud
LWM2M Client
Hosts resources (objects) that
represent a physical device.
LWM2M clients are CoAP servers.
Architecture overview
5 / 30
Features Version 1.0 (intial realase):
Simple Object based resource model
CRUD operations on resource attributes
Resource observation/notification
JSON data format
DTLS based security
Queue mode for NAT/Firewall environment
Multiple LWM2M Server support
M2M functions: Access Control, Connectivity,
Firmware Update, etc.
6 / 30
Modular Stack
7 / 30
Object model
8 / 30
9 / 30
Object
model
Consists of:
1. Object representation
2. Data types
3. Operations
4. Content Formats
10 / 30
Object
model
Normative
Objects
LWM2M Objects required by OMA:
Security: to handle security aspects between
management servers and the LWM2M client on
the device.
Server: to define data and functions related to the
management servers.
Device: to detail resources on the M2M device
related to device specific information.
11 / 30
Object
model
Normative
Objects
LWM2M Objects recommended by OMA:
Firmware: to detail resources on the M2M device
useful for firmware upgrades.
Access Control: to define for each of several
permitted management servers the kinds of access
rights they have for each data object on the client.
Location: to group those resources that provide
information about the current location of an M2M
device.
Connectivity Monitoring: to group together
resources on the M2M device that assist in
monitoring the status of a network connection.
Connection Statistics: to group together resources
on the M2M device that hold statistical
information about an existing network
connection.
12 / 30
Object
model
Normative
Objects
IPSO Smart
Objects
Guideline defining application-level web objects.
Basic sensors, actuators and application-specific
devices are specified.
Goal: promoting reusable and cross-domain
standards
13 / 30
Interfaces
14 / 30
Bootstrapping LWM2M Bootstrap Server URI and keys pre-
provisioned.
Server credential provisoning *:
pre-shared keys
raw public keys
X.509 certs
Access Control Object:
As the LWM2M Client MAY support 1+
LWM2M Servers, operations on objects need
to be authorized.
Example: a gateway and a cloud server both
can access a device, but gateway cannot
upgrade firmware.
* the bootstrap server installs server and security objects on the device.
15 / 30
16 / 30
Bootstrapping
Client
Registration
Upon succsefull boostrapping, the device:
registers with the LWM2M Servers that the
Boostrap Server created Object instances.
After this step, the server is aware of the
device.
periodically updates its registration. Can be
initiated by the server too.
it can too de-register e.g. at the end of the device
lifecycle.
17 / 30
Bootstrapping
Client
Registration
Device
management
Objects on the device are accessible with the
operations in this interface:
Read
Discover
Write
Write attributes
Execute
Create
Delete
18 / 30
Bootstrapping
Client
Registration
Device
management
Information
reporting
LWM2M Server can observe any changes in a
Resource on a LWM2M Client, receiving notifications
when new values are available.
Operations:
Observe
Nontify
Cancel Observation
19 / 30
LWM2M DevKit
20 / 30
IPSO Smart Objects
21 / 30
What is it? Provides semantic interoperability between IoT
devices and connected software applications on
other devices and services.
IOW, help build an ecosystem of smart objects that
works on existing LWM2M infrastructure.
22 / 30
Features Object templates for common applications
Reuses/conforms to the Object model from OMA
LWM2M
Address vertical application segments, e.g. smart
home.
OMA Name Authority to register new objects.
Can be used with any transport protocol (CoAP,
HTTP, MQTT) which can support LWM2M
addressing, data types, and content formats
23 / 30
Example: Firmware update
Object definition
Name
Object
ID
Instances
Mandatory
object
Object URN
Firmware
Update
5 Single Optional urn:oma:lwm2m:oma:5
24 / 30
Example: Firmware update
Resources definition
ID Name OperationsInstancesMandatory Type
Range or
Enumeration
Units
0 Package W Single Mandatory Opaque
1 Package URI W Single Mandatory String 0-255 bytes
2 Update E Single Mandatory none no argument
3 State R Single Mandatory Integer 0-3
4
Update
Supported
Objects
RW Single Optional Boolean
25 / 30
Example: GPS Location
Object Info:
Object
Object
ID
Object URN
Multiple
Instances?
Desc
Location 3336 urn:oma:lwm2m:ext:3336 Yes
Location in GPS
Coordinates
26 / 30
Example: GPS Location
Resources:
Resource Name
Resource
ID
Access
Type
Multiple
Instances?
Type Units ...
Latitude 5513 R No String
Units
resource
Longitude 5514 R No String idem
Altitude 5515 R No String idem
Uncertainty 5516 R No String idem
Compass
Direction
5705 R No Float Degrees
Timestamp 5518 R No Optional Time
Application
Type
5750 R,W No Optional String
... ... ... ... ... ... ...
27 / 30
Common Template Sensors
Resource
Name
Resource
ID
Access
Type
Multiple
Instances?
Type Units Descriptions
Units 5701 R No String
e.g. “Cel” for
Temperature in
Celsius.
28 / 30
Example: object linking
29 / 30
Additional resources
http://openmobilealliance.org/data-models-for-the-internet-of-things/
http://www.tschofenig.priv.at/wp/?p=1119
http://www.slideshare.net/OpenMobileAlliance/oma-lwm2m-workshop-
michael-koster-ipso-alliance-objects
http://www.slideshare.net/zdshelby/embedded-devices-on-the-internet-of-
things
http://www.ipso-alliance.org/wp-content/uploads/2016/01/ipso-paper.pdf
30 / 30

OMA LWM2M overview