diff --git a/src/aare/devices/jfjoch.py b/src/aare/devices/jfjoch.py index e0671e8b..c581898b 100644 --- a/src/aare/devices/jfjoch.py +++ b/src/aare/devices/jfjoch.py @@ -1,4 +1,5 @@ import math +import time import jfjoch_client @@ -190,5 +191,12 @@ class JFJochWrapper: return l.detectors[l.current_id] - def get_diffraction_image(self, image_id: int): - return self.__api.image_buffer_image_jpeg_get(id=image_id, show_spots=False) \ No newline at end of file + def get_diffraction_image(self, image_id: int, wait_between_retries_s: float = 0.1): + last_error = None + for _ in range(3): + try: + return self.__api.image_buffer_image_jpeg_get(id=image_id, show_spots=False) + except Exception as e: + last_error = e + time.sleep(wait_between_retries_s) + raise last_error \ No newline at end of file