OMA LwM2M Workshop - Matthias Kovatsch, OMA LwM2M DevKit
-
Upload
open-mobile-alliance -
Category
Technology
-
view
757 -
download
8
Transcript of OMA LwM2M Workshop - Matthias Kovatsch, OMA LwM2M DevKit
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 1|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Matthias Kovatsch
The OMA LWM2M DevKit Client Simulator
and CoAP Implementations
Wednesday, 29 Jan 2015OMA LWM2M Workshop
Düsseldorf, Germany
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 2|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
The OMA LWM2M DevKit
LWM2M Protocol Handling in the Web Browser
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 3|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Interactive LWM2M Client in the Web Browser
OMA LWM2M DevKit Live LWM2M Server
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 4|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
LWM2M Client support
8 OMA-label Objects with descriptions
Registration Interface
Device Management and Service Enablement Interface
Information Reporting Interface
Visualization of LWM2M operations and CoAP messages
Interactive guide
Status of Version 0.5.x
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 5|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Getting Started
Launcher button Browser addressbar
URI scheme: coap+lwm2m
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 6|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Organization of the GUI
1
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 7|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Organization of the GUI
2
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 8|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Organization of the GUI
3
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 9|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
4
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 10|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
5
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 11|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
5
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 12|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
6
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 13|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
7
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 14|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
8
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 15|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
9
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 16|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
10
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 17|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Interactive Guide
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 18|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
https://addons.mozilla.org/firefox/addon/oma-lwm2m-devkit/
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 19|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
https://github.com/OpenMobileAlliance/OMA-LWM2M-DevKit
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 20|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Installing the Source Code
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 21|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
chrome/
content/
copper/
lwm2m/
main.xul
main.js
skin/
clients/
components/
defaults/
objects/
chrome.manifest
install.rdf
“chrome you put on the bare metal”
GUI and scripts (“active parts”)
CoAP implementation scripts
LWM2M implementation scripts
GUI layout (also loads scripts)
start script (onload)
CSS and images
loadable LWM2M Clients (JSON)
protocol handler (registered for coap+lwm2m)
initial registry values (about:config)
LWM2M Object definitions (JSON)
manifest
metadata (name, version, icon, …)
Extending the Source Code
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 22|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
chrome/content/lwm2m/
CoapHandlers.js
ClientHandler.js
EncodingJSON.js
EncodingTLV.js
Helpers.js
InterfaceDeviceManagement.js
InterfaceInformationReporting.js
InterfaceRegistration.js
Launcher.js
Logger.js
Tooltips.js
message callbacks
LWM2M Client functions
LWM2M JSON
LWM2M TLV
helper functions
Device Management
Information Reporting
Registration
launcher button functions
logging and debugging
interactive guide
Extending the Source Code
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 23|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Github issueshttps://github.com/OpenMobileAlliance/OMA-LWM2M-DevKit/issues
Feedback, please
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 24|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Custom LWM2M Clients and Objects
Integration with the LWM2M Editor
Common JSON format?
Leshan Ddf2json converter, ARM server configuration, …
LWM2M Server support
For DevKit Client when offline or no sandbox available
For other LWM2M Clients through Server Initiated Bootstrap
Outlook for Version 1.0
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 25|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
CoAP Implementations
http://coap.technology/
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 26|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Copper (Cu) CoAP user-agent
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 27|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
CoAP protocol handler
for Mozilla Firefox
Browsing and bookmarking
of CoAP URIs
Interaction with resource like
RESTClient or Poster
3-Clause BSD
Copper (Cu) CoAP user-agent
https://addons.mozilla.org/firefox/addon/copper-270430/
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 28|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Embedded CoAP Web server
for Contiki OS
Memory footprint
ROM < 10 KiB (… 3 – 4 KiB)
RAM < 1.5 KiB
POSIX ports exist
(e.g., Wakaama)
3-Clause BSD
Erbium (Er) REST Engine
https://github.com/contiki-os/contiki
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 29|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
CoAP library (no framework)
POSIX compatible
Port for TinyOS (CoapBlip)
Larger memory footprint
than Erbium
2-Clause BSD + GPLv2
libcoap
http://libcoap.sourceforge.net/
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 30|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
CoAP for Node.js
Modeled after the html module
MIT license
node-coap
https://github.com/mcollina/node-coap
The OMA LWM2M DevKit Client Simulator and CoAP Implementations 31|Matthias Kovatsch
http://people.inf.ethz.ch/mkovatsc
Java CoAP framework
at the Eclipse Foundation
For the service backend
Very high throughput
DTLS 1.2 implementation
Basis for Leshan
EPL + EDL
Californium (Cf) CoAP framework
http://www.eclipse.org/californium/
Questions?
Matthias Kovatsch https://github.com/mkovatsc/
[email protected] http://people.inf.ethz.ch/mkovatsc/