Skip to content

PyModbus

  • Software
  • Robot arms and industry
  • Library

A Python implementation of the Modbus protocol, providing client, server and simulator components with both synchronous and asynchronous APIs.

Made by pymodbus, Spain (checked on github.com/pymodbus-dev (opens in a new tab)).

Source on GitHub: github.com/pymodbus-dev/pymodbus (opens in a new tab). Facts read at commit 61ea2af (opens in a new tab).

Licenses

Code
BSD-2-Clause (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (BSD-2-Clause) at commit 61ea2af (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

What it does

  • Offers a Modbus client to connect to devices, with synchronous and asynchronous APIs.
  • Lets you build your own Modbus server or emulate real devices.
  • Includes a web-based server simulator for configuring device structure and monitoring traffic.
  • Supports serial RS-485, TCP, TLS and UDP communication and the standard RTU, ASCII, TCP and socket frames.
  • Supports custom function codes and aims to follow the standard Modbus protocol.
  • Has no third-party dependencies apart from the optional pyserial.

Written by Robotheca from the project's README (opens in a new tab) at commit 61ea2af.

Getting started

Difficulty
Intermediate
Hardware it needs, as the project states it
Python 3 (3.10 or newer required); runs on normal computers and small boards such as a Raspberry Pi. Serial communication needs the optional pyserial package.

Maintenance

Status
Active: a commit in the last 90 days
Newest commit
16 Oct 2026 on dev
Latest release
Pymodbus v3.16.1 (11 Oct 2026)

Checked on GitHub on 16 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.