From 369a26d0b2ad899ec927a281d5a3d47991a4ba80 Mon Sep 17 00:00:00 2001
From: Benjamin Koch <bbbsnowball@gmail.com>
Date: Mon, 29 May 2023 19:16:56 +0200
Subject: [PATCH] log times: pymodbus seems to be 4x slower than modbus-tk

---
 firmware/rust1/rtumaster_example.py  | 2 ++
 firmware/rust1/rtumaster_pymodbus.py | 6 ++++++
 2 files changed, 8 insertions(+)

diff --git a/firmware/rust1/rtumaster_example.py b/firmware/rust1/rtumaster_example.py
index 7c44458..2708409 100644
--- a/firmware/rust1/rtumaster_example.py
+++ b/firmware/rust1/rtumaster_example.py
@@ -39,12 +39,14 @@ def main():
 
         x = 1
         while True:
+            s = time.time()
             logger.info(master.execute(1, cst.WRITE_SINGLE_COIL, 0, output_value=x))
             x = 1 - x
             logger.info(master.execute(1, cst.READ_DISCRETE_INPUTS, 0, 5))
             #logger.info(master.execute(1, cst.READ_INPUT_REGISTERS, 0, 13))
             #logger.info(master.execute(1, cst.READ_INPUT_REGISTERS, 13, 12))
             logger.info(master.execute(1, cst.READ_INPUT_REGISTERS, 0, 25))
+            logger.info("took: %s s" % (time.time() - s))
             time.sleep(0.1)
 
         #send some queries
diff --git a/firmware/rust1/rtumaster_pymodbus.py b/firmware/rust1/rtumaster_pymodbus.py
index 15131a6..ef20a91 100644
--- a/firmware/rust1/rtumaster_pymodbus.py
+++ b/firmware/rust1/rtumaster_pymodbus.py
@@ -62,14 +62,20 @@ def main():
 
         toggle = True
         while True:
+            s = time.time()
             logger.info(client.write_coil(address=0, value=toggle, slave=DEVICE_ADDR))
             toggle = not toggle
+            logger.info("took: %s s" % (time.time() - s))
 
+            s = time.time()
             x = client.read_discrete_inputs(address=0, count=5, slave=DEVICE_ADDR)
             logger.info("read_discrete_inputs: %s: %r", x, x.bits)
+            logger.info("took: %s s" % (time.time() - s))
 
+            s = time.time()
             x = client.read_input_registers(address=0, count=25, slave=DEVICE_ADDR)
             logger.info("read_input_registers: %s: %r", x, x.registers)
+            logger.info("took: %s s" % (time.time() - s))
 
             time.sleep(0.1)
 
-- 
GitLab