From 25f6a1f43fbda17ca0d5952d0506b692b6ce3427 Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Mon, 15 Dec 2025 11:35:52 +0100 Subject: [PATCH] read coils 5 --- src/ModbusHandler.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/ModbusHandler.py b/src/ModbusHandler.py index 9b681f1..9f137a4 100644 --- a/src/ModbusHandler.py +++ b/src/ModbusHandler.py @@ -39,17 +39,17 @@ class ModbusHandler(threading.Thread): self.processImage.init(digitalOutputBits, digitalInputBits, analogInputBits) - reg = client.read_coils(0, digitalOutputBits) - if isinstance(reg, ModbusIOException): - raise Exception(reg) - with self.processImage: - self.processImage.setCoils(reg.bits) while not self.killBill: try: if not client.is_socket_open(): client.connect() + reg = client.read_coils(0, digitalOutputBits) + if isinstance(reg, ModbusIOException): + raise Exception(reg) + readCoils = reg.bits + reg = client.read_input_registers(0, analogInputBits // 8) if isinstance(reg, ModbusIOException): raise Exception(reg) @@ -64,6 +64,7 @@ class ModbusHandler(threading.Thread): with self.processImage: self.processImage.setAnalogsInputs(analogInputs) self.processImage.setDiscreteInputs(discreteInputs) + self.processImage.setCoils(readCoils) if self.processImage.hasPendingInputChanges(): self.processImage.notify() if self.processImage.hasPendingOutputChanges():