Table of Contents

Old DAQ Control

Alias daqcontrol or slowcontrol

Example of alias one can define to use daqcmd.py script

Slow Control

alias slccontrol="export DAQLOGIN=cmsLyon:RXXX_YYY;export DAQURL=https://ilcconfdb.yyy.fr/config-content/slow_control_dome_2;/opt/lydaq/qt/daqcmd.py"

Daq control with Oracle

alias daqcontrol="export DAQLOGIN=cmsLyon:RXXX_YYY;export DAQURL=https://ilcconfdb.yyyy.fr/config-content/diftest_bakelite_2;/opt/lydaq/qt/daqcmd.py"		

Daq control with MongoDB

alias dqmg="export MGDBLOGIN=acqilc/RXXX_YYY@lyozzzzz:27017@LYONROC;export DAQMONGO=diftest_bakelite:2;/opt/lydaq/qt/daqcmd.py"

daqcontrol.py Object

All the access to the daq is described in an object called fdaqClient in the daqcontrol module.

Detailed documentation can be found in daqcontrol.pdf

The object is either used in command line (daqcmd.py script or with a pyQt interface (daqqt.py)

daqcmd.py script

The main script to access with command line the DAQ is daqcmd.py:

 usage: daqcmd.py [-h]
               [--available | --app-info | --webstatus | --jc-create | --jc-kill | --jc-destroy | --jc-start | --jc-restart | --jc-status | --jc-info | --jc-appcreate | --daq-create | --daq-discover | --daq-setparameters | --daq-getparameters | --daq-forceState | --daq-services | --daq-state | --daq-initialise | --daq-configure | --daq-startrun | --daq-stoprun | --daq-destroy | --daq-difstatus | --daq-tdcstatus | --daq-evbstatus | --daq-dbstatus | --daq-downloaddb | --dif-setgain | --dif-setthreshold | --dif-ctrlreg | --feb-resettdc | --feb-calibdac | --feb-scurve | --feb-setvth | --feb-setmask | --feb-settdcmode | --feb-settdcdelays | --feb-lutcalib | --feb-lutdraw | --histo-draw | --trig-status | --trig-reset | --trig-pause | --trig-resume | --ecal-pause | --ecal-resume | --trig-spillon | --trig-spilloff | --trig-beam | --trig-spillregister | --trig-calibon | --trig-calibcount | --trig-rearm | --trig-hardreset | --trig-setregister | --trig-getregister | --trig-tdcreset | --slc-create | --slc-initialise | --slc-configure | --slc-start | --slc-stop | --slc-lvon | --slc-lvoff | --slc-lvstatus | --slc-hvstatus | --slc-vset | --slc-iset | --slc-rampup | --slc-hvon | --slc-hvoff | --slc-clearalarm | --slc-ptstatus | --slc-humstatus | --slc-ptcor]
               [--config CONFIG] [--socks SOCKPORT] [--dbstate DBSTATE]
               [--ctrlreg CTRLREG] [--version] [--state FSTATE]
               [--clock CLOCK] [--directory DIRECTORY] [--vth VTH]
               [--mask MASK] [--gain GAIN] [--B0 B0] [--B1 B1] [--B2 B2]
               [--v0 V0] [--p0 P0] [--t0 T0] [--tdc TDC] [--channel CHANNEL]
               [--first FIRST] [--last LAST] [--step STEP]
               [--voltage VOLTAGE] [--current CURRENT] [--ramp RAMP]
               [--account ACCOUNT] [--period PERIOD] [--spillon SPILLON]
               [--spilloff SPILLOFF] [--lines LINES] [--host HOST]
               [--name NAME] [--jobname JOBNAME] [--jobpid JOBPID]
               [--value VALUE] [--address ADDRESS] [--active ACTIVE]
               [--dead DEAD] [--asic ASIC] [--feb FEB]
               [--dbversion DBVERSION] [-v] [--comment COMMENT]
 optional arguments:
Command Description
-h, –help show this help message and exit
–available Check availability of daq,jobcontrol and slowcontrol
–app-info Check availability of daq,jobcontrol and slowcontrol
–webstatus Check availability of daq,jobcontrol,slowcontrol and
Ecal web servers
–jc-create Loads configuration in all jobcontrol process
–jc-kill kill all running processes
–jc-destroy delete all jobcontrol configuration
–jc-start start all controled processes described in $DAQCONFIG json file variable|
|--jc-restart      |  restart one job with --jobname=name --jobpid=pid  --host=hostname|
|--jc-status       |  show the status all controled processes or of the  process specified in --name=PROC|
|--jc-info         |  show the status all controled processesof the host  specified in --host=Host|
|--jc-appcreate    |  Create all ZDAQ app on all hosts|
|--daq-create      |  Send the CREATE transition to the FDAQ process (i.e parameters loads of all controlled application)|
|--daq-discover    |  FDAQ scans controlled application and forward CREATE transition to all controlled processes|
|--daq-setparameters|  send the parameters described in $DAQCONFIG file to the DAQ
–daq-getparameters get the parameters described in $DAQCONFIG file to the DAQ
–daq-forceState force the sate name of the FDAQ with the –state option, ex –forceState –state=DISCOVERED
–daq-services Send INITIALISE/CONFIGURE transition to services application (MDCC,DB,BUILDER mainly)
–daq-state display DAQ state
–daq-initialise Initialise FDAQ, data source discovery and Builderfinal configuration
–daq-configure Configure FDAQ, front end ASICs configuration
–daq-startrun start the run –comment=“my comment”
–daq-stoprun stop the run
–daq-destroy destroy the readout, back to the PREPARED state
–daq-difstatus display DAQ status of all SDHCAL DIF
–daq-tdcstatus display DAQ status of all FEBCMS TDC
–daq-evbstatus display event builder status
–daq-dbstatus get current run and state from db
–daq-downloaddb download the dbsate specified in –dbstate=state
–dif-setgain change the gain of HARDROC2 and reconfigure chips with –gain=xxx
–dif-setthreshold change the threholds of HARDROC2 and reconfigure chips with –B0=xxx –B1=yyy –B2=zzz
–dif-ctrlreg set the SDHCAL DIF ctrlregister specified with –ctrlreg=register
–feb-resettdc Send Reset to all FEB TDC
–feb-calibdac Start a PETIROC calibdac run
–feb-scurve Start a PETIROC scurve run
–feb-setvth change the VTHTIME threshold of PETIROC2 andreconfigure chips with -vth=xxx
–feb-setmask change the MASK of PETIROC2 reconfigure chips with -mask=xxx
–feb-settdcmode change the trigger mode before starting the run with –value=1 (trigger Only)/0 (all)
–feb-settdcdelays change the PETIROC mode before starting the run with –active=1-255, –dead=1-255
–feb-lutcalib Calibrate –tdc=i –channel=k
–feb-lutdraw Calibrate –tdc=i –channel=k
–histo-draw Draw histo –name=histo
–trig-status display trigger (MDCC) counter status
–trig-reset reset trigger (MDCC) counter
–trig-pause trigger (MDCC) soft veto
–trig-resume release trigger (MDCC) soft veto
–ecal-pause (Obsolete) Ecal soft veto
–ecal-resume (Obsolete) release Ecal soft veto
–trig-spillon set spill nclock on with –clock=nc (20ns)
–trig-spilloff set spill nclock off with –clock=nc (20ns)
–trig-beam set beam length to nclock with –clock=nc (20ns)
–trig-spillregister set the value of the spill register (FEB CMS) (32/64 for beamtest or cosmic) –value=xx
–trig-calibon set the value of the calibon register (FEB calibration) –value=xx
–trig-calibcount set the value of the calibcount (FEB calibration) register –value=xx
–trig-rearm reload calib (FEB calibration)
–trig-hardreset send a hard reset to mezzanines
–trig-setregister set the value of the MDCC register –value=xx –address=yy
–trig-getregister get the value of the MDCC register –address=yy
–trig-tdcreset hard reset of TDC (FEB) counters
–slc-create Send a CREATE transition to FSLOW app (parsing of configuration)
–slc-initialise Send a INITIALISE transition to FSLOW (auto discovery and CREATE transition to all controlled apps)
–slc-configure Send a CONFIGURE transition to FSLOW (configuration of all controlled apps)
–slc-start Send a START transition to all monitorApplication controlled
–slc-stop Send a STOP transition to all monitorApplication controlled
–slc-lvon put Zup LV ON
–slc-lvoff put Zup LV OFF
–slc-lvstatus Dump LV status
–slc-hvstatus display hvstatus of all channel of the wiener crate
–slc-vset set the voltage V of channel i to k with –first=i –last=k –voltage=V
–slc-iset set the current limit I (microA) of channel i to k with –first=i –last=k –current=I
–slc-rampup set the ramp (V/S) of channel i to k with –first=i –last=k –ramp=r
–slc-hvon set the voltage ON of channel i to k with –first=i –last=k
–slc-hvoff set the voltage OFF of channel i to k with –first=i –last=k
–slc-clearalarm Clear alarm of channel i to k with –first=i –last=k
–slc-ptstatus display the P and T from the BMP183 readout
–slc-humstatus display the Humidity and T from the HIH8000 readout
–slc-ptcor display the needed voltage for –v0=v –p0=p (mbar) –t0=t (K)
parameters Description
–config CONFIG json config file
–socks SOCKPORT use SOCKS port
–dbstate DBSTATE set the dbstate
–ctrlreg CTRLREG set the Control register in hexa
–version show program's version number and exit
–state FSTATE set the Daq state
–clock CLOCK set the number of 20 ns clock
–directory DIRECTORY shm publisher directory
–vth VTH set the vth for chips
–mask MASK set the mask for chips
–gain GAIN set the gain for chips
–B0 B0 set the B0 for chips
–B1 B1 set the B1 for chips
–B2 B2 set the B2 for chips
–v0 V0 reference hv
–p0 P0 reference P
–t0 T0 reference T
–tdc TDC set the tdc process
–channel CHANNEL set the hvchannel
–first FIRST set the first hvchannel
–last LAST set the last hvchannel
–step STEP set the step of the calibration
–voltage VOLTAGE set the hv voltage
–current CURRENT set the hv current
–ramp RAMP set the hv ramp
–account ACCOUNT set the Slow Control mysql account
–period PERIOD set the temporistaion period (s)
–spillon SPILLON spill on
–spilloff SPILLOFF spilloff
–lines LINES set the number of lines to be dump
–host HOST host for log
–name NAME application name
–jobname JOBNAME job name
–jobpid JOBPID job pid
–value VALUE value to pass
–address ADDRESS address to pass
–active ACTIVE active time of Petiroc
–dead DEAD dead time of Petiroc
–asic ASIC asic header of Petiroc
–feb FEB FEB id
–dbversion DBVERSION DB state version
-v, –verbose Raw Json output
–comment COMMENT Comment for start run