--- id: pymodbustcp version: "0.3.0" license: MIT license_treatment: permissive maintenance: dormant --- # pyModbusTCP — A simple Modbus/TCP library for Python License: permissive · Maintenance: dormant · Downloads: 101.8K/mo ## What it is and what it does pyModbusTCP is a pure-Python implementation of the Modbus/TCP protocol, allowing you to communicate with industrial devices, PLCs, and other Modbus-enabled hardware over standard TCP connections. It provides both client and server functionality, letting you read and write holding registers and other Modbus data types. The library handles the protocol details internally and exposes a simple API for common operations like reading registers or writing values to device addresses. The package is designed for straightforward integration into Python applications that need to interact with Modbus devices—no compiled extensions or external system libraries required. You instantiate a client with a host and port, optionally configure automatic connection handling, and then call methods to read or write device registers. It has been tested on Python 3.8, 3.9, 3.10, 3.11 and 3.12 across Linux, Mac OS and Windows. Use it for: - Read sensor data or device status from industrial equipment connected via Modbus/TCP - Write control commands to PLCs or other Modbus devices from a Python application - Build a local Modbus server to simulate or proxy industrial devices for testing - Monitor and log register values from multiple Modbus devices in a data collection pipeline - Integrate legacy industrial hardware into modern Python-based automation systems ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. A pure-Python Modbus/TCP client and server library for reading and writing registers over TCP connections without external dependencies. Yes, if you need Modbus/TCP communication and are comfortable with dormant maintenance. The library is stable, dependency-free, and tested across Python 3.8 through 3.12. No known vulnerabilities. MIT license poses no restrictions. Install it for straightforward industrial device integration; avoid it only if you require active development. ## Install pip install pymodbustcp uv add pymodbustcp poetry add pymodbustcp ## Installing pyModbusTCP Before you install: Low friction: pure Python with no runtime dependencies, distributed as a wheel. Maintenance is dormant—last release was 709 days ago—but the repository remains active with a recent commit on 2025-02-14. License in practice: MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions, suitable for both open-source and commercial projects. Quickstart: from pyModbusTCP.client import ModbusClient c = ModbusClient(host="localhost", port=502, unit_id=1, auto_open=True) regs = c.read_holding_registers(0, 2) if regs: print(regs) Verify before relying: - Whether the package is actively maintained or in long-term stable mode despite the 709-day gap since last release - Current compatibility with Python versions beyond 3.12, given testing through 3.12 ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: dormant - Downloads: 101.8K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags modbus tcp client, modbus protocol python, industrial automation communication, plc data reading, modbus server library, tcp register access, modbus device integration, industrial-automation, modbus-protocol, iot-integration [View on SkillFed](https://skillfed.io/packages/pymodbustcp) · [View on PyPI](https://pypi.org/project/pymodbustcp/)