Skip to content

Anjay Lite is AVSystem’s ultra-lightweight implementation of the OMA SpecWorks LwM2M protocol, purpose-built for the most resource-constrained IoT devices.

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE.3RDPARTY

AVSystem/Anjay-lite

Repository files navigation

Anjay Lite LwM2M Client SDK

License


Licensing Notice

Mandatory Registration for Commercial Use

If you intend to use Anjay Lite in any commercial context, you must fill in a registration form to obtain a free commercial license for your product.

Register here.

Why is registration required?

We introduced registration to:

  • Gain insight into usage patterns — so we can prioritize support, features, and enhancements relevant to real-world use cases.
  • Engage with users — allow us to notify you about important updates, security advisories, or licensing changes.
  • Offer tailored commercial plugins, professional services, and technical support to accelerate your product development.

For inquiries, please contact: [email protected]


Table of Contents

About The Project

Anjay Lite is a lightweight version of the Anjay LwM2M Client SDK, designed specifically for highly resource-constrained, battery-powered IoT devices. It features a minimalistic architecture that reduces memory and code footprint, offering fine-grained control over resource usage and client behavior.

Anjay Lite is ideal for bare-metal devices without operating systems or dynamic memory allocation. It is optimized for embedded applications such as:

  • Smart water metering
  • Asset tracking
  • Environmental monitoring

While Anjay remains the go-to solution for feature-rich, scalable LwM2M implementations — supporting a broad range of use cases and advanced capabilities, Anjay Lite addresses a complementary need: delivering lightweight LwM2M connectivity without compromise on reliability or standards compliance.

The project is actively developed and maintained by AVSystem.

For more information and a list of supported features, see the Anjay Lite Introduction.

(Back to top)

OMA LwM2M

OMA Lightweight M2M is a communication protocol for remote device management and elemetry. It is designed for constrained wireless devices, where communication efficiency impacts battery life. LwM2M supports secure bootstrapping, configuration, and notifications over UDP or SMS using DTLS encryption.

More details about OMA LwM2M: Brief introduction to LwM2M

(Back to top)


Quickstart Guide

To build the Anjay Lite project, run:

mkdir build
cd build
cmake ..
make -j

This will compile all the examples that use Anjay Lite, along with the test suite in the build directory.

Building and Running a Single Anjay Lite Example

To build and run a specific Anjay Lite example (e.g., from the examples/tutorial/BC-MandatoryObjects directory), you can follow these steps:

cd examples/tutorial/BC-MandatoryObjects
mkdir build
cd build
cmake ..
make -j
./anjay_lite_bc_mandatory_objects <endpoint_name>

Replace <endpoint_name> with your desired endpoint name.

Configuring the MbedTLS

Anjay Lite examples uses MbedTLS to implement DTLS for secure transport. The library automatically fetches and builds MbedTLS version 3.6.0 during the build process. You can override this default version or use a custom, pre-installed MbedTLS library if needed.

To override the default version fetched via FetchContent, set the MBEDTLS_VERSION variable:

cd examples/tutorial/BC-Security
mkdir build
cd build
cmake .. -DMBEDTLS_VERSION=3.5.0
make -j

To use your own custom-built MbedTLS (for example, with specific configuration settings):

  1. Clone and build MbedTLS locally:
git clone https://github.com/ARMmbed/mbedtls.git
cd mbedtls
git checkout v3.4.0 # or another supported version
# change configuration using scripts/config.py or modify mbedtls_config.h directly
cmake . -DCMAKE_INSTALL_PREFIX=$PWD/install
make install
  1. Build Anjay Lite using your installed version:
cd /path/to/anjay-lite/build
cmake .. -DMBEDTLS_ROOT_DIR=mbedtls-path/mbedtls/install
make -j

Make sure to replace /path/to/mbedtls/install with the actual path to your installation.

Anjay Lite requires MbedTLS 3.x. Versions from the 2.x series are not supported.

(Back to top)

Documentation

Visit the official Anjay Lite documentation:

(Back to top)


License

This project is available under a dual-licensing model:

  • A free license for non-commercial use, including evaluation, academic research, and hobbyist projects,
  • A commercial license for use in proprietary products and commercial deployments.

See LICENSE for terms and conditions.

(Back to top)

Commercial Support

Anjay Lite LwM2M Client SDK comes with the option of full commercial support, provided by AVSystem.

LwM2M Server

If you're interested in LwM2M Server, be sure to check out the Coiote IoT Device Management platform by AVSystem. It also includes the interoperability test module that you can use to test your LwM2M client implementation. Our automated tests and testing scenarios enable you to quickly check how interoperable your device is with LwM2M.

(Back to top)

Contact

Find us on Discord or contact us directly.

(Back to top)

Feedback

Got a minute? Help improve Anjay IoT SDK - fill out this short form.

(Back to top)

Contributing

Contributions are welcome! See our contributing guide.

(Back to top)

About

Anjay Lite is AVSystem’s ultra-lightweight implementation of the OMA SpecWorks LwM2M protocol, purpose-built for the most resource-constrained IoT devices.

Topics

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE.3RDPARTY

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages