oma lwm2m overview
TRANSCRIPT
What is it? LWM2M is a device lifecycle managementspecification (enabler)
lightweight: amount of data transferred as smallas 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 anddevice re-configuration
gives us credibility as a serious partner
both device management and application datahandling in the same protocol.
better time to market
reach many more devices!
new business opportunities
business benefits highlighted
4 / 30
LWM2M Serverpersistent endpoint through whichdevices and apps interact
deployable on gateways and in thecloud
LWM2M ClientHosts resources (objects) thatrepresent 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
Objectmodel
Consists of:
1. Object representation
2. Data types
3. Operations
4. Content Formats
10 / 30
Objectmodel
NormativeObjects
LWM2M Objects required by OMA:
Security: to handle security aspects betweenmanagement servers and the LWM2M client onthe device.
Server: to define data and functions related to themanagement servers.
Device: to detail resources on the M2M devicerelated to device specific information.
11 / 30
Objectmodel
NormativeObjects
LWM2M Objects recommended by OMA:
Firmware: to detail resources on the M2M deviceuseful for firmware upgrades.
Access Control: to define for each of severalpermitted management servers the kinds of accessrights they have for each data object on the client.
Location: to group those resources that provideinformation about the current location of an M2Mdevice.
Connectivity Monitoring: to group togetherresources on the M2M device that assist inmonitoring the status of a network connection.
Connection Statistics: to group together resourceson the M2M device that hold statisticalinformation about an existing networkconnection.
12 / 30
Objectmodel
NormativeObjects
IPSO SmartObjects
Guideline defining application-level web objects.Basic sensors, actuators and application-specificdevices are specified.
Goal: promoting reusable and cross-domainstandards
13 / 30
Bootstrapping LWM2M Bootstrap Server URI and keys pre-provisioned.
Server credential provisoning *:
pre-shared keysraw public keysX.509 certs
Access Control Object:
As the LWM2M Client MAY support 1+LWM2M Servers, operations on objects needto be authorized.
Example: a gateway and a cloud server bothcan access a device, but gateway cannotupgrade firmware.
* the bootstrap server installs server and security objects on the device.
15 / 30
Bootstrapping
ClientRegistration
Upon succsefull boostrapping, the device:
registers with the LWM2M Servers that theBoostrap Server created Object instances.
After this step, the server is aware of thedevice.
periodically updates its registration. Can beinitiated by the server too.
it can too de-register e.g. at the end of the devicelifecycle.
17 / 30
Bootstrapping
ClientRegistration
Devicemanagement
Objects on the device are accessible with theoperations in this interface:
Read
Discover
Write
Write attributes
Execute
Create
Delete
18 / 30
Bootstrapping
ClientRegistration
Devicemanagement
Informationreporting
LWM2M Server can observe any changes in aResource on a LWM2M Client, receiving notificationswhen new values are available.
Operations:
Observe
Nontify
Cancel Observation
19 / 30
What is it? Provides semantic interoperability between IoTdevices and connected software applications onother devices and services.
IOW, help build an ecosystem of smart objects thatworks on existing LWM2M infrastructure.
22 / 30
Features Object templates for common applications
Reuses/conforms to the Object model from OMALWM2M
Address vertical application segments, e.g. smarthome.
OMA Name Authority to register new objects.
Can be used with any transport protocol (CoAP,HTTP, MQTT) which can support LWM2Maddressing, data types, and content formats
23 / 30
Example: Firmware update
Object definition
NameObject
IDInstances
Mandatoryobject
Object URN
FirmwareUpdate
5 Single Optional urn:oma:lwm2m:oma:5
24 / 30
Example: Firmware update
Resources definition
ID Name Operations Instances Mandatory TypeRange or
EnumerationUnits
0 Package W Single Mandatory Opaque1 Package URI W Single Mandatory String 0-255 bytes2 Update E Single Mandatory none no argument3 State R Single Mandatory Integer 0-3
4Update
SupportedObjects
RW Single Optional Boolean
25 / 30
Example: GPS Location
Object Info:
ObjectObject
IDObject URN
MultipleInstances?
Desc
Location 3336 urn:oma:lwm2m:ext:3336 YesLocation in GPS
Coordinates
26 / 30
Example: GPS Location
Resources:
Resource NameResource
IDAccessType
MultipleInstances?
Type Units ...
Latitude 5513 R No StringUnits
resourceLongitude 5514 R No String idemAltitude 5515 R No String idemUncertainty 5516 R No String idemCompassDirection
5705 R No Float Degrees
Timestamp 5518 R No Optional TimeApplicationType
5750 R,W No Optional String
... ... ... ... ... ... ...
27 / 30
Common Template SensorsResource
NameResource
IDAccessType
MultipleInstances?
Type Units Descriptions
Units 5701 R No Stringe.g. “Cel” for
Temperature inCelsius.
28 / 30
Additional resourceshttp://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