CMS Inner Tracker DAQ¶
This code is an extension of the OTS-DAQ project and requires it to function. To setup OTS-DAQ use the instructions listed here for installing the core OTS-DAQ packages. This must be done first! Once the OTS-DAQ core dependencies are set up, the CMS Inner Tracker interface code can be included. N.B. If you are working on rulinux03.dhcp.fnal.gov, you do not need to build the products since they are already installed in /data/ups.
If you are one of the project managers and plan on making modifications to the code, you can checkout the repository by doing the following assuming you have valid kerberos credentials,
cd $MRB_SOURCE # This is the 'srcs' directory that will be set in the course of setting up OTS-DAQ mrb gitCheckout -d otsdaq_cmsinnertracker ssh://email@example.com/cvs/projects/cmsinnertracker
Otherwise, you can just clone the directory using the http server,
cd $MRB_SOURCE # This is the 'srcs' directory that will be set in the course of setting up OTS-DAQ mrb gitCheckout -d otsdaq_cmsinnertracker http://cdcvs.fnal.gov/projects/cmsinnertracker
Alternatively, if you do not have mrb set up, you can check out the code using git directly,
git clone http://cdcvs.fnal.gov/projects/cmsinnertracker otsdaq_cmsinnertracker
If you don't checkout using ssh, you will not be able to push your changes to redmine.
You now need to checkout the submodule Ph2_ACF running the following commands:
cd $MRB_SOURCE/otsdaq_cmsinnertracker/otsdaq-cmsinnertracker/Ph2_ACF kinit user@CERN.CH git submodule init git submodule update git fetch git checkout -b Dev origin/Dev
Once the package is checked out source the environment:
source /path/to/products/area/setup # e.g. ~/otsdaq/products/setup cd my/mrb/working/directory # This is where localProducts_otsdaq_* and srcs resides setup mrb setup git source local*/setup source mrbSetEnv
To compile the CMS Inner Tracker interface code:
source $OTSDAQ/setup_ots.sh # Source the otsdaq environment if you haven't done it yet cd my/mrb/working/directory # This is where localProducts_otsdaq_* and srcs resides mrb b # Compile the code
To run OTS-DAQ one can just follow the instructions that appear on screen after sourcing:
but perhaps one first needs to open the ports to allow the different processes to comunicate:
Edit /etc/services, e.g. by adding otsdaq 2015/tcp, for ports from 2015 to 2020, then restart the network services
To unset all environment variables, useful perhaps during coding and compilation time, one can run:
Ideally, everything that is needed for a user to run OTS-DAQ will be contained in the otsdaq_cmsinnertracker directory and the code in otsdaq, otsdaq_utilities, and otsdaq_components will not need to be touched. If there is a situation where you wish to modify part of the core code, it is advised to put in a request with one of the maintainers (Lorenzo, Ryan, or Eric).
Below there is a summary of some of the parts that need to be modified in order to set up communication with the experimental device.
The FEInterface class tells OTS-DAQ how to communicate with front-end electronics and is found in:
All of the methods defined in the interface source can be called from the OTS-DAQ web interface.
In order to test the interface as a stand-alone program in:
one can find the relative test program which can be run with the command:
Configuration files are kept in:
Wiki syntax here
Instructions for setting up the main version of OTS-DAQ using MRB: Off-the-Shelf DAQ