From a8e7325f0f7aaf685eb6de97bf199d85d08db304 Mon Sep 17 00:00:00 2001 From: gac-x01da Date: Thu, 1 May 2025 14:55:46 +0200 Subject: [PATCH] fix(mo1-bragg): fix error upon fresh start, not yet working. --- debye_bec/devices/mo1_bragg/mo1_bragg.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/debye_bec/devices/mo1_bragg/mo1_bragg.py b/debye_bec/devices/mo1_bragg/mo1_bragg.py index 178a8ba..4bfa0cb 100644 --- a/debye_bec/devices/mo1_bragg/mo1_bragg.py +++ b/debye_bec/devices/mo1_bragg/mo1_bragg.py @@ -455,18 +455,17 @@ class Mo1Bragg(PSIDeviceBase, Mo1BraggPositioner): Raises: TimeoutError: If the scan message is not available after the timeout """ - state = self.scan_control.scan_msg.get() - if state != target_state: + try: + self.wait_for_signal(self.scan_control.scan_msg, target_state, timeout=1) + except TimeoutError as exc: logger.warning( - f"Resetting scan validation in stage for state: {ScanControlLoadMessage(state)}, " + f"Resetting scan validation in stage for state: {ScanControlLoadMessage(self.scan_control.scan_msg.get())}, " f"retry .get() on scan_control: {ScanControlLoadMessage(self.scan_control.scan_msg.get())} and sleeping 1s" ) self.scan_control.scan_val_reset.put(1) - # Sleep to ensure the reset is done - time.sleep(1) try: - self.wait_for_signal(self.scan_control.scan_msg, target_state) + self.wait_for_signal(self.scan_control.scan_msg, target_state, timeout=4) except TimeoutError as exc: raise TimeoutError( f"Timeout after {self.timeout_for_pvwait} while waiting for scan status,"