SDD7

The SDD7 detector is defined in /online_dir/exp_ini.exp by:

define/dev=MCA/mod=SDD7/host=fecpxi2/port=33345/chan=0 MCA11
define/dev=MCA/mod=SDD7/host=fecpxi2/port=33345/chan=1 MCA12
define/dev=MCA/mod=SDD7/host=fecpxi2/port=33345/chan=2 MCA13
define/dev=MCA/mod=SDD7/host=fecpxi2/port=33345/chan=3 MCA14
define/dev=MCA/mod=SDD7/host=fecpxi2/port=33345/chan=4 MCA15
define/dev=MCA/mod=SDD7/host=fecpxi2/port=33345/chan=5 MCA16
define/dev=MCA/mod=SDD7/host=fecpxi2/port=33345/chan=6 MCA17

Make sure that these definitions are made after the device list has been loaded (load/nocon) because 'load/nocon' works only with an empty device list.

The following functions operate the SDD7:

* = START_MCA( MCA11, 0)
    The number 0 serves as a bank number for other MCAs. The
    SDD7 has no banks. It is supplied because the function 
    expects 2 arguments. 

* = STOP_MCA( MCA11, 0)

* = READ_MCA( MCA11, 0, scan_name, 4096)
    The SDD7 server sends data for all channels only. Online
    buffers the data in order to minimize I/O. The procedure
    is as follows. There is one buffer for each channel. Each 
    buffer has a flag that indicates whether it contains valid
    data. This flag is set to valid when new data from the SDD7
    arrive. The flag is cleared when the data is read by a 
    read_mca(). If read_mca() refers to a channel that has 
    valid buffered data, the data are copied from the buffer
    to scan_name without communicating to the SDD7 and the
    corresponding buffer is marked invalid. If read_mca() 
    refers to an invalid buffer, data is read from the SDD7.      

    Btw.: the total count rate is always 1 MHz. 

* = CLEAR_MCA( MCA11, 0)                           
    Clears the SDD7 and marks the Online buffers invalid. 

* = CONTROL_MCA( MCA11, OFF)

* = CONTROL_MCA( MCA11, WARM_ON)
* = CONTROL_MCA( MCA11, COLD_ON)
  Both commands take 2 minutes, automatically preceded by an OFF

* = CONTROL_MCA( id, START_IO)
* = CONTROL_MCA( id, INIT_AD)
  Send START_IO and INIT_AD after each restart of the server. Online
  sends START_IO and INIT_AD after it opened the socket. 

* = STATUS_MCA( MCA11, all)
  Displays the complete status list and waits for a keystroke.
  OFF: 
    SDD_M_6 TEMP_W VAC_E_OFF DEWP_E_OFF TC_GOOD_OFF 
    VOLTC_E_OFF HV_ON_OFF HV_ERROR_OFF;
  WARM_ON: 
    SDD_M_6 TEMP_W VAC_E_OFF DEWP_E_OFF TC_GOOD_ON 
    VOLTC_E_OFF HV_ON_ON HV_ERROR_OFF;
* = STATUS_MCA( id, keyword) 
  returns 1, if the keyword is in the status list, 0 otherwise

The server is started by:

ssh -l sdduser fecpxi2 

> cd /home/sdduser/DAQ/PXI/Work/BIN
> ../nserver-111208