Slow controls protocol

Name

Slow controls protocol -- TCP/IP slow control protocol

Synopsis

Update name

Set name parameter value

Get name parameter

DESCRIPTION

The protocol which communicates with the slow control server is a set of commands that are submitted to a Tcl interpreter that is running in the server. Three commands result in dispatch to slow controls drivers. If the run is active, the dispatch to the driver functions is preceeded by pausing the run and succeeded by resuming the run. This allows driver functions unimpeded access to the CCUSB.

Each driver is assumed to implement a set of named parameters. These parameters have values which are passed to and from the driver without interpretation. Commands that result errors return strings to the client that begin with the text ERROR - with an english error message appended to that prefix.

SUBCOMMANDS

Update name

Asks the driver for the instance name to update any internal state it maintains from the device or, alternatively, depending on the driver refresh any device state from internal state. Normally this is used for devices that have write-only registers, for those devices, typically the driver must retain some concept of what it believes the state of the physical device is. This command is then used to ensure the actual state of the device matches the believed state.

Set name parameter-name value

Note the capital S in Set to distinguish it from the similar Tcl command. This command is used by a client to alter a parameter value. name is the name of a Module instance, parameter-name is the name of a parameter maintained by the driver for that device and value is the new requested value for the parameter.

On success the client is returned a line containing the string OK otherwise ERROR - along with a message is returned as describedin DESCRIPTION above.

Note that the legal parameter names and their legal values are soley determined by the device driver. See the device specific sections below for more information.

Get name parameter-name

Returns the value of the parameter parameter-name from the Module instance name. If this is successful, the value of the parameter will be returned to the client. Otherwise a line beginnning with ERROR - will be returned along with a textual error message.

PARAMETERS FOR SUPPORTED DEVICES

ph7106

The following parameters are supported by the driver for the Phillips PH7106 leading edge discriminator. As this device has read/write registers, Update is a no-op and the Get operation fetches state directly from the device.

threshold

Represents the single module threshold.

mask

Represents the module mask parameter.

mode

Represents the control mode of the device. this can be one of camac or local. This parameter is read-only and represents the state of a switch on the module front panel. If the module is in local mode, no changes can be made by CAMAC operations.

caen894

The following parameters are suppoerted by the CAEN C894 device support. These are all read/write parameters, although Get accesses internal driver memory of the last settings done as the actual hardware is write-only.

thresholdn

Represents the value of the threshold for channel n e.g. threshold10 represents the threshold value for channel 10. Thresholds number from [0-15] and have values between [0-255].

widthn

Represents the output width of channel n. Legal values are in the range [0-255].

inhibits

Represents the module inhibits mask. This 16 bit value has one bit for each channel. The least significant bit represents channel 0 the most significant bit channel 15. Set bits represent channnels that are inhibited.

majority

Represents the majority level. This value is in the range [1-20]