From fe2513c0ef8e9cdbad511287bdddaefd78bed537 Mon Sep 17 00:00:00 2001 From: Jacob Williamson Date: Thu, 14 May 2026 13:16:19 +0100 Subject: [PATCH] Add fastcs eiger to i15-1 --- src/dodal/beamlines/i15_1.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/dodal/beamlines/i15_1.py b/src/dodal/beamlines/i15_1.py index 56f71cf531f..4977749d9cc 100644 --- a/src/dodal/beamlines/i15_1.py +++ b/src/dodal/beamlines/i15_1.py @@ -1,4 +1,9 @@ +from functools import cache +from pathlib import Path + +from ophyd_async.core import PathProvider, StaticPathProvider, UUIDFilenameProvider from ophyd_async.epics.motor import Motor +from ophyd_async.fastcs.eiger import EigerDetector from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline from dodal.device_manager import DeviceManager @@ -34,6 +39,14 @@ """ +@devices.fixture +@cache +def path_provider() -> PathProvider: + return StaticPathProvider( + UUIDFilenameProvider(), Path("/dls/i15-1/data/2026/cm44163-2") + ) + + @devices.factory() def att_y() -> NumberedTripleAxisStage: return NumberedTripleAxisStage( @@ -221,3 +234,10 @@ def gonio_interlock() -> GonioInterlock: return GonioInterlock( bl_prefix=PREFIX.beamline_prefix, interlock_suffix="-VA-OMRON-01:INT3:ILK" ) + + +@devices.factory() +def fastcs_eiger(path_provider: PathProvider) -> EigerDetector: + return EigerDetector( + prefix=f"{PREFIX.beamline_prefix}-EA-EIGER-01:", path_provider=path_provider + )