Skip to content

High-performance, non-blocking, zero-buffer-copying Modbus for Java

License

Notifications You must be signed in to change notification settings

hashmapinc/modbus

This branch is 23 commits ahead of, 76 commits behind digitalpetri/modbus:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Chris Herrera
Aug 5, 2017
b059afa · Aug 5, 2017

History

85 Commits
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Jul 16, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017
Aug 5, 2017

Repository files navigation

High-performance, non-blocking, zero-buffer-copying Modbus for Java.

Quick Start

ModbusTcpMasterConfig config = new ModbusTcpMasterConfig.Builder("localhost").build();
ModbusTcpMaster master = new ModbusTcpMaster(config);

CompletableFuture<ReadHoldingRegistersResponse> future =
        master.sendRequest(new ReadHoldingRegistersRequest(0, 10), 0);

future.thenAccept(response -> {
    System.out.println("Response: " + ByteBufUtil.hexDump(response.getRegisters()));

    ReferenceCountUtil.release(response);
});

See the examples project for more.

Maven

Modbus Master

<dependency>
    <groupId>com.digitalpetri.modbus</groupId>
    <artifactId>modbus-master-tcp</artifactId>
    <version>1.1.0</version>
</dependency>

Modbus Slave

<dependency>
    <groupId>com.digitalpetri.modbus</groupId>
    <artifactId>modbus-slave-tcp</artifactId>
    <version>1.1.0</version>
</dependency>

Supported Function Codes

Code Function
0x01 Read Coils
0x02 Read Discrete Inputs
0x03 Read Holding Registers
0x04 Read Input Registers
0x05 Write Single Coil
0x06 Write Single Register
0x0F Write Multiple Coils
0x10 Write Multiple Registers
0x16 Mask Write Register

Get Help

See the examples project or contact [email protected] for more information.

License

Apache License, Version 2.0

About

High-performance, non-blocking, zero-buffer-copying Modbus for Java

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 99.7%
  • Shell 0.3%