Skip to content

Commit 7ad7170

Browse files
committed
Fix TCP REPL server and support multiple unit id's
1 parent bab0f87 commit 7ad7170

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

pymodbus/repl/server/main.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@ def server(ctx, host, web_port, broadcast_support, repl, verbose):
5757
case_sensitive=False),
5858
help="Modbus framer to use")
5959
@click.option("--modbus-port", default="5020", help="Modbus port")
60-
@click.option("--modbus-unit-id", default=[1], multiple=True, help="Modbus unit id")
60+
@click.option("--modbus-unit-id", default=[1], type=int,
61+
multiple=True, help="Modbus unit id")
6162
@click.option("--modbus-config", type=click.Path(exists=True),
6263
help="Path to additional modbus server config")
6364
@click.option("-r", "--randomize", default=0, help="Randomize every `r` reads."

pymodbus/server/reactive/main.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -135,18 +135,19 @@ async def start_modbus_server(self, app):
135135
:return:
136136
"""
137137
try:
138-
if isinstance(self._modbus_server, ModbusSerialServer):
139-
if hasattr(asyncio, "create_task"):
138+
if hasattr(asyncio, "create_task"):
139+
if isinstance(self._modbus_server, ModbusSerialServer):
140140
app["modbus_serial_server"] = asyncio.create_task(
141141
self._modbus_server.start())
142-
app["modbus_server"] = asyncio.create_task(
143-
self._modbus_server.serve_forever())
144-
else:
142+
app["modbus_server"] = asyncio.create_task(
143+
self._modbus_server.serve_forever())
144+
else:
145+
if isinstance(self._modbus_server, ModbusSerialServer):
145146
app["modbus_serial_server"] = asyncio.ensure_future(
146147
self._modbus_server.start()
147148
)
148-
app["modbus_server"] = asyncio.ensure_future(
149-
self._modbus_server.serve_forever())
149+
app["modbus_server"] = asyncio.ensure_future(
150+
self._modbus_server.serve_forever())
150151

151152
logger.info("Modbus server started")
152153
except Exception as e:

0 commit comments

Comments
 (0)