TMO IOC Commands

Run on tmo-daq machine as user tmoopr:

  • kb mirror: /cds/group/pcds/epics/ioc/common/pgpWave8/latest/children/build/iocBoot/ioc-tmo-pgpw8-01/edm-ioc-tmo-pgpw8-01.cmd
  • kb mirror: /cds/group/pcds/epics/ioc/common/pgpWave8/latest/children/build/iocBoot/ioc-tmo-pgpw8-02/edm-ioc-tmo-pgpw8-02.cmd
  • laser: /cds/group/pcds/epics/ioc/las/pgpWave8/R1.1.0/build/iocBoot/ioc-las-ip1-pgpw8-04/edm-ioc-las-ip1-pgpw8-04.cmd

RIX IOC Commands

Run, for example, on rix-daq as user rixopr:

  • mr3k2: /cds/group/pcds/epics/ioc/common/pgpWave8/latest/children/build/iocBoot/ioc-rix-pgpw8-01/edm-ioc-rix-pgpw8-01.cmd
  • mr4k2: /cds/group/pcds/epics/ioc/common/pgpWave8/latest/children/build/iocBoot/ioc-rix-pgpw8-02/edm-ioc-rix-pgpw8-02.cmd
  • chemrix: /cds/group/pcds/epics/ioc/common/pgpWave8/latest/children/build/iocBoot/ioc-rix-pgpw8-03/edm-ioc-rix-pgpw8-03.cmd
  • laser: /cds/group/pcds/epics/ioc/las/pgpWave8/R1.1.0/build/iocBoot/ioc-las-crix-pgpw8-03/edm-ioc-las-crix-pgpw8-03.cmd

TXI IOC Commands

Run on txi-control as user txiopr:

  • /reg/g/pcds/epics/ioc/txi/pgpWave8/R1.0.0/build/iocBoot/ioc-txi-pgpw8-01/edm-ioc-txi-pgpw8-01.cmd

Power Cycling

When a Wave8/FIM is power cycled some constants needed to be loaded into registers that control the ADCs.  As of ioc/common/pgpWave8/R1.5.0, Jan 2022, an ADC Calibration is done automatically when the corresponding IOC is restarted.   There is also a "Recalibrate" button on the pgpWave8 edm screen that allows users to initiate an ADC Calibration cycle, shown here:

ADC Calibration using python

Although the IOC window is the preferred way to do the ADC calibration we also include the method for doing it with a python script.   The ssh to the appropriate machine can be done by anyone in the "ps-drp-users" permissions group.  The current fim-expert members of this group are: jjoshi, dakovski, nakahara, paheim.  Note that there is a "<lane>" parameter which must be set correctly in the "python" line below to select the appropriate box, and if there are more than one datadev boards you need to specify which one:

  • procmgr stop rix.cnf (on machine rix-daq, as user rixopr, shutdown the DAQ)
  • ssh <nodename> (determine the codename by looking at daq .cnf file)
  • cd ~cpo/git/wave8/software
  • source /cds/group/pcds/dist/pds/rix/scripts/setup_env.sh
  • python scripts/wave8DAQ.py --start_viewer 1 --l <lane> --dev /dev/datadev_0 --pollEn 1 --startupMode 1  (the <lane> parameter should be determined by looking at the "-l" parameter to the drp executable in the daq .cnf file.  in the .cnf it is a bit-mask and that must be converted into a lane number for use by this command.)
  • control-C (to exit)

This is sample output from the above python script, including the "AdcCalibration" step:

drp-neh-cmp007:~$ cd ~cpo/git/wave8/software/
drp-neh-cmp007:software$ source /cds/group/pcds/dist/pds/rix/scripts/setup_env.sh
(ps-4.5.5) drp-neh-cmp007:software$ python scripts/wave8DAQ.py --l 5 --pollEn 1 --startupMode 1
Rogue/pyrogue version v5.9.3. https://github.com/slaclab/rogue
/cds/home/c/cpo/git/wave8/software/python/wave8Viewer/_wave8Viewer.py:43: MatplotlibDeprecationWarning: 
The matplotlib.backends.backend_qt4agg backend was deprecated in Matplotlib 3.3 and will be removed two minor releases later.
  from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
Start: Started zmqServer on ports 9103-9105
###############################################################################
Path         = Top.AxiVersion
FwVersion    = 0x2010000
UpTime       = 22:26:48
GitHash      = 0x2f96a37e6cd85b7ae528c752e952bf7f1d19606f
XilinxDnaId  = 0x3855407bb8c854
FwTarget     = Wave8DigitizerPgp4_6Gbps
BuildEnv     = Vivado v2020.1
BuildServer  = rdsrv314 (Ubuntu 20.04.2 LTS)
BuildDate    = Thu 01 Jul 2021 03:18:34 PM PDT
Builder      = ruckman
###############################################################################
AdcCalibration()...
AdcInit()...
ConfigLclsTimingV2()
Loading ['/cds/home/c/cpo/git/wave8/software/config/defaults_LCLS-II.yml', '/cds/home/c/cpo/git/wave8/software/config/defaults.yml'] Configuration File...
Top.StartRun() executed
Top.AxiVersion count reset called
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
ZmqClient::setTimeout: Setting timeout to 1000 msecs, waitRetry = 1
Connected to Top at localhost:9103
Running GUI. Close window, hit cntrl-c or send SIGTERM to 401432 to exit.
^C
(ps-4.5.5) drp-neh-cmp007:software$ 

After this is done restart the IOC.



  • No labels