Difference between revisions of "SBS DAQ: GEM EEL125 GENRP setup"

From Hall A Wiki
Jump to: navigation, search
(Created page with "== CODA scripts == These scripts are located in <code>$HOME/bin/</code> === Frontend scripts to use on hallavme12pc === ==== <code>startCoda</code> ==== * executes each CODA...")
 
m (CODA scripts)
Line 1: Line 1:
== CODA scripts ==
+
== coda_scripts ==
 
These scripts are located in  
 
These scripts are located in  
<code>$HOME/bin/</code>
+
<code>$HOME/coda_scripts/</code>
  
 
=== Frontend scripts to use on hallavme12pc ===
 
=== Frontend scripts to use on hallavme12pc ===
 
==== <code>startCoda</code> ====
 
==== <code>startCoda</code> ====
* executes each CODA component (platform, rcgui, PEB, all ROCs) in a separate xterm
+
* executes each CODA component (platform, rcgui, PEB, ER, all ROCs) in a separate xterm
 
==== <code>restartStuff</code> ====
 
==== <code>restartStuff</code> ====
 
* kills and restarts the PEB and ROCs.  The xterms are not killed with this script.
 
* kills and restarts the PEB and ROCs.  The xterms are not killed with this script.
Line 15: Line 15:
 
'''<code>remote_vme</code>'''
 
'''<code>remote_vme</code>'''
 
* script that restarts an ssh connection if it is closed.   
 
* script that restarts an ssh connection if it is closed.   
'''<code>PEB_hallavme12pc</code>'''  
+
'''<code>startPEB.sh</code>'''  
 
* script that launches '''coda_emu_peb'''.  restarts it when it is killed.
 
* script that launches '''coda_emu_peb'''.  restarts it when it is killed.
'''<code>ROC_hallavme14pc</code>'''  
+
'''<code>startER.sh</code>'''  
* script that uses '''remote_vme''' to launch '''SBS_startroc.sh''' on hallavme14pc
+
* script that launches '''coda_emu_er'''. restarts it when it is killed.
'''<code>ROC_sbsvme25</code>'''
+
'''<code>startROC.sh</code>'''  
* script that uses '''remote_vme''' to launch '''SBS_startroc.sh''' on sbsvme25
+
* script for sbsvme31, sbsvme24 that launches '''coda_roc''' with a ROC name determined from the coda_component_table.cfg
'''<code>SBS_startroc.sh</code>'''  
+
'''<code>startFPGA.sh</code>'''  
* script on sbsvme25, hallavme14pc that launches '''coda_roc''' with a ROC name determined from it's hostname.
+
* script on sbsvtp2, sbsvtp4 that launches '''coda_roc''' with a ROC name determined from the coda_component_table.cfg
 
'''<code>kill_remotes.sh</code>'''
 
'''<code>kill_remotes.sh</code>'''
* kills off '''ROC_hallavme14pc''', '''ROC_sbsvme25''', and '''coda_roc''' on hallavme14pc and sbsvme25.
+
* kills off '''startROC.sh''', '''startPEB.sh''', and '''startER.sh''' processes.
  
 
== Useful stand-alone programs ==
 
== Useful stand-alone programs ==

Revision as of 12:38, 29 October 2021

coda_scripts

These scripts are located in $HOME/coda_scripts/

Frontend scripts to use on hallavme12pc

startCoda

  • executes each CODA component (platform, rcgui, PEB, ER, all ROCs) in a separate xterm

restartStuff

  • kills and restarts the PEB and ROCs. The xterms are not killed with this script.

kcoda

  • kills all CODA components

Backend scripts, called by the frontend scripts

remote_vme

  • script that restarts an ssh connection if it is closed.

startPEB.sh

  • script that launches coda_emu_peb. restarts it when it is killed.

startER.sh

  • script that launches coda_emu_er. restarts it when it is killed.

startROC.sh

  • script for sbsvme31, sbsvme24 that launches coda_roc with a ROC name determined from the coda_component_table.cfg

startFPGA.sh

  • script on sbsvtp2, sbsvtp4 that launches coda_roc with a ROC name determined from the coda_component_table.cfg

kill_remotes.sh

  • kills off startROC.sh, startPEB.sh, and startER.sh processes.

Useful stand-alone programs

remex

$CODA/Linux-i686/bin/remex <remexHost> <function call>

  • Execute a function call on the specified remote Host
- Run without arguments for usage

tiLibTest

SBS-GEM-Cleanroom/linuxvme/ti/test/tiLibTest <TI slot number>

  • Test triggering capabilities of the local TI.
- Puts the local TI in master mode (with no slaves).
- Accepts triggers either from Front Panel TSinputs or Internal Random Pulser

i2c_test

SBS-GEM-Cleanroom/linuxvme/mpd/libsrc/test/i2c_test <mpd slot number>

  • Test the initialization and configuration of the APVs in the specified MPD.
- Does the same initialization that is done in mpd_list.c:rocDownload()
- Also attempts the readback of the APV registers with mpdApvStatus(0xffff)

vme_display

SBS-GEM-Cleanroom/linuxvme/bin/vme_display <VME Address> <read size in bytes>

  • Display the read value of specified size from the specified VME address.
- Run without arguments for usage

vme_modmem

SBS-GEM-Cleanroom/linuxvme/bin/vme_modmem <VME Address> <read/write size in bytes>

  • Modify the value of specified size of the specified VME address.
- Run without arguments for usage

mpdApvDecode

bryan/mpdApvDecode/mpdApvDecode -f <evio filename>

  • Decode the raw data from the MPDs/APVs
- Local compilation of JeffersonLab/mpdApvDecode
- Command-line options
-m N          set max event number to N
-s N          skip events until N
-e            show only errors
-f filename   set input to filename  
-o filename   redirect all output to filename
-C filename   use filename instead of decode.cfg for configuration

Extra packages installed

Machines in use

atedf3

  • NFS server, tftp server for VME Controllers
  • CODA and hardware drivers in /data/disk2/SBS/
  • Read-only permissions for all machines in 36 subnet
  • Read-Write permissions for hallavme12pc,sbsvme25

hallavme12pc

  • DAQ Computer (RunControl, Event Building)
  • Mount atedf3:/data/disk2/SBS to /mnt/SBS
- Uses autofs. /etc/auto.SBS should be included in a line in /etc/auto.master
Restart procedure if not mounted after reboot
Option 1: (preferred)
- logout of coda
- login as root
cp /etc/auto.master_SBS /etc/auto.master
service puppet stop
service autofs restart
- login normally as coda
Option 2:
- logout of coda
- login as root
mount atedf3:/data/disk2/SBS /mnt/SBS
- login normally as coda
  • Softlinks in /home/coda/SBS-GEM-Cleanroom
  • coda/ CODA (3.10)
  • linuxvme (in CODA 3.10 directory)
  • data (filename format: gem_cleanroom_<run number>.evio.<split number>

hallavme14pc

  • XVB601 VME Controller
  • 'daq' login
  • Slots 2-8, 10-16: MPDs
  • Slot 10: TI
  • Softlinks in /home/daq/SBS-GEM-Cleanroom

sbsvme25

  • XVB601 VME Controller
  • 'daq' login
  • Slots 2-8, 10-16: MPDs
  • Slot 21: TI
  • Softlinks in /home/daq/SBS-GEM-Cleanroom

Updated/Cloned New repos in coda/3.10/linuxvme

github links (team:coda-user):

Added /site remote with (e.g. jvme, devel branch)

 cd jvme
 git remote add site /site/coda/contrib/devel/jvme
 git pull site devel

CODA environment setup script

Using BASH, source the environment setup script:

source ~/SBS-GEM-Cleanroom/env/setupCODA

Stuff to finish

Replace hallavme12pc

  • Install OS
  • Use same mount scripts used on hallavme12pc
  • Use local storage for data.

Add SSP crate

  • Figure out it's hostname
  • Get it to boot just like the other ROCs
  • Check TI
  • Check SSP
  • Check MPD (for checking/debugging APVs)
  • Tell Ben we're ready to start connecting fiber from MPD to SSP

Log CODA runs to logbooks/superbigbite

  • check out code used by Hall A's CODA 2.x
  • from Alex:
- epicsRunstart
- epicsRunEnd
- runstart.tcl
- runend.tcl

Add scripts and GEM-cleanroom specific configuration files to a remote git repo

- .bashrc
- setupCODA
- ~/bin/*