/liblightmodbus

A cross-platform, lightweight Modbus RTU library

Primary LanguageCGNU General Public License v3.0GPL-3.0

A lightweight, cross-platform Modbus library

The GPL license Travis CI Coveralls

Liblightmodbus on launchpad...

Liblightmodbus is a very lightweight, highly configurable, platform-independent Modbus RTU library.

ANNOUNCEMENT

On August 31st 2021 a new version (v3.0) of liblightmodbus is going to be released and merged into the master branch. As it breaks backwards compatibility, your existing code will require some adjustments in order to work with the new version. Considering the number of improvements, upgrading to v3.0 is highly recommended. Please be prepared.

In the meantime, you can read the docs and porting guide for the new version, preview the changes on the dev-v3.0 branch or join this discussion.

Features

  • Minimal resources usage
  • Relatively easy to use
  • Supports all basic Modbus functions and allows users to define thier own Modbus function handlers
  • You can pick specific modules, you want to be included during customized build process
  • Supports register/coil access callback functions

Currently supported functions include: 01, 02, 03, 04, 05, 06, 15, 16 and 22. Check the online documentation for more technical information and user guide.

Support

If you face any problems, please refer to the docs first. If you can't find answer to your question there, please open an issue. Hopefully this will help to form some kind of FAQ list. If you want to help - please contribute here, on Github. All contributions are welcome!

I'm making plans for v3.0 release. Many things will be simplified and cleaned up in hope of making liblightmodbus lighter, more flexible and possibly easier to use. If you would like to suggest something, please let me know here.

Platforms on which liblightmodbus is known to run

  • 8-bit AVR (ATmega 8, ATmega 328, etc.)
  • STM32 ARM (STM32F103, STM32L151, etc.)
  • Raspberry Pi
  • i386, amd64
  • PowerPC

PPA

On Ubuntu/Debian liblightmodbus can be obtained from PPA (Personal Package Archive).

This is how to install it:

  • Add PPA to your system - sudo add-apt-repository ppa:mrjjot/liblightmodbus
  • Update software lists - sudo apt-get update
  • Install development package - sudo apt-get install liblightmodbus-dev