Registry / database / pylogix

pylogix

JSON →
library1.1.5pypypi✓ verified 87d ago

pylogix is a Python library for reading and writing Rockwell Automation Logix-based PLCs (ControlLogix, CompactLogix, MicroLogix, etc.) over Ethernet/IP. Current version is 1.1.5, released occasionally with bug fixes and minor enhancements.

pip install pylogix
INSTALL
IMPORT
SIG · PYLOGIX
P
pylogix
databasepythonv1.1.5
Install
1.6s avg
Import
22ms
Disk
16MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.9–3.13
musl
3.9–3.13
Install & Compatibility
Where this runs
tested against v1.1.5 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.024s · 18.4MB
glibc
py 3.10–3.95 runs
installs and imports cleanly · install 1.6s · import 0.020s · 19MB
16MB installed
● package 16MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

PLC
✓ from pylogix import PLC
Correct import for the PLC class.

Basic read operation: initialize PLC, set IP, read a tag, and print the value.

from pylogix import PLC with PLC() as comm: comm.IPAddress = '192.168.1.10' ret = comm.Read('MyTag') if ret.Value is not None: print(ret.Value)
Debug
Known issues
gotchaThe PLC object modifies its internal state (like IPAddress) after each read/write call. Always set IPAddress before each transaction or use a context manager.
fix
Set comm.IPAddress immediately before calling Read/Write, or use 'with PLC() as comm:' which resets on exit.
affects: all
gotchaTag names must be exact and case-sensitive. Rockwell PLCs often require the full path (e.g., 'Program:MainProgram.MyTag').
fix
Verify tag name in the PLC’s tag database; use the full path including program scope if needed.
affects: all
breakingVersion 0.7.0 changed the API: 'read' and 'write' functions were replaced by methods on the PLC object. Old code using 'from pylogix import read' breaks.
fix
Update to use 'from pylogix import PLC' and instantiate PLC() object, then call .Read() and .Write().
affects: <0.7.0
Errors
Common errors & fixes
AttributeError: module 'pylogix' has no attribute 'read'
Using old import 'from pylogix import read' after upgrading to version >=0.7.0.
fix
Use 'from pylogix import PLC' and then call plc.Read() instead.
pylogix.exceptions.ConnectionError: Unable to connect to the PLC
Incorrect IP address, PLC not reachable, or wrong CIP path.
fix
Verify IP address, ensure PLC is on the same subnet, and check firewall settings. If using a ControlLogix, set comm.ProcessorSlot if not 0.
pylogix.exceptions.TagError: Tag Not Found
Tag name does not exist or incorrect path (e.g., missing program scope).
fix
Use the exact tag path including program scope (e.g., 'Program:MainProgram.MyTag') and confirm case sensitivity.
Upgrade
Version history
1.1.5latest on PyPI · released Feb 23, 2026
Audit
Dependencies

No dependency data recorded yet.

Agent activity
30 hits · last 30 days
node
28
OpenAI (training)
1
Resources
pylogix — pip install pylogix · libregistry