Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

To run the DAQ with the ePixM, a recent (to April 2, 2024) version of the build is necessary.  The following generally needs to be done only oncewhen a new release must be installed.

Code Block
languagebash
collapsetrue
ssh psbuild-rhel7 -l detopr 
cd ~/git
git clone ssh://github.com/slac-lcls/lcls2 lcls2_240402
cd lcls2_240402
. ./setup_env.sh
./build_all.sh

cd ..
git clone ssh://github.com/slac-lcls/ami ami_240402
cd ami_240402
./build_all.sh

cd ~/scripts
rm setup_env.sh
ln -s ~/git/lcls2_240402/setup_env.sh
cp ~/git/lcls2_240402/psdaq/psdaq/cnf/epixM.cnf .
# Modify epixM.cnf as needed

...

A bunch of windows will come up after the procmgr start command is given.  Usually the first thing to do is to click the Select button in the Partition area of the DAQ Control GUI.  It may take a few moments before the Select partition window pops up (called Rollcall), depending on previous history and the state of the system.  Once the window appears, select the detectors you want to include in your run.  The detectors will by default be assigned to the readout group (grp) for the platform on which you launched the DAQ (the procmgr start -p option value).  Under some circumstances, this needs to must be changed, but leave it like this can be left alone for now.  Optionally select ami-meb0 if you plan/want to use AMI.  It should look like the first screen-shot below:


From this you can see that the ePixM detector is named epixm_0 and runs on drp-neh-cmp003.  The timing DRP is named timing_1 and runs on drp-neh-cmp002.  These names are set up in the epixM.cnf file.  Be careful about changing them because they also correspond to the names of the configuration entries in the configuration database.  To access and modify itan entry, click on the Edit button in the Configuration section of the Control GUI.  Leave the Type at BEAM and use the Select pull-down to choose a detector.  You'll see the two detector names currently in this DAQ instance as shown in the second screen-shot above.  You may find you need to modify the epixm_0 and/or timing_1 database instances to adjust various parameters.  As an example, below is a screen-shot of the epixm_0 DB instance (ignore the tst_epixm_0 instance), highlighting the run_trigger_group parameter.  You might want to change its value if it conflicts with another detector's or DAQ's usage.

...

Sometimes a group is used implicitly, as with the ePixM's (and ePixHR's) Run Trigger group.  Its parameters are not governed by the Config DB ConfigDb instance, but instead are manipulated directly using the groupca GUI and a script.  The Beam Test Trigger Setup section of the EpixHR page describes one such script and how to run it.  With groupca, one then enters values on the appropriate group tab to set up rates, event codes, etc., as shown in the first screen-shot below:

...

Once the parameters have been set up as desired, it's time to take a run can be taken.  Decide whether you want to run with or without recording and click the Record button on the Control GUI, as appropriate (must be done when the state machine is in a state lower than BeginRun).  Then move the Target State to Running to start the run.  When done, move the Target State to Paused (or lower, e.g., Configured) to stop the run. 

Alternatively, there are scripts with which to run a scan.  Available scans are timing, pedestal and charge injection.  These can be run by first putting the DAQ in the Allocated state (procmgr start followed by Applying the detectors chosen in the Select partition pop-up) and running one of the following scripts:

Code Block
languagebash
python ~/git/lcls2/psdaq/psdaq/cas/epixhr_timing_scan.py -p 3 -C drp-neh-ctl002 --hutch tst --config BEAM --detname epixm_0 --scantype timing --events 2000 --record 1
python ~/git/lcls2/psdaq/psdaq/cas/epixm_pedestal_scan.py -p 3 -C drp-neh-ctl002 --hutch tst --config BEAM --detname epixm_0 --scantype pedestal --events 2000 --record 1
python ~/git/lcls2/psdaq/psdaq/cas/epixm_chargeinj_scan.py -p 3 -C drp-neh-ctl002 --hutch tst --config BEAM --detname epixm_0 --scantype chargeinj --events 2000 --record 1

See the -h option for of these scripts for usage information.  Note that the timing scan can be done with the ePixHR script while the pedestal and charge injection scripts are specific to the ePixM.