diff --git a/src/dashboard/protocol_clients.py b/src/dashboard/protocol_clients.py index e264569..41daf3a 100644 --- a/src/dashboard/protocol_clients.py +++ b/src/dashboard/protocol_clients.py @@ -28,7 +28,7 @@ class OPCUAClient: # Explicitly set security policy to match server configuration # The server supports both Basic256Sha256 and None security policies # Use None for development/testing - self._client.set_security_string("http://opcfoundation.org/UA/SecurityPolicy#None") + await self._client.set_security_string("http://opcfoundation.org/UA/SecurityPolicy#None") # Set timeout for connection await asyncio.wait_for(self._client.connect(), timeout=5.0) @@ -201,8 +201,13 @@ class ModbusClient: # Read safety status - base address 200 safety_status = self.read_input_register(200 + pump_offset, 1) - # Read performance metrics - base address 400 - efficiency = self.read_input_register(400 + pump_offset, 1) + # Read performance metrics - base address 400 (if available) + efficiency = None + try: + efficiency = self.read_input_register(400 + pump_offset, 1) + except Exception: + # Performance metrics might not be available + pass return { "setpoint": setpoint[0] if setpoint else None,