Enhanced Modbus library implemented in the Java programming language
Branch: development
Clone or download
Pull request Compare This branch is even with steveohara:development.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
.gitattributes
.gitignore
CODE_OF_CONDUCT.md
CONTRIBUTING.md
ISSUE_TEMPLATE.md
LICENSE.txt
README.md
RELEASE_NOTES.md
pom.xml

README.md

Overview

This project is a fork of the j2mod library which began life as jamod. A huge amount of refactoring and code fixing has been carried out on this library, with the addition of supporting JUnit tests, to ensure the library is fit for production use.

This implementation supports Modbus TCP, UDP, RTU over TCP, Serial RTU and Serial ASCII in both Master and Slave configurations. The serial comms is implemented using jSerialComm and does not require any outside dependencies over and above the logging facade slf4j.

For instructions on how to use the library, visit the wiki here

Releases

Stable releases can be downloaded here

https://search.maven.org/search?q=g:com.ghgande

Snapshot releases can be downloaded here

https://oss.sonatype.org/content/repositories/snapshots/com/ghgande/j2mod

Known Issues

  • There are no unit tests for the RTU over TCP transport
  • There is no way of adding AbstractSerialTransportListener to a ModbusSlave which means you cannot get informed of when the library is switching between send and receive
  • A refactor is overdue to hide package components to encourage best practise usage patterns

Dependencies

  • jSerialComm The serial comms is handled by JSerialComm that includs native implementations for most platforms.
  • slf4j Logging facade to fit in with your application logging framework

Including j2mod

<dependency>
    <groupId>com.ghgande</groupId>
    <artifactId>j2mod</artifactId>
    <version>LATEST</version>
</dependency>

Announcements

I have maintained this library to be Java 1.6 compatible for the past 2 years but now that my time for supporting j2mod is ever more pressured, I have decided that v2.5.1 will be the last version that is available for this JVM.

From 3.0.0, the library will have a minimum requirement of Java 1.8.