id4_common.devices.scaler_dual_ctr8#

Setup for two CTR8 devices used together

Module Contents#

id4_common.devices.scaler_dual_ctr8.NUMCHANNELS = 8#
id4_common.devices.scaler_dual_ctr8.PREFIX1 = '4idCTR8_1:scaler1'#
id4_common.devices.scaler_dual_ctr8.PREFIX2 = '4idCTR8_1:scaler2'#
class id4_common.devices.scaler_dual_ctr8.LocalScalerChannel(*args, ch_num=0, **kwargs)#

Bases: ophyd.scaler.ScalerChannel

ScalerChannel subclass that tracks which physical scaler board owns this channel.

id4_common.devices.scaler_dual_ctr8.make_channels()#

Build an OrderedDict of 15 combined channels across two CTR8 scaler boards.

class id4_common.devices.scaler_dual_ctr8.DualCTR8Scaler(prefix1, prefix2, **kwargs)#

Bases: ophyd.Device

Combined scaler device aggregating two CTR8 boards into a single 15-channel interface.

prefix1#
prefix2#
channels#
scaler1#
scaler2#
freq#
preset_time = None#
preset_monitor#
match_names()#

Sync each channel’s Python name to the EPICS channel-name PV value.

select_channels(chan_names=None)#

Select channels based on the EPICS name PV

Parameters:

chan_names (Iterable[str] or None) – The names (as reported by the channel.chname signal) of the channels to select. If None, select all channels named in the EPICS scaler.

property trigger_scaler#

Return scaler1 as the hardware trigger source for both boards.

trigger()#

Trigger acquisition on scaler1; the second board follows via hardware connection.

property channels_name_map#

Return a dict mapping EPICS channel names to component attribute names.

select_plot_channels(chan_names=None)#

Set the Kind of each channel to hinted (in chan_names) or normal (others).

select_read_channels(chan_names=None)#

Select channels based on the EPICS name PV.

Parameters:

chan_names (Iterable[str] or None) – The names (as reported by the channel.chname signal) of the channels to select. If None, select all channels named in the EPICS scaler.

property monitor#

Return the EPICS name of the currently selected monitor channel.

property plot_options#

Return a list of all named scaler channel names available for plotting.

select_plot(channels)#

Set hinted kind for the given channel list, delegating to select_plot_channels.

default_settings()#

Initialize monitor, read channels, plot channels, and scaler delays.