Skip to content

eclipse-leshan/leshan

Leshan

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 📘.

Contact

Join the project mailing list : subscribe.
Mail address: leshan-dev@eclipse.org.
Access to leshan-dev archives.

License

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

Test Server Sandbox

You can try live our servers demos instances:

(Automatic deployment of master branch)

Leshan

Test Leshan Demos locally

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.

Compile Leshan & Run Demos

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 

Let's start to code !

Now you played a bit with our demo, you should start to code your own server or client using our Getting-started guide.