forked from eclipse-wakaama/wakaama
-
Notifications
You must be signed in to change notification settings - Fork 0
datachi7d/wakaama
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Wakaama (formerly liblwm2m) is an implementation of the Open Mobile Alliance's LightWeight M2M protocol (LWM2M). Source Layout ------------- -+- core (the LWM2M engine) | | | +- er-coap-13 (Erbium's CoAP engine from | http://people.inf.ethz.ch/mkovatsc/erbium.php, modified | to run on linux) | +- tests (example and test application) | +- client (a command-line LWM2M client with several test objects) | +- misc (application unit-testing miscellaneous utility functions of the core) | +- server (a command-line LWM2M server) | +- TLV (application decoding two hard-coded TLV buffers) | +- utils (utility functions for connection handling and command- line interface) Compiling --------- Despite its name, liblwm2m is not a library but files to be built with an application. liblwm2m uses CMake. Look at tests/server/CMakeLists.txt for an example of how to include it. Two compilation switches are used: LWM2M_CLIENT_MODE and LWM2M_SERVER_MODE. Define LWM2M_CLIENT_MODE to enable LWM2M Client interfaces. Define LWM2M_SERVER_MODE to enable LWM2M Server interfaces. Both can be defined at the same time. Depending on your platform, you need to define LWM2M_BIG_ENDIAN or LWM2M_LITTLE_ENDIAN. Testing ------- To compile the test server - - - - - - - - - - - - - In the any directory, run the following commands: cmake [liblwm2m directory]/tests/server make ./lwm2mserver The lwm2mserver listens on UDP port 5683. It features a basic command line interface. Type 'help' for a list of supported commands. To compile the test client - - - - - - - - - - - - - In the any directory, run the following commands: cmake [liblwm2m directory]/tests/client make ./lwm2mclient [Options] The lwm2mclient features four LWM2M objects: - Server Object (id: 1) provided by the core. - Device Object (id: 3) containing hard-coded values from the Example LWM2M Client of Appendix E of the LWM2M Technical Specification. - FirmwareUpdate Object (id: 5) as a skeleton. - a test object (id: 1024) with the following description: Multiple Object | ID | Instances | Mandatoty | Test | 1024 | Yes | No | Ressources: Supported Multiple Name | ID | Operations | Instances | Mandatory | Type | Range | test | 1 | R/W | No | Yes | Integer | 0-255 | exec | 2 | E | No | Yes | | | dec | 3 | R/W | No | Yes | Float | | The lwm2mclient opens udp port 56830 and tries to register to a LWM2M Server at 127.0.0.1:5683. It features a basic command line interface. Type 'help' for a list of supported commands. Options are: -n NAME Set the endpoint name of the Client. Default: testlwm2mclient -l PORT Set the local UDP port of the Client. Default: 56830 -h HOST Set the hostname of the LWM2M Server to connect to. Default: localhost -p HOST Set the port of the LWM2M Server to connect to. Default: 5683 -t TIME Set the lifetime of the Client. Default: 300 -b Bootstrap requested. -c Change battery level over time. To launch a bootstrap session: ./lwm2mclient -b
About
Wakaama (formerly liblwm2m) is an implementation of the Open Mobile Alliance's LightWeight M2M protocol (LWM2M).
Resources
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- C 96.4%
- HTML 2.3%
- Other 1.3%