From 3ca86400ade0729547e0eff977006e40731dc99d Mon Sep 17 00:00:00 2001 From: x06sa Date: Fri, 10 Jul 2026 16:53:58 +0200 Subject: [PATCH] Automatic backup triggered by new deployment --- .../device_configs/pxi-beamline-states.yaml | 213 ++ pxi_bec/device_configs/pxi-devices.yaml | 691 +++++++ .../pxi-devices.yaml--copy_of_10s | 1829 +++++++++++++++++ .../device_configs/x06sa_device_config.yaml | 52 + pxi_bec/devices/undulator.py | 58 + 5 files changed, 2843 insertions(+) create mode 100644 pxi_bec/device_configs/pxi-beamline-states.yaml create mode 100644 pxi_bec/device_configs/pxi-devices.yaml create mode 100644 pxi_bec/device_configs/pxi-devices.yaml--copy_of_10s create mode 100644 pxi_bec/device_configs/x06sa_device_config.yaml create mode 100644 pxi_bec/devices/undulator.py diff --git a/pxi_bec/device_configs/pxi-beamline-states.yaml b/pxi_bec/device_configs/pxi-beamline-states.yaml new file mode 100644 index 0000000..70c5c96 --- /dev/null +++ b/pxi_bec/device_configs/pxi-beamline-states.yaml @@ -0,0 +1,213 @@ +states: + robot_sample_exchange: + allow_modifiers: true + bl_pos: in + bl_bright: 'off' + bs_pos: in + bs_z: safe + coll_y: out + cryo_pos: in + det_cov: 'close' + diag_y: out + fl_bright: 'off' + aerotech_x: in + aerotech_y: mount + aerotech_z: mount + aerotech_u: mount + smargon_x: mount + smargon_y: mount + smargon_z: mount + smargon_chi: mount + smargon_phi: mount + xrf_pos: out + + sample_alignment: + allow_modifiers: true + bl_pos: in + bl_bright: 'on' + bs_pos: in + bs_z: safe + coll_y: out + cryo_pos: in + det_cov: 'close' + diag_y: out + fl_bright: 'on' + aerotech_x: in + aerotech_y: work + aerotech_z: work + # aerotech_u: mount + # smargon_x: mount + # smargon_y: mount + # smargon_chi: mount + # smargon_phi: mount + xrf_pos: out + + data_collection: + allow_modifiers: true + bl_pos: out + bl_bright: 'off' + bs_pos: in + bs_z: safe + coll_y: in + cryo_pos: in + det_cov: 'open' + diag_y: out + fl_bright: 'on' + aerotech_x: in + aerotech_y: work + aerotech_z: work + # aerotech_u: mount + # smargon_x: mount + # smargon_y: mount + # smargon_chi: mount + # smargon_phi: mount + xrf_pos: out + + DC_XRF: + allow_modifiers: true +# bl_pos: out + bl_bright: 'off' + bs_pos: in + bs_z: safe + coll_y: in + cryo_pos: in + det_cov: 'close' + diag_y: out + fl_bright: 'on' + aerotech_x: in + aerotech_y: work + aerotech_z: work + aerotech_u: mount + # smargon_x: mount + # smargon_y: mount + # smargon_chi: mount + # smargon_phi: mount + xrf_pos: out + + manual_sample_exchange: + allow_modifiers: true + bl_pos: out + bl_bright: 'off' + bs_pos: out + bs_z: safe + coll_y: park + cryo_pos: in + det_cov: 'close' + det_z: 'mse' + diag_y: park + fl_bright: 'off' + aerotech_x: in + aerotech_y: mount + aerotech_z: mount + aerotech_u: mount + smargon_x: mount + smargon_y: mount + smargon_chi: mount + smargon_phi: mount + xrf_pos: out + + beam_visualisation: + bl_pos: out + bl_bright: 'off' + bs_pos: in + bs_z: safe + coll_y: out + cryo_pos: out + det_cov: 'close' + diag_y: scint + fl_bright: 'off' + aerotech_x: out + aerotech_y: mount + aerotech_z: mount + aerotech_u: mount + smargon_x: mount + smargon_y: mount + smargon_chi: mount + smargon_phi: mount + xrf_pos: out + + flux_measurement: + bl_pos: in + bl_bright: 'off' + bs_pos: in + bs_z: safe + coll_y: out + cryo_pos: out + det_cov: 'close' + diag_y: i1 + fl_bright: 'off' + aerotech_x: out + aerotech_y: mount + aerotech_z: mount + aerotech_u: mount + smargon_x: mount + smargon_y: mount + smargon_chi: mount + smargon_phi: mount + xrf_pos: out + + beamstop_alignment: + bl_pos: out + bl_bright: 'off' + bs_pos: in + bs_z: samp + coll_y: out + cryo_pos: out + det_cov: 'close' + diag_y: out + fl_bright: 'on' + aerotech_x: out + aerotech_y: mount + aerotech_z: mount + aerotech_u: mount + smargon_x: mount + smargon_y: mount + smargon_chi: mount + smargon_phi: mount + xrf_pos: out + + maintenance: + allow_modifiers: true + bl_pos: out + bl_bright: 'off' + bs_pos: out + bs_z: safe + coll_y: park + cryo_pos: in + det_cov: 'close' + diag_y: park + fl_bright: 'off' + aerotech_x: out + aerotech_y: mount + aerotech_z: mount + aerotech_u: mount + smargon_x: mount + smargon_y: mount + smargon_chi: mount + smargon_phi: mount + xrf_pos: out + + xtal_snapshot: + allow_modifiers: true + bl_pos: in + bl_bright: 'on' + bs_pos: in + bs_z: safe + coll_y: intermediate + cryo_pos: in + det_cov: 'close' + diag_y: out + fl_bright: 'on' + # aerotech_x: in + # aerotech_y: work + # aerotech_z: work + # aerotech_u: mount + # smargon_x: mount + # smargon_y: mount + # smargon_chi: mount + # smargon_phi: mount + xrf_pos: out + + + + diff --git a/pxi_bec/device_configs/pxi-devices.yaml b/pxi_bec/device_configs/pxi-devices.yaml new file mode 100644 index 0000000..a4a1042 --- /dev/null +++ b/pxi_bec/device_configs/pxi-devices.yaml @@ -0,0 +1,691 @@ +# BEC Device Configuration File +# +# The device config consists of a mapping of device names to their configurations. +# +# The following fields are required for each device: +# - deviceClass: The class of the device (e.g., ophyd_devices.SimPositioner). +# - enabled: A boolean indicating if the device is enabled. +# - readoutPriority: Determines how the device is read out during a scan. Possible values are ["monitored", "baseline", "async", "on_request", "continuous"]. +# +# Optional fields (defaults shown): +# - connectionTimeout: Connection timeout in seconds. Default is 5. +# - description: A string description of the device. Default is "" (empty string). +# - deviceConfig: A dictionary of configuration parameters specific to the device class. Default is None. +# - deviceTags: A list/set of tags associated with the device. Default is an empty list/set. +# - needs: A list of other device names that this device depends on. Default is []. +# - onFailure: The action to take on failure. Possible values are ["buffer", "retry", "raise"]. Default is "retry". +# - readOnly: A boolean indicating if the device is read-only. Default is false. +# - softwareTrigger: A boolean indicating if the device uses software triggering. Default is false. +# - userParameter: A dictionary of user-defined parameters. Default is {}. +# +# Default values may be omitted for brevity. +########################################################################################################################## + + +# An example device configuration with all fields: + +# device1: +# deviceClass: ophyd_devices.SimPositioner +# description: Sample positioner device +# deviceConfig: +# delay: 1 +# update_frequency: 10 +# deviceTags: +# - frontend +# - motor +# enabled: true +# connectionTimeout: 20 +# readoutPriority: baseline +# needs: +# - device2 +# - device3 +# onFailure: retry +# readOnly: false +# softwareTrigger: false +# userParameter: +# in: 23.1 +# out: -50 + +########################################################################################################################## + +bsf_f1_y: + description: BSF Filter 1 Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFFI1:TRY + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_f2_y: + description: BSF Filter 2 Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFFI2:TRY + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xcen: + description: BSF X Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:CENTER + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xr: + description: BSF Slit Ring + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:TRXR + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xsize: + description: BSF X Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:SIZE + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xw: + description: BSF Slit Wall + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:TRXW + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_yb: + description: BSF Slit Bottom + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:TRYB + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_ycen: + description: BSF Y Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:CENTER + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_ysize: + description: BSF Y Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:SIZE + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_yt: + description: BSF Slit Top + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:TRYT + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline + +dcm_bragg: + description: DCM Bragg Angle + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTY + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_fpitch: + description: DCM 2nd Crystal Fine Pitch + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTY-CR2-FINEPITCH + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_froll: + description: DCM 2nd Crystal Fine roll + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTZ-CR2-FINEROLL + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_perp: + description: DCM Perpendicular + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:TRX-CR2 + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_pitch: + description: DCM 2nd Crystal Pitch + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTY-CR2-PITCH + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_x: + description: DCM Lateral + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:TRX + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline + + +fe_bpm1: + description: FE XBPM Channel 1 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current1:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm2: + description: FE XBPM Channel 2 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current2:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm3: + description: FE XBPM Channel 3 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current3:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm4: + description: FE XBPM Channel 4 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current4:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm_x: + description: FE BPM X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-FE-XBPM1:TRX + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_bpm_y: + description: FE BPM Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-FE-XBPM1:TRY + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_bpmsum: + description: FE XBPM Summed + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:SumAll:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_sl_xcen: + description: FE Slit X Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:CENTERX + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_xr: + description: FE Slit X Ring + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRXR + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_xsize: + description: FE Slit X Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:SIZEX + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_xw: + description: FE Slit X Wall + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRXW + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_yb: + description: FE Slit Y Bottom + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRYB + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_ycen: + description: FE Slit Y Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:CENTERY + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_ysize: + description: FE Slit Y Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:SIZEY + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_yt: + description: FE Slit Y Top + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRYT + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline + + +id_gap: + description: undulator gap + deviceClass: pxi_bec.devices.undulator.UndulatorGap + deviceConfig: + prefix: 'X06SA-UIND:' + enabled: true + onFailure: buffer + readoutPriority: baseline + + +ss_bpm1: + description: SS BPM Channel 1 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current1:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm2: + description: SS BPM Channel 2 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current2:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm3: + description: SS BPM Channel 3 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current3:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm4: + description: SS BPM Channel 4 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current4:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm_x: + description: SS BPM X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSBPM:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_bpm_y: + description: SS BPM Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSBPM:TRY + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_bpmsum: + description: SS BPM Summed + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:SumAll:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_f1_x: + description: SS Filter 1 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI1:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_f2_x: + description: SS Filter 2 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI2:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_f3_x: + description: SS Filter 2 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI3:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_f4_x: + description: SS Filter 4 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI4:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xcen: + description: SS Slit X Centre + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:CENTER + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xr: + description: SS Slit Ring + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:TRXR + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xsize: + description: SS Slit X Size + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:SIZE + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xw: + description: SS Slit Wall + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:TRXW + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_yb: + description: SS Slit Bottom + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:TRYB + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_ycen: + description: SS Slit Y Centre + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:CENTER + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_ysize: + description: SS Slit Y Size + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:SIZE + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_yt: + description: SS Slit Top + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:TRYT + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xi_x: + description: SS X-ray Eye X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSXI:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 7 + out: -2.1 + type: multi-position +ss_xi_y: + description: SS X-ray Eye Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSXI:TRY + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xicam_exp: + description: SS Camera Exposure + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:cam1:AcquireTime + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xicam_gain: + description: SS Camera Gain + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:cam1:Gain + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xicam_max: + description: SS Cam Max + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:MaxValue_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_xicam_x: + description: SS Camera X + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:CentroidX_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +ss_xicam_xsig: + description: SS Camera X Sigma + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:SigmaX_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +ss_xicam_y: + description: SS Camera Y + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:CentroidY_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +ss_xicam_ysig: + description: SS Camera Y Sigma + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:SigmaY_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline diff --git a/pxi_bec/device_configs/pxi-devices.yaml--copy_of_10s b/pxi_bec/device_configs/pxi-devices.yaml--copy_of_10s new file mode 100644 index 0000000..67a1a56 --- /dev/null +++ b/pxi_bec/device_configs/pxi-devices.yaml--copy_of_10s @@ -0,0 +1,1829 @@ +# BEC Device Configuration File +# +# The device config consists of a mapping of device names to their configurations. +# +# The following fields are required for each device: +# - deviceClass: The class of the device (e.g., ophyd_devices.SimPositioner). +# - enabled: A boolean indicating if the device is enabled. +# - readoutPriority: Determines how the device is read out during a scan. Possible values are ["monitored", "baseline", "async", "on_request", "continuous"]. +# +# Optional fields (defaults shown): +# - connectionTimeout: Connection timeout in seconds. Default is 5. +# - description: A string description of the device. Default is "" (empty string). +# - deviceConfig: A dictionary of configuration parameters specific to the device class. Default is None. +# - deviceTags: A list/set of tags associated with the device. Default is an empty list/set. +# - needs: A list of other device names that this device depends on. Default is []. +# - onFailure: The action to take on failure. Possible values are ["buffer", "retry", "raise"]. Default is "retry". +# - readOnly: A boolean indicating if the device is read-only. Default is false. +# - softwareTrigger: A boolean indicating if the device uses software triggering. Default is false. +# - userParameter: A dictionary of user-defined parameters. Default is {}. +# +# Default values may be omitted for brevity. +########################################################################################################################## + + +# An example device configuration with all fields: + +# device1: +# deviceClass: ophyd_devices.SimPositioner +# description: Sample positioner device +# deviceConfig: +# delay: 1 +# update_frequency: 10 +# deviceTags: +# - frontend +# - motor +# enabled: true +# connectionTimeout: 20 +# readoutPriority: baseline +# needs: +# - device2 +# - device3 +# onFailure: retry +# readOnly: false +# softwareTrigger: false +# userParameter: +# in: 23.1 +# out: -50 + +########################################################################################################################## + + +bcu_bpm1: + description: BCU BPM Channel 1 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BCBPM:Current1:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +bcu_bpm2: + description: BCU BPM Channel 2 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BCBPM:Current2:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +bcu_bpm3: + description: BCU BPM Channel 3 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BCBPM:Current3:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +bcu_bpm4: + description: BCU BPM Channel 4 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BCBPM:Current4:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +bcu_bpm_x: + description: BCU BPM X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCBPM:TRX + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_bpm_y: + description: BCU BPM Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCBPM:TRY + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_bpmsum: + description: BCU BPM Summed + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BCBPM:SumAll:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +bcu_sl_xcen: + description: BCU Slit X Centre + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLH:CENTER + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_sl_xr: + description: BCU Slit Ring + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLH:TRXR + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_sl_xsize: + description: BCU Slit X Size + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLH:SIZE + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_sl_xw: + description: BCU Slit Wall + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLH:TRXW + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_sl_yb: + description: BCU Slit Bottom + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLV:TRYB + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_sl_ycen: + description: BCU Slit Y Centre + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLV:CENTER + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_sl_ysize: + description: BCU Slit Y Size + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLV:SIZE + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bcu_sl_yt: + description: BCU Slit Top + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BCSLV:TRYT + deviceTags: + - bcu + enabled: true + onFailure: buffer + readoutPriority: baseline +bl_bright: + description: Backlight Brightness + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BL:SET + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + 'off': 0.0 + 'on': 1.3 + tol: 0.01 + type: continuous +bl_pos: + description: Backlight Positioner + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BL:POS-SET + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 1 + out: 0 + type: discrete +bs_pos: + description: Beamstop Positioner + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-BS:POS-SET + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 1 + out: 0 + type: discrete +bs_x: + description: Beamstop X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BS:TRX + deviceTags: + - se + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 0.4 +bs_y: + description: Beamstop Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BS:TRY + deviceTags: + - se + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: -2.654 +bs_z: + description: Beamstop Z + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-BS:TRZ + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + max_blin: 45.4 + max_blout: 70 + min: 13 + safe: 45.1 + samp: 16.408 + type: continuous + work_min: 20 +bsf_f1_y: + description: BSF Filter 1 Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFFI1:TRY + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_f2_y: + description: BSF Filter 2 Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFFI2:TRY + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xcen: + description: BSF X Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:CENTER + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xr: + description: BSF Slit Ring + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:TRXR + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xsize: + description: BSF X Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:SIZE + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_xw: + description: BSF Slit Wall + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLH:TRXW + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_yb: + description: BSF Slit Bottom + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:TRYB + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_ycen: + description: BSF Y Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:CENTER + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_ysize: + description: BSF Y Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:SIZE + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +bsf_sl_yt: + description: BSF Slit Top + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-BSFSLV:TRYT + deviceTags: + - bsf + enabled: true + onFailure: buffer + readoutPriority: baseline +coll_x: + description: Collimator X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-COL:TRX + deviceTags: + - se + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: -2.72 +coll_y: + description: Collimator Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-COL:TRY + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 39.188 + intermediate: 32 + out: 20.002 + park: 1 + tol: 0.05 + type: continuous +cryo_pos: + description: Cryo positioner + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-CS:POS-SET + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 1 + out: 0 + type: discrete +cryo_temp: + description: Cryo Temperature + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-CS:TEMP_RBV + deviceTags: + - se + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +cryo_x: + description: Cryo X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-CS:TRX + deviceTags: + - se + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_bragg: + description: DCM Bragg Angle + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTY + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_fpitch: + description: DCM 2nd Crystal Fine Pitch + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTY-CR2-FINEPITCH + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_froll: + description: DCM 2nd Crystal Fine roll + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTZ-CR2-FINEROLL + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_perp: + description: DCM Perpendicular + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:TRX-CR2 + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_pitch: + description: DCM 2nd Crystal Pitch + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:ROTY-CR2-PITCH + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +dcm_x: + description: DCM Lateral + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-OP-DCM:TRX + deviceTags: + - dcm + enabled: true + onFailure: buffer + readoutPriority: baseline +det_cov: + description: Detector cover + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-DETCOV:SET + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + close: 1 + open: 2 + type: discrete +det_xi_focus: + description: X-ray Eye 2 Focus + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-XEYE:FOCUS + deviceTags: + - det + enabled: true + onFailure: buffer + readoutPriority: baseline +det_xi_x: + description: X-ray Eye X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-XEYE:TRX + deviceTags: + - det + enabled: true + onFailure: buffer + readoutPriority: baseline +det_xi_zoom: + description: X-ray Eye 2 Zoom + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-XEYE:ZOOM + deviceTags: + - det + enabled: true + onFailure: buffer + readoutPriority: baseline +det_y: + description: Detector Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-DET:TRY + deviceTags: + - det + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + work: 70 + xi: 213.601 +det_z: + description: Detector Z + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-DET:TRZ + deviceTags: + - det + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + mse: 800 + vis: 800 +diag_y: + description: Scintillator/diode Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SCL:TRY + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + i1: 41 + out: 20.0 + park: 1 + scint: 36.004 + tol: 0.3 + type: continuous +diag_z: + description: Scintillator/diode Z + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SCL:TRZ + deviceTags: + - se + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_bpm1: + description: FE XBPM Channel 1 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current1:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm2: + description: FE XBPM Channel 2 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current2:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm3: + description: FE XBPM Channel 3 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current3:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm4: + description: FE XBPM Channel 4 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:Current4:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_bpm_x: + description: FE BPM X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-FE-XBPM1:TRX + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_bpm_y: + description: FE BPM Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-FE-XBPM1:TRY + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_bpmsum: + description: FE XBPM Summed + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-FE-XBPM1:SumAll:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +fe_sl_xcen: + description: FE Slit X Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:CENTERX + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_xr: + description: FE Slit X Ring + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRXR + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_xsize: + description: FE Slit X Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:SIZEX + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_xw: + description: FE Slit X Wall + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRXW + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_yb: + description: FE Slit Y Bottom + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRYB + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_ycen: + description: FE Slit Y Centre + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:CENTERY + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_ysize: + description: FE Slit Y Size + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:SIZEY + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fe_sl_yt: + description: FE Slit Y Top + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-FE-SL1:TRYT + deviceTags: + - fe + enabled: true + onFailure: buffer + readoutPriority: baseline +fl_bright: + description: Frontlight Brightness + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-FL:SET + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + 'off': 0.0 + 'on': 3.0 + tol: 0.01 + type: continuous +hfm_bd: + description: HFM Downstream Bender + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:BNDD + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_bu: + description: HFM Upstream Bender + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:BNDU + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_pitch: + description: HFM Virtual Pitch + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:PITCH + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_roll: + description: HFM Virtual Roll + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:ROLL + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_x: + description: HFM Virtual X + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:TRX + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_xd: + description: HFM Downstream X + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:TRXD + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_xu: + description: HFM Upstream X + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:TRXU + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_y: + description: HFM Virtual Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:TRY + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_yaw: + description: HFM Virtual Yaw + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:YAW + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_ydw: + description: HFM Downstream Wall Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:TRYDW + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_yr: + description: HFM Ring Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:TRYR + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +hfm_yuw: + description: HFM Upstream Wall Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-HFM:TRYUW + deviceTags: + - hfm + enabled: true + onFailure: buffer + readoutPriority: baseline +i1: + description: I1 Diode + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SCLDI:READOUT + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +i2: + description: I2 Diode + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-XEYEDI:READOUT + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +id_gap: + description: undulator gap + deviceClass: pxi_bec.devices.undulator.UndulatorGap + deviceConfig: + prefix: 'X06SA-UIND:' + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_bpm1: + description: LU BPM Channel 1 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-OP-LUBPM:Current1:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +lu_bpm2: + description: LU BPM Channel 2 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-OP-LUBPM:Current2:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +lu_bpm3: + description: LU BPM Channel 3 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-OP-LUBPM:Current3:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +lu_bpm4: + description: LU BPM Channel 4 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-OP-LUBPM:Current4:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +lu_bpm_x: + description: BPM2 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUBPM:TRX + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_bpm_y: + description: BPM2 Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUBPM:TRY + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_bpmsum: + description: LU BPM Summed + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-OP-LUBPM:SumAll:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +lu_pod1_rotx: + description: SmarPod1 RX + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD1:ROTX + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod1_roty: + description: SmarPod1 RY + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD1:ROTY + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod1_rotz: + description: SmarPod1 RZ + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD1:ROTZ + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod1_y: + description: SmarPod1 Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD1:TRY + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod1_z: + description: SmarPod1 Z + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD1:TRZ + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod2_rotx: + description: SmarPod2 RX + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD2:ROTX + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod2_roty: + description: SmarPod2 RY + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD2:ROTY + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod2_rotz: + description: SmarPod2 RZ + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD2:ROTZ + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod2_y: + description: SmarPod2 Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD2:TRY + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_pod2_z: + description: SmarPod2 Z + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUPOD2:TRZ + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_z1: + description: Lens Z1 + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUTRZ1:TRZ + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +lu_z2: + description: Lens Z2 + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-OP-LUTRZ2:TRZ + deviceTags: + - lu + enabled: true + onFailure: buffer + readoutPriority: baseline +mag_ok: + description: Sample Sensor Check + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-DFS:CBOX-CMP1 + deviceTags: + - se + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +mag_rbv: + description: Sample Sensor RBV + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-DFS:CBOX-USER1 + deviceTags: + - se + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +mag_ref: + description: Sample Sensor Reference + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-DFS:CBOX-REFVAL1 + deviceTags: + - se + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +microscope_stats: + description: Stats Signal of MS camera + deviceClass: pxi_bec.devices.stats_signal.StatsSignal + deviceConfig: + prefix: 'X06SA-ES-MS:' + enabled: true + readoutPriority: async + softwareTrigger: true +samcam_ecc: + description: Sample Camera Eccentricity + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats5:Eccentricity_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +samcam_exp: + description: Sample Camera Exposure + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:cam1:AcquireTime + deviceTags: + - scam + enabled: true + onFailure: buffer + readoutPriority: baseline +samcam_gain: + description: Sample Camera Gain + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:cam1:Gain + deviceTags: + - scam + enabled: true + onFailure: buffer + readoutPriority: baseline +samcam_max: + description: Sample Camera Max + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats5:MaxValue_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +samcam_mean: + description: Sample Camera Mean + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats1:MeanValue_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +samcam_sigma: + description: Sample Camera Sigma + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats1:Sigma_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +samcam_x: + description: Sample Camera X + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats5:CentroidX_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +samcam_xsig: + description: Sample Camera X Sigma + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats5:SigmaX_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +samcam_y: + description: Sample Camera Y + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats5:CentroidY_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +samcam_ysig: + description: Sample Camera Y Sigma + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-MS:Stats5:SigmaY_RBV + deviceTags: + - scam + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +scam_zoom: + description: Sample Camera Zoom + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-MS:ZOOM + deviceTags: + - scam + enabled: true + onFailure: buffer + readoutPriority: baseline +sls_current: + description: SLS Current + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: ARS07-DPCT-0100:CURR + deviceTags: + - SLS + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored + +ss_bpm1: + description: SS BPM Channel 1 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current1:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm2: + description: SS BPM Channel 2 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current2:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm3: + description: SS BPM Channel 3 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current3:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm4: + description: SS BPM Channel 4 + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:Current4:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_bpm_x: + description: SS BPM X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSBPM:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_bpm_y: + description: SS BPM Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSBPM:TRY + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_bpmsum: + description: SS BPM Summed + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSBPM:SumAll:MeanValue_RBV + deviceTags: + - bpm + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_f1_x: + description: SS Filter 1 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI1:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_f2_x: + description: SS Filter 2 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI2:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_f3_x: + description: SS Filter 2 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI3:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_f4_x: + description: SS Filter 4 X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSFI4:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xcen: + description: SS Slit X Centre + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:CENTER + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xr: + description: SS Slit Ring + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:TRXR + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xsize: + description: SS Slit X Size + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:SIZE + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_xw: + description: SS Slit Wall + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLH:TRXW + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_yb: + description: SS Slit Bottom + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:TRYB + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_ycen: + description: SS Slit Y Centre + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:CENTER + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_ysize: + description: SS Slit Y Size + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:SIZE + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_sl_yt: + description: SS Slit Top + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSSLV:TRYT + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xi_x: + description: SS X-ray Eye X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSXI:TRX + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 7 + out: -2.1 + type: multi-position +ss_xi_y: + description: SS X-ray Eye Y + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-SSXI:TRY + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xicam_exp: + description: SS Camera Exposure + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:cam1:AcquireTime + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xicam_gain: + description: SS Camera Gain + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:cam1:Gain + deviceTags: + - ss + enabled: true + onFailure: buffer + readoutPriority: baseline +ss_xicam_max: + description: SS Cam Max + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:MaxValue_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +ss_xicam_x: + description: SS Camera X + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:CentroidX_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +ss_xicam_xsig: + description: SS Camera X Sigma + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:SigmaX_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +ss_xicam_y: + description: SS Camera Y + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:CentroidY_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +ss_xicam_ysig: + description: SS Camera Y Sigma + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-SSCAM:Stats5:SigmaY_RBV + deviceTags: + - ss + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: baseline +transm: + description: Beam Transmission + deviceClass: ophyd_devices.EpicsSignal + deviceConfig: + read_pv: X06SA-ES-SSFI:TRANSM-SET + write_pv: X06SA-ES-SSFI:TRANSM-SET + deviceTags: + - transm + enabled: true + readoutPriority: baseline +vfm_bd: + description: VFM Downstream Bender + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:BNDD + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_bu: + description: VFM Upstream Bender + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:BNDU + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_pitch: + description: VFM Virtual Pitch + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:PITCH + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_roll: + description: VFM Virtual Roll + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:ROLL + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_x: + description: VFM Virtual X + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:TRX + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_xd: + description: VFM Downstream X + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:TRXD + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_xu: + description: VFM Upstream X + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:TRXU + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_y: + description: VFM Virtual Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:TRY + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_yaw: + description: VFM Virtual Yaw + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:YAW + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_ydr: + description: VFM Downstream Ring Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:TRYDR + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_yur: + description: VFM Upstream Ring Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:TRYUR + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +vfm_yw: + description: VFM Wall Y + deviceClass: ophyd_devices.EpicsMotorEC + deviceConfig: + prefix: X06SA-ES-VFM:TRYW + deviceTags: + - vfm + enabled: true + onFailure: buffer + readoutPriority: baseline +xi_focus: + description: Xeye Zoom + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-XEYE:FOCUS + deviceTags: + - xeye + enabled: true + onFailure: buffer + readoutPriority: baseline +xi_x: + description: Xeye X + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-XEYE:TRX + deviceTags: + - xeye + enabled: true + onFailure: buffer + readoutPriority: baseline +xi_zoom: + description: Xeye Zoom + deviceClass: ophyd_devices.EpicsMotor + deviceConfig: + prefix: X06SA-ES-XEYE:ZOOM + deviceTags: + - xeye + enabled: true + onFailure: buffer + readoutPriority: baseline +xidiode: + description: Xeye Diode + deviceClass: ophyd.EpicsSignalRO + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-XEYEDI:READOUT + deviceTags: + - xeye + enabled: true + onFailure: buffer + readOnly: true + readoutPriority: monitored +xrf_pos: + description: XRF Positioner + deviceClass: ophyd.EpicsSignal + deviceConfig: + auto_monitor: true + read_pv: X06SA-ES-XRF:POS-SET + deviceTags: + - state + enabled: true + onFailure: buffer + readoutPriority: baseline + userParameter: + in: 1 + out: 0 + type: discrete diff --git a/pxi_bec/device_configs/x06sa_device_config.yaml b/pxi_bec/device_configs/x06sa_device_config.yaml new file mode 100644 index 0000000..f4ff18c --- /dev/null +++ b/pxi_bec/device_configs/x06sa_device_config.yaml @@ -0,0 +1,52 @@ +base_config: + - !include ./pxi-devices.yaml + +#microscope_stats: +# readoutPriority: async +# description: Stats Signal of MS camera +# deviceClass: pxi_bec.devices.stats_signal.StatsSignal +# deviceConfig: +# prefix: 'X06SA-ES-MS:' +# onFailure: retry +# enabled: true +# readOnly: false +# softwareTrigger: true + +# sample_env: +# - !include ./pxi-state-devices.yaml +# id_gap: +# readoutPriority: baseline +# description: undulator gap +# deviceClass: pxi_bec.devices.undulator.UndulatorGap +# deviceConfig: +# prefix: 'X06SA-UIND:' +# onFailure: buffer +# enabled: true +# readOnly: false +# softwareTrigger: false + +# smargon: +# description: REST-based device which connects to Smargopolo +# deviceClass: pxi_bec.devices.smargopolo_smargon.Smargon +# deviceConfig: {prefix: 'http://x06sa-smargopolo.psi.ch:3000'} +# onFailure: buffer +# enabled: True +# readoutPriority: baseline +# deviceTags: +# - smargon +# - motors +# readOnly: false +# softwareTrigger: false + +# aerotech: +# description: REST-based device which connects to AareScan and Aerotech +# deviceClass: pxii_bec.devices.aerotech.Aerotech +# deviceConfig: {prefix: 'http://mx-x06sa-queue-01:5234'} +# onFailure: buffer +# enabled: True +# readoutPriority: baseline +# deviceTags: +# - aerotech +# - motors +# readOnly: false +# softwareTrigger: false diff --git a/pxi_bec/devices/undulator.py b/pxi_bec/devices/undulator.py new file mode 100644 index 0000000..c1416f8 --- /dev/null +++ b/pxi_bec/devices/undulator.py @@ -0,0 +1,58 @@ +from ophyd.device import Component as Cpt +from ophyd.status import MoveStatus +from ophyd import EpicsSignal, EpicsSignalRO, PVPositioner + +class UndulatorGap(PVPositioner): + """ + SLS Undulator gap control + """ + + setpoint = Cpt(EpicsSignal, suffix="GAP-SP") + readback = Cpt(EpicsSignal, suffix="GAP-RBV", kind="hinted", auto_monitor=True) + + stop_signal = Cpt(EpicsSignal, suffix="STOP") + done = Cpt(EpicsSignal, suffix="DONE", auto_monitor=True) + + select_control = Cpt(EpicsSignalRO, suffix="SCTRL", auto_monitor=True) + + def __init__( + self, + prefix="", + *, + limits=None, + name=None, + read_attrs=None, + configuration_attrs=None, + parent=None, + egu="", + **kwargs, + ): + super().__init__( + prefix=prefix, + limits=limits, + name=name, + read_attrs=read_attrs, + configuration_attrs=configuration_attrs, + parent=parent, + egu=egu, + **kwargs, + ) + # Make the default alias for the user_readback the name of the + # motor itself. + self.readback.name = self.name + + def move(self, position, wait=True, timeout=None, moved_cb=None): + + # If it is operator controlled, undulator will not move. + if self.select_control.get() == 0: + raise Exception("Undulator is operator controlled!") + + # If it is already there, undulator will not move. The done flag + # will not change, the moving change callback will not be called. + # The status will not change. + if abs(position - self._position) < 0.0008: + status = MoveStatus(self, position, done=True, success=True) + return status + + return super().move(position, wait=wait, timeout=timeout, moved_cb=moved_cb) +