https://github.com/c-not-around/u-modbus
Universal simple Modbus RTU/ASCII/TCP/UDP client.
https://github.com/c-not-around/u-modbus
modbus modbus-ascii modbus-client-app modbus-library modbus-rtu modbus-tcp modbus-udp
Last synced: about 1 month ago
JSON representation
Universal simple Modbus RTU/ASCII/TCP/UDP client.
- Host: GitHub
- URL: https://github.com/c-not-around/u-modbus
- Owner: c-not-around
- Created: 2024-06-17T18:00:49.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-07-11T09:00:14.000Z (about 1 year ago)
- Last Synced: 2025-07-11T12:24:53.661Z (about 1 year ago)
- Topics: modbus, modbus-ascii, modbus-client-app, modbus-library, modbus-rtu, modbus-tcp, modbus-udp
- Language: C#
- Homepage:
- Size: 2.88 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# UModbus
UModbus - .NET library for working with devices via the Modbus protocol, as well as a Modbus client tool based on it.
## UModbus.Client library
Capabilities:
* Modbus full implementation. All standard functions of the Modbus protocol are implemented, as well as the ability to execute user requests (functions designed by the device manufacturer).
* Support for all transport level options for Modbus: RTU, ASCII, TCP, UDP.
* Keeping a log of data exchange with a remote device.
## UModbus client tool
Capabilities:
* Supported functions:
* `FC01` - `READ_COIL_STATUS` - reading one/several coils
* `FC02` - `READ_DISCRETE_INPUTS` - reading one/several inputs
* `FC03` - `READ_HOLDING_REGISTERS` - reading one/multiple holding registers
* `FC04` - `READ_INPUT_REGISTERS` - reading one/multiple input registers
* `FC05` - `WRITE_SINGLE_COIL` - writing value of one value coil
* `FC16` - `WRITE_MULTIPLE_REGISTER` - writing values to multiple holding registers
* `FCxx` - Device manufacturer-defined function with a code from the Modbus protocol user function range.
* Support for all major data types:
* `Int16`
* `Uint16`
* `Int32`
* `Uint32`
* `Int64`
* `Uint64`
* `Float32` (float)
* `Float64` (double)
* Selection of byte order for variables longer than a 16-bit word
* Save data-map to `*.json` file
* Load data-map from `*.json` file
* Logging
* Cycle read
* Search for a slave device on a common bus
