1
+ ================================
2
+ PyModbus - A Python Modbus Stack
3
+ ================================
4
+
1
5
.. image :: https://travis-ci.org/riptideio/pymodbus.svg?branch=master
2
6
:target: https://travis-ci.org/riptideio/pymodbus
3
7
.. image :: https://badges.gitter.im/Join%20Chat.svg
12
16
.. important ::
13
17
**Note This is a Major release and might affect your existing Async client implementation. Refer examples on how to use the latest async clients. **
14
18
15
- ============================================================
19
+ ------------------------------------------------------------
16
20
Summary
17
- ============================================================
21
+ ------------------------------------------------------------
18
22
19
23
Pymodbus is a full Modbus protocol implementation using twisted for its
20
24
asynchronous communications core. It can also be used without any third
@@ -23,13 +27,13 @@ needed. Furthermore, it should work fine under any python version > 2.7
23
27
(including python 3+)
24
28
25
29
26
- ============================================================
30
+ ------------------------------------------------------------
27
31
Features
28
- ============================================================
29
-
30
32
------------------------------------------------------------
33
+
34
+ ~~~~~~~~~~~~~~~~~~~~
31
35
Client Features
32
- ------------------------------------------------------------
36
+ ~~~~~~~~~~~~~~~~~~~~
33
37
34
38
* Full read/write protocol on discrete and register
35
39
* Most of the extended protocol (diagnostic/file/pipe/setting/information)
@@ -38,19 +42,19 @@ Client Features
38
42
* Payload builder/decoder utilities
39
43
* Pymodbus REPL for quick tests
40
44
41
- ------------------------------------------------------------
45
+ ~~~~~~~~~~~~~~~~~~~~
42
46
Server Features
43
- ------------------------------------------------------------
47
+ ~~~~~~~~~~~~~~~~~~~~
44
48
45
49
* Can function as a fully implemented modbus server
46
50
* TCP, UDP, Serial ASCII, Serial RTU, and Serial Binary
47
51
* asynchronous(powered by twisted) and synchronous versions
48
52
* Full server control context (device information, counters, etc)
49
53
* A number of backing contexts (database, redis, sqlite, a slave device)
50
54
51
- ============================================================
55
+ ------------------------------------------------------------
52
56
Use Cases
53
- ============================================================
57
+ ------------------------------------------------------------
54
58
55
59
Although most system administrators will find little need for a Modbus
56
60
server on any modern hardware, they may find the need to query devices on
@@ -94,21 +98,24 @@ trace them. I get a lot of email and sometimes these requests
94
98
get lost in the noise: http://groups.google.com/group/pymodbus or
95
99
at gitter: https://gitter.im/pymodbus_dev/Lobby
96
100
97
- ============================================================
101
+ ------------------------------------------------------------
98
102
Pymodbus REPL (Read Evaluate Procee Loop)
99
- ============================================================
103
+ ------------------------------------------------------------
100
104
Starting with Pymodbus 2.x, pymodbus library comes with handy
101
105
Pymodbus REPL to quickly run the modbus clients in tcp/rtu modes.
102
106
103
107
Pymodbus REPL comes with many handy features such as payload decoder
104
108
to directly retrieve the values in desired format and supports all
105
109
the diagnostic function codes directly .
106
110
107
- For more info on REPL refer `Pymodbus REPL <pymodbus/repl/README.md >`_
111
+ For more info on REPL refer `Pymodbus REPL <https://github.com/riptideio/pymodbus/tree/master/pymodbus/repl >`_
112
+
113
+ .. image :: https://asciinema.org/a/y1xOk7lm59U1bRBE2N1pDIj2o.png
114
+ :target: https://asciinema.org/a/y1xOk7lm59U1bRBE2N1pDIj2o
108
115
109
- ============================================================
116
+ ------------------------------------------------------------
110
117
Installing
111
- ============================================================
118
+ ------------------------------------------------------------
112
119
113
120
You can install using pip or easy install by issuing the following
114
121
commands in a terminal window (make sure you have correct
@@ -144,9 +151,9 @@ out all mentions of twisted. It should be noted that without twisted,
144
151
one will only be able to run the synchronized version as the
145
152
asynchronous versions uses twisted for its event loop.
146
153
147
- ============================================================
154
+ ------------------------------------------------------------
148
155
Current Work In Progress
149
- ============================================================
156
+ ------------------------------------------------------------
150
157
151
158
Since I don't have access to any live modbus devices anymore
152
159
it is a bit hard to test on live hardware. However, if you would
@@ -182,14 +189,14 @@ Use make to perform a range of activities
182
189
make tox run the tests on all Python versions
183
190
make clean cleanup all temporary files
184
191
185
- ============================================================
192
+ ------------------------------------------------------------
186
193
Contributing
187
- ============================================================
194
+ ------------------------------------------------------------
188
195
Just fork the repo and raise your PR against `dev ` branch.
189
196
190
- ============================================================
197
+ ------------------------------------------------------------
191
198
License Information
192
- ============================================================
199
+ ------------------------------------------------------------
193
200
194
201
Pymodbus is built on top of code developed from/by:
195
202
* Copyright (c) 2001-2005 S.W.A.C. GmbH, Germany.
0 commit comments