From 2a17d7478ca1fd5aa0066e481212d72f3a6a8d8d Mon Sep 17 00:00:00 2001 From: wyzula-jan Date: Sat, 3 Oct 2026 18:49:01 +0200 Subject: [PATCH] docs(devices): document the laser delay phase path, runtime settings and PV failures --- superxas_bec/devices/laser_delay.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/superxas_bec/devices/laser_delay.py b/superxas_bec/devices/laser_delay.py index 2d85813..853a551 100644 --- a/superxas_bec/devices/laser_delay.py +++ b/superxas_bec/devices/laser_delay.py @@ -435,7 +435,8 @@ class LaserDelay(PSIDeviceBase, PositionerBase): doc="Stored (unwrapped) phase shifter delay in ns", ) - # Tunable constants (deviceConfig; runtime changes via set_device_config apply to the next move) + # Tunable constants (deviceConfig). Runtime changes (dev.laser_delay.step_sleep.set(0.05)) apply + # to the next move. rf_period = Cpt( CheckedSignal, value=2.0, kind=Kind.config, validator=_positive_number("rf_period") ) @@ -501,7 +502,7 @@ class LaserDelay(PSIDeviceBase, PositionerBase): self._phase_v1_pv = phase_v1_pv self._phase_v2_pv = phase_v2_pv self._move_lock = threading.RLock() # guards _move_status and _move_stop - self._hw_lock = threading.Lock() # held by the move task while it writes PVs + self._hw_lock = threading.Lock() # held by the move task and by calibrate/set_calibration self._move_stop = threading.Event() # one event per move, set to interrupt that move self._move_status: StatusBase | None = None super().__init__(