From 4a552c0dcd0b5583389bb20d42d7166d5da8ef10 Mon Sep 17 00:00:00 2001 From: appleb_m Date: Thu, 29 Jan 2026 14:32:16 +0100 Subject: [PATCH] Sample Camera - added PVs to get expo and gain readbacks, implemented a set_auto_once button --- src/aare/devices/area_detector.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/aare/devices/area_detector.py b/src/aare/devices/area_detector.py index 873980dc..32dbea93 100644 --- a/src/aare/devices/area_detector.py +++ b/src/aare/devices/area_detector.py @@ -12,10 +12,15 @@ class epicsAD(object): self.acquire = epics.PV(prefix + cam + "Acquire") self.color = epics.PV(prefix + cam + "ColorMode") self.gain_mode = epics.PV(prefix + cam + "GainAuto") + self.gain_mode_rbv = epics.PV(prefix + cam + "GainAuto_RBV") # 0 - manual, GainMode, 2 - auto GainAuto self.expo_mode = epics.PV(prefix + cam + "ExposureAuto") - # 0 - manual, ExposureMode, 2 - auto ExposureAutoself.gain = epics.PV(prefix + cam + "Gain") + self.expo_mode_rbv = epics.PV(prefix + cam + "ExposureAuto_RBV") + # 0 - manual, ExposureMode, 1 - once 2 - auto ExposureAuto + self.gain = epics.PV(prefix + cam + "Gain") + self.gain_rbv = epics.PV(prefix + cam + "Gain_RBV") self.expo = epics.PV(prefix + cam + "AcquireTime") + self.expo_rbv = epics.PV(prefix + cam + "AcquireTime_RBV") self.ndim = epics.PV(prefix + image + "NDimensions_RBV") self.dim0 = epics.PV(prefix + image + "ArraySize0_RBV") @@ -134,6 +139,10 @@ class epicsAD(object): self.expo_mode.put(2) # automatic exposure control self.acquire.put(1) + def set_auto_once(self): + self.expo_mode.put(1) + self.gain_mode.put(1) + def set_manual(self): self.acquire.put(0, wait=True) self.gain_mode.put(0) # automatic gain control