diff --git a/src/aare/devices/tell_client.py b/src/aare/devices/tell_client.py index 039c5001..d4cdc1d7 100755 --- a/src/aare/devices/tell_client.py +++ b/src/aare/devices/tell_client.py @@ -221,9 +221,18 @@ class TellClient: ) logger.info(f"Check command okay response: {msg}") return TellEventValueEnum.SUCCESS - except Exception as e: - raise TellCommunicationError(f"Error: {e}") - + except Exception: + raise + if event == "state" and value == 'Busy': + logger.warning('got busy response form robot, waiting for mount to complete') + try: + msg = self.check_command_ok( + timeout=wait_timeout, msg=f"Mount {segment}{puck}-{sample}: " + ) + logger.info(f"Check command okay response: {msg}") + return TellEventValueEnum.SUCCESS + except Exception: + raise if event is None or event == "state": logger.info(f"event: {event} occurred with value: {value}, checking command completed okay") self.check_command_ok(