Eclipse Leshan™ is an OMA Lightweight M2M server and client Java implementation.
What is OMA LWM2M ?
LWM2M Specifications.
Leshan provides libraries which help people to develop their own Lightweight M2M server and client.
The project also provides a client, a server and a bootstrap server demonstration as an example of the Leshan API and for testing purpose.
LWM2M Version Targeted |
Leshan Version |
Minimal Java Version |
Development State |
Build Status | Standalone Demos |
---|---|---|---|---|---|
v1.0.x | v1.x Supported features |
Java 7 | stable released | jenkins-1.x | server-demo client-demo bsserver-demo |
v1.1.x | v2.x (master) Supported features |
Java 8 | in development | jenkins-master | server-demo client-demo bsserver-demo |
Release (stable and milestones) are available on maven central.
Nightly build (snapshot) are available on eclipse repo. (more details)
The Leshan Documentation is available in our wiki 📘.
Join the project mailing list : subscribe.
Mail address: leshan-dev@eclipse.org.
Access to leshan-dev archives.
This work is dual-licensed under the Eclipse Public License v2.0 and Eclipse Distribution License v1.0
SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
You can try live our servers demos instances:
- The lwm2m server at https://leshan.eclipseprojects.io/
(coap://leshan.eclipseprojects.io:5683 and coaps://leshan.eclipseprojects.io:5684) - The bootstrap server at https://leshan.eclipseprojects.io/bs/
(coap://leshan.eclipseprojects.io:5783 and coaps://leshan.eclipseprojects.io:5784)
(Automatic deployment of master branch)
Get and run the last binary of our demo server :
wget https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-server-demo.jar
java -jar ./leshan-server-demo.jar
Get and run the last binary of our demo client :
wget https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-client-demo.jar
java -jar ./leshan-client-demo.jar
Get and run the last binary of our bootstrap demo server :
wget https://ci.eclipse.org/leshan/job/leshan-ci/job/master/lastSuccessfulBuild/artifact/leshan-bsserver-demo.jar
java -jar ./leshan-bsserver-demo.jar
ℹ️ : All the demos have a --help
option.
Get sources :
#using ssh
git clone git@github.com:eclipse/leshan.git
or
#using https
git clone https://github.com/eclipse/leshan.git
Compile it, by running in leshan root folder :
mvn clean install
Run demo server:
java -jar leshan-server-demo/target/leshan-server-demo-*-SNAPSHOT-jar-with-dependencies.jar
Connect on Leshan demo UI: http://localhost:8080
Leshan server Demo provides a very simple UI to get the list of connected clients and interact with clients resources.
Now you can register a LWM2M client by running our client demo:
java -jar leshan-client-demo/target/leshan-client-demo-*-SNAPSHOT-jar-with-dependencies.jar
or trying the Eclipse Wakaama test client.
You can also try our bootstrap demo server:
java -jar leshan-bsserver-demo/target/leshan-bsserver-demo-*-SNAPSHOT-jar-with-dependencies.jar
Now you played a bit with our demo, you should start to code your own server or client using our Getting-started guide.