EPICS Signal Variants¶
BEC exposes three common EPICS-backed signal classes through ophyd_devices:
ophyd_devices.EpicsSignalophyd_devices.EpicsSignalROophyd_devices.EpicsSignalWithRBV
Use these classes when you want to expose a single EPICS process variable in BEC instead of a full motor-style device.
Which one should I use?¶
The right choice depends on whether the PV is writable and how EPICS exposes its readback:
- Choose
ophyd_devices.EpicsSignalfor a normal read/write signal. - Choose
ophyd_devices.EpicsSignalROfor a read-only signal that BEC should monitor but never write to. - Choose
ophyd_devices.EpicsSignalWithRBVwhen the EPICS record has a setpoint PV and a separate readback PV following the usualprefixandprefix_RBVpattern.
What goes into deviceConfig?¶
Each class expects a slightly different deviceConfig section in the BEC config:
ophyd_devices.EpicsSignal:read_pv, and optionallywrite_pvif the write PV differs from the read PVophyd_devices.EpicsSignalRO:read_pvophyd_devices.EpicsSignalWithRBV:prefix
What to remember
- Use EPICS signal classes when you want to expose a single EPICS PV in BEC rather than a full motor device.
- Choose
EpicsSignalfor read/write PVs,EpicsSignalROfor read-only PVs, andEpicsSignalWithRBVwhen setpoint and readback follow the usual RBV pattern. - The correct
deviceConfigfields depend on the chosen class. - Picking the right EPICS signal variant keeps the BEC device model aligned with the underlying EPICS record behavior.