Skip to main content

Easy work with modbus device. You do not need to know the protocol.

Project description

#aio modbus client

The main purpose is to create classes of devices connected via modbus by describing their properties.

Not intended to transfer bytes to modbus.

The library allows you to organize work with devices connected to a TCP modbus server, and a serial port. It also assumes the possibility of having devices operating at different speeds and different connection parameters on the bus.


  1. Create your class inheriting from ModbusDevice. It is important to specify the static variable file in your class file = file
  2. Create a JSON file with the description of the registers of your device
  3. To access the device, use an instance of your class and the package API.

see example: example / Wirenboard /

if someone likes the implementation, I will add documentation

##async API

read_param(param_id) - gets device property value

write_param(param_id, value) - writes the value to the property of the device

is_device() - should return true if the device at the current address can be served by this class

find_devices() - returns the list of addresses of these devices. The function calls is_device for each modbus address.


This published under the MIT License, see LICENSE for details.

Copyright (c) 2019 Mikhail Razgovorov

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aio_modbus_client-0.0.4.tar.gz (14.0 kB view hashes)

Uploaded source

Built Distribution

aio_modbus_client-0.0.4-py3-none-any.whl (23.7 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page