User Tools

Site Tools


s800_daq_tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
s800_daq_tools [2016/02/29 15:21]
pereira [Readout GUI]
s800_daq_tools [2017/07/17 17:35]
pereira [Troubleshooting]
Line 7: Line 7:
     * [[#Trigger GUI]]     * [[#Trigger GUI]]
     * [[#Scaler Display]]     * [[#Scaler Display]]
 +    * [[#Running in Slave mode with multilogger]]
   * [[#Troubleshooting]]   * [[#Troubleshooting]]
-  * [[#How to run combined S800 + GRETINA]]+
  
  
Line 18: Line 19:
  
 ==== Readout GUI ==== ==== Readout GUI ====
-The S800 Readout GUI is invoked by either clicking the icon **S800 DAQ** in the desktop of [[Software#u6pc5 (data U6)|u6pc5]] or by navigating in a Linux terminal to the directory **/user/s800/converged_daq** and typing ''godaq''. The Readout GUI window will appear with three tags labeled "main", "SSHPipe@localhost:0", and "SSHPipe@localhost:1". The first one provides general information about the ReadoutGUI. The second and third tabs provide information about the data sources (from the CCUSB and VMUSB controllers). **IMPORTANT NOTE:** When running Readout GUI, make sure that the environment variables needed by the system are properly defined. This can be done from a Linux terminal by typing: ''. /usr/opt/nscldaq/xxxx/daqsetup.bash'', where ''xxxx'' is the nscldaq version (xxx = 11.0-020, on Feb 2016).+The S800 Readout GUI is invoked by either clicking the icon **S800 DAQ** in the desktop of [[Software#u6pc5 (data U6)|u6pc5]] or by navigating in a Linux terminal to the directory **/user/s800/converged_daq** and typing ''godaq''. The Readout GUI window will appear with three tags labeled "main", "SSHPipe@localhost:0", and "SSHPipe@localhost:1". The first one provides general information about the ReadoutGUI. The second and third tabs provide information about the data sources (from the CCUSB and VMUSB controllers). **IMPORTANT NOTE:** When running Readout GUI, make sure that the environment variables needed by the system are properly defined. This can be done from a Linux session connected to spdaq19 by typing: ''. /usr/opt/nscldaq/xxxx/daqsetup.bash'', where ''xxxx'' is the nscldaq version (xxx = 11.0-020, on Feb 2016).
  
 Before beginning taking data is necessary to initialize the system. This is done by clicking ''Start'' in the ReadoutGUI. You can inspect the status of each source during their initialization by clicking in one of the tabs "SSHPipe@localhost:0" or "SSHPipe@localhost:1". You will see a series of messages about the different initialization steps. The last message should be "Done". During the initialization process, a fourth tab labeled "ActionFilter" may appear with information from the S800 filter. Sometimes, you may see a warning message about an old "still-running" S800 filter session being killed. That's ok. Before beginning taking data is necessary to initialize the system. This is done by clicking ''Start'' in the ReadoutGUI. You can inspect the status of each source during their initialization by clicking in one of the tabs "SSHPipe@localhost:0" or "SSHPipe@localhost:1". You will see a series of messages about the different initialization steps. The last message should be "Done". During the initialization process, a fourth tab labeled "ActionFilter" may appear with information from the S800 filter. Sometimes, you may see a warning message about an old "still-running" S800 filter session being killed. That's ok.
Line 37: Line 38:
 The S800 electronics includes a Mesytec CFD (MCFD), used to "filter" the detector signals going to the Scaler and Mesytec TDC. The configuration parameters of the CFD (thresholds, delays, fraction, etc.) can be remotely adjusted via a MCFD GUI developed by the NSCL DAQ group. During tuning of the S800, one typically needs to adjust thresholds only. The S800 electronics includes a Mesytec CFD (MCFD), used to "filter" the detector signals going to the Scaler and Mesytec TDC. The configuration parameters of the CFD (thresholds, delays, fraction, etc.) can be remotely adjusted via a MCFD GUI developed by the NSCL DAQ group. During tuning of the S800, one typically needs to adjust thresholds only.
  
-The MCFD GUI is invoked by either clicking the icon **MCFD GUI** in the desktop of [[Software#u6pc5 (data U6)|u6pc5]] or by navigating in a Linux terminal and typing ''$DAQBIN/MCFDControl16 --protocol usb --serialfile /dev/ttyUSB0''. The environment variable DAQBIN is defined by sourcing the **daqsetup.bash** file in directory **/usr/opt/nscldaq/xxxx/bin**, where xxxx is the nscldaq version number (11.0-015 on Oct 26, 2015).+The MCFD GUI can be started in three different ways: 1) by clicking the button ''Launch MCFD GUI'' in [[#Readout GUI|Readout GUI]]; 2) by clicking the icon **MCFD GUI** in the desktop of [[Software#u6pc5 (data U6)|u6pc5]]; 3) by navigating in a Linux terminal and typing ''$DAQBIN/MCFDControl16 --protocol usb --serialfile /dev/ttyUSB0''. The environment variable DAQBIN is defined by sourcing the **daqsetup.bash** file in directory **/usr/opt/nscldaq/xxxx/bin**, where xxxx is the nscldaq version number (11.0-015 on Oct 26, 2015).
  
  
Line 44: Line 45:
  
   * To load the default CFD configuration go to **Load Setting**, select file **MCFD16.tcl** in directory **/user/operations/daq/usb/Config**, and click **Load**   * To load the default CFD configuration go to **Load Setting**, select file **MCFD16.tcl** in directory **/user/operations/daq/usb/Config**, and click **Load**
-   * Alternatively, it is possible to load the configuration directly from the module by clicking **Update from Device**. However, the names of the channels will not be displayed+   * Alternatively, it is possible to load the configuration directly from the module by clicking **Update from Device**.  
-  * By default, the CFD parameters can be adjusted individually for each of the 16 channels. It is also possible use the module in a "common" mode to set the same CFD parameters to all channels. Just check **common**+   * By default, the CFD parameters can be adjusted individually for each of the 16 channels. It is also possible use the module in a "common" mode to set the same CFD parameters to all channels. Just check **common**
   * After modifying any of the CFD parameters, click **Commit to Device**   * After modifying any of the CFD parameters, click **Commit to Device**
 +  * Don't forget to save the new settings in file **MCF16.tcl**. 
 +     - Go to ''File''
 +     - Click ''Browse'' and select directory **/user/operations/daq/usb/Config** (default)
 +     - Select file **MCFD16tcl** and click ''Save''
 +     - A warning window will pop out to verify that you want to overwrite the existing file. Answer ''Yes''
 +     - Click again ''Save''
 +     - Click ''Back'' to return to the main GUI
   * The MCFD module includes the possibility to send a periodic pulsing signal to all the channels. Two frequencies can be selected: 1.22 KHz, and 2.5 MHz    * The MCFD module includes the possibility to send a periodic pulsing signal to all the channels. Two frequencies can be selected: 1.22 KHz, and 2.5 MHz 
  
Line 58: Line 66:
  
  
-This window appears when the "Init" button is pressed on the VME crate controller tab as part of the initial setup of the [[s800 daq tools#run control window|S800 USB daq]]. It can also be accessed by pressing the "Show GUIs" button. The delay module allows software configurable delays to be applied to each of the signals indicated in the Channel column, which then form the TDC stops. It is configurable to enable delays to be set with beam on target, as the needed delay may change depending on experimental conditions. +This window appears when the "Launch Gate Delay GUI" button is pressed on the [[#Readout GUI|Readout GUI]]. The delay module allows software configurable delays to be applied to each of the signals indicated in the Channel column, which then form the TDC stops. It is configurable to enable delays to be set with beam on target, as the needed delay may change depending on experimental conditions. 
  
 Some important things to remember: Some important things to remember:
Line 76: Line 84:
 {{:wiki:800px-TriggerGUI.png?800|right|Trigger GUI}} {{:wiki:800px-TriggerGUI.png?800|right|Trigger GUI}}
  
-The Trigger GUI appears when the "Init" button is pressed on the CAMAC crate controller tab as part of the initial setup of the [[s800 daq tools#run control window|S800 USB daq]]. The Trigger GUI is a visual display of the various Gate and Delay Generators and logic elements that make up the configurable trigger of the S800. The logic of the trigger decision is readily discerned from a visual inspection of this GUI. Setting the trigger configuration is also done using this GUI by right clicking on any of the wires to put that signal onto one of the four "Trigger Inspect" channels available at the patch panel of Data-U6. By inspecting the various delays, widths and overlaps the user trigger can be configured. The Trigger GUI is discussed in greater detail [[Trigger|here]].+The Trigger GUI appears when the "Launch ULM GUI" button is pressed on [[#Readout GUI]]. The Trigger GUI is a visual display of the various Gate and Delay Generators and logic elements that make up the configurable trigger of the S800. The logic of the trigger decision is readily discerned from a visual inspection of this GUI. Setting the trigger configuration is also done using this GUI  
 + 
 +The different signal going through the trigger scheme can be inspected in th Data-U6 oscilloscope. Simply right click on any of the wires to put that signal onto one of the four "Trigger Inspect" channels available at the patch panel of Data-U6, and connect that patch-panel cable to the oscilloscope. By inspecting the various delays, widths and overlaps the user trigger can be configured. The Trigger GUI is discussed in greater detail [[Trigger|here]].
  
  
Line 88: Line 98:
  
 {{:wiki:Scalers.jpg?700|Scaler Display}} {{:wiki:Scalers.jpg?700|Scaler Display}}
 +
 +
 +==== Running in Slave mode with multilogger ====
 +The S800 DAQ can be run in Standalone mode (as described above), or in Slave mode. The later means that the S800 DAQ is controlled by an external DAQ (e.g. GRETINA). In this mode, the S800 ULM receives external clock and external synchronization  signals from the master DAQ. Running in Slave mode requires to change the script **CC0105Begin.tcl** in directory **/user/s800/converged_daq/Scripts**. In this file, there are two variables ''extsynch'' and ''extclock'' to define if the external synchronization and clock signals are enabled (=1) or disabled (=0). Make sure that you set these variables to 1 if you want to run in Slave mode.
 +
 +
 +By default, when running in Slave mode, data are recorded in the stagearea of the Master DAQ (experiment account). It is however possible to record simultaneously data from the S800 into the S800 stagearea, using the ''multilogger'' option (see ReadoutGUI figure above). The S800 ReadougGUI offers the possibility to record data from four different S800 ring-buffers: rawccusb, rawvmusb, s800built, and s800filter. The later is the most important since data from this ring buffer can be immediately processed by the S800 SpecTcl. 
 +
 +When running XDT for an experiment with a Master DAQ (e.g. GRETINA), it is recommendable to run the S800 DAQ in Slave mode with the s800filter multilogger enabled. This can be done following the steps:
 +
 +  * Click to the tab ''multilogger'' in the **ReadoutGUI**
 +
 +  * Select the option "always record"
 +
 +  * Click again on the tab ''multilogger'' and select "enable loggers". A window will pop out with a list of ring-buffers that can be muti-logged {{:wiki:multilogger.png|Multilogger window}}
 +
 +  * Check out s800filter to enable recording data from this ring buffer
 +
 +  * After this, S800 data from every run recorded by the experimenters, will also be recorded in the S800 stagearea.
 +
 +  * After finishing XDT, it is better to disable the s800filter ring-buffer in the multilogger menu so the S800 stagearea doesn't record all data from the experiment.
 +
 +
  
  
 ===== Troubleshooting ===== ===== Troubleshooting =====
-There are several common reasons why the S800 DAQ may fails to start. The list below describes what to do to fix these problems.+There are several common reasons why the S800 DAQ may fail. The list below describes what to do to fix some of these problems.
   * [[#Old processes still running]]      * [[#Old processes still running]]   
   * [[#No data sources defined]]   * [[#No data sources defined]]
Line 102: Line 135:
 Sometimes, particularly if the previous S800 DAQ session ended in an uncontrolled way, there may be old processes running (CCUSB and/or VMUSB and/or S800 event builder) that will prevent Readout GUI to begin a run. Whenever this happens (typically after clicking ''Begin'' in Readout GUI), the system sends an error message complaining about one of these processes still running. If you find yourself in this situation try:   Sometimes, particularly if the previous S800 DAQ session ended in an uncontrolled way, there may be old processes running (CCUSB and/or VMUSB and/or S800 event builder) that will prevent Readout GUI to begin a run. Whenever this happens (typically after clicking ''Begin'' in Readout GUI), the system sends an error message complaining about one of these processes still running. If you find yourself in this situation try:  
       - Exit your Readout GUI properly        - Exit your Readout GUI properly 
-      - On a Linux session, connect to spdaq19 by typing ''ssh -Y s800@spdaq19'' (for S800 password ask operators)+      - On a Linux session, connect to spdaq19 by typing ''ssh -Y s800@spdaq19'' (the S800 password can be found in the S800 binder that is kept in the data-U1 logbook cabinet)
       - Type ''ps aux | grep Readout'' to ensure that Readout is indeed not running       - Type ''ps aux | grep Readout'' to ensure that Readout is indeed not running
       - Type ''/usr/opt/nscldaq/xxxx/bin/ringbuffer status'', where xxxx is the daq version, e.g. 11.0-020       - Type ''/usr/opt/nscldaq/xxxx/bin/ringbuffer status'', where xxxx is the daq version, e.g. 11.0-020
Line 129: Line 162:
 In the rare case that the RunControl GUI gets "frozen", it is possible to reboot the whole system manually. This operation requires to turn off the VME and CAMAC crates, and the spdaq computer, all them located in the rack seating near the FP box in the S3 vault. Then, the system must be turned back on in the following order. First, CAMAC crate, second VME crate, and third spdaq. In the rare case that the RunControl GUI gets "frozen", it is possible to reboot the whole system manually. This operation requires to turn off the VME and CAMAC crates, and the spdaq computer, all them located in the rack seating near the FP box in the S3 vault. Then, the system must be turned back on in the following order. First, CAMAC crate, second VME crate, and third spdaq.
  
- 
- 
-===== How to run combined S800 + GRETINA ===== 
-OBSOLETE. Documentation is currently under development. 
- 
- 
-In order to run the combined S800 + Gretina daq, the following steps need to be taken: 
- 
-1. On spdaq48 in /user/s800/operations/daq/usb/TclXXUSB do: 
- 
-**wish ./RunControl.tcl** 
- 
-or, on devop2 (the S800 MAC machine) 
- 
-click on the operations folder on the lower icon bar and select runcontrol.command 
- 
-2. On a dataU machine logged in as the experimental account (e11007 for the June 2012 testing period) do 
- 
-**godaq** 
- 
-3. On spdaq44 do:  
- 
-**/usr/opt/daq/10.1/bin/ringbuffer status**. The output should look similar to: 
- 
-<code> 
- +----------------+------------+-------+-------------+--------+---------+---------+------+-------------+ 
- |Name            |data-size(k)|free(k)|max_consumers|producer|maxget(k)|minget(k)|client|clientdata(k)| 
- +----------------+------------+-------+-------------+--------+---------+---------+------+-------------+ 
- |0400x           |8195        |8195   |100          |-1      |0        |0        |-     |-            | 
- |s800            |8195        |8195   |100          |7485    |0        |0        |-     |-            | 
- |-               |-           |-      |-            |-       |-        |-        |9143  |0            | 
- |segatest        |8195        |8195   |100          |-1      |0        |0        |-     |-            | 
- |spdaq48.0400x   |8195        |8195   |100          |17205   |0        |0        |-     |-            | 
- |spdaq48.segatest|8195        |8195   |100          |-1      |0        |0        |-     |-            | 
- +----------------+------------+-------+-------------+--------+---------+---------+------+-------------+ 
-</code> 
- 
-Upon start of run there will be another client of the s800 ring, which is the pushToGEB process. This should die on end run. 
- 
- 
-The S800 daq will now be in slave mode, and run control is done from the NSCL daq window. 
  
  
  
s800_daq_tools.txt · Last modified: 2023/10/19 17:25 by swartzj