tokio-modbus
A tokio-based modbus library.
Features
- pure Rust library
- async (non-blocking)
- sync (blocking)
- Modbus TCP
- Modbus RTU
- Client & Server
- Open Source (MIT/Apache-2.0)
Installation
Add this to your Cargo.toml
:
[dependencies]
tokio-modbus = "*"
If you like to use Modbus TCP only:
[dependencies]
tokio-modbus = { version = "*", default-features = false, features = ["tcp"] }
If you like to use Modbus RTU only:
[dependencies]
tokio-modbus = { version = "*", default-features = false, features = ["rtu"] }
If you like to build a TCP server:
[dependencies]
tokio-modbus = { version = "*", default-features = false, features = ["tcp", "server"] }
Examples
Various examples for Modbus RTU and TCP using either the asynchronous or synchronous API can be found in the examples folder.
Protocol-Specification
- MODBUS Application Protocol Specification v1.1b3 (PDF)
- MODBUS over serial line specification and implementation guide v1.02 (PDF)
- MODBUS Messaging on TCP/IP Implementation Guide v1.0b (PDF)
License
Copyright 2017 - 2020 slowtec GmbH
MIT/Apache-2.0