pyModSlave is a free, Python-based Modbus slave application for simulation purposes. It supports Modbus RTU and TCP, includes a built-in bus monitor for examining all traffic on the bus, and can be run as a Python module or as a standalone GUI (Windows only — unzip and run, no installation required).
pyModSlave is based on modbus-tk, pySerial, and PyQt5.
The repository has moved to GitHub: https://github.com/elbarbas/pyModSlave. SourceForge will continue to host updated binary releases, but the latest source code is maintained on GitHub.
PyPI: https://pypi.org/project/pyModSlave/
Related project: QModMaster https://github.com/elbarbas/QModMaster — a Modbus master application
Video demos:
- Modbus RTU: https://youtu.be/1get1ELKz_A
- Modbus TCP: https://youtu.be/nX_kTQwK2f4
- Session: https://youtu.be/y_9Di7E3y8w
- Log: https://youtu.be/Xcb6sj1uzyY
Features
- ModBus RTU/TCP Slave
- Simulate Coils, Discrete Inputs, Input Registers, Holding Registers
- Monitor Bus activity [Raw Data and PDU details]
- Supports both Windows and Linux
License
GNU Library or Lesser General Public License version 3.0 (LGPLv3)Follow pyModSlave
User Reviews
-
This looks great but I can't use it because I need Modbus RTU/ASCII protocol and there doesn't seem to be an option for it.
-
So far so good! this tool is great!!!
-
whenever I try to connect to master it given me message saying "slave threw exception" connection timed out.. Where can I get detailed document for the user? plz help me out