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