Modbus

Modbus is old but still commonly used. No product offering is complete without support for the protocol. Our library implements both Modbus TCP, RTU, and the new TLS-based Secure Modbus specification.

Current Version: Beta
Release Date: Q4 2020

Source Code

Scale Up or Down

Our Modbus library is fully asynchronous and uses the most efficient event-driven backend provided by your OS: epoll on Linux, IOCP on Windows, etc. The library scales to many thousands of concurrent communication sessions while maintaining a small memory and CPU footprint.

Efficient High-level API

The API provides automated connection management, allowing the developer to focus on input and output instead of error handling and protocol details. Polls may be performed on demand or configured to be periodic and managed by the library.

JavaTCP.NETC++C APIGeneratedfrom modelRustModbusAsync RuntimeTLSSerial

Features

  • Client and server both support TCP, Serial, and TLS communication channels
  • TLS support provided using Rustls: Modern TLS library in Rust (not openssl).
  • Written in safe Rust with idiomatic bindings for C, .NET Core, and Java
  • Blazing fast (and secure) zero-copy / zero-allocation parsing of application data
  • Built-in logging and protocol decoding
  • Share runtime resources with other libraries to implement extremely efficient gateways and translators
  • Runs on all major platforms and operating systems supported by the Tokio Runtime:
  • Supported function codes:
    • read coils (1)
    • read discrete inputs (2)
    • read holding registers (3)
    • read input registers (4)
    • write single coil (5)
    • write single register (6)
    • write multiple coils (15)
    • write multiple registers (16)