From 53b8eca79d690d48ef3178f8e172068eea3c5e37 Mon Sep 17 00:00:00 2001 From: Hadaq Hades Date: Fri, 11 May 2018 14:42:10 +0200 Subject: [PATCH] add concentrator addresses file --- control/gui/monitor/30_Epics_EB | 4 +- evtbuild/eb_bnet_ltsm.conf | 28 +- evtbuild/start_eb_gbe.pl | 1928 +++++++++++++++++++++++- evtbuild/start_eb_gbe.sh | 2 +- evtbuild/start_eb_iocs.sh | 3 +- hub/register_configgbe_2018.db | 12 +- hub/register_configgbe_ip.db | 2 +- hub/register_configgbe_ip_2018.db | 267 ++-- mdc/addresses_oep.db | 9 +- rich/addresses_concentrator.db | 1 + rpc/utilities/remTestSignalS1L.sh | 4 - rpc/utilities/remTestSignalS2L.sh | 4 - rpc/utilities/remTestSignalS3L.sh | 4 - rpc/utilities/remTestSignalS4L.sh | 4 - rpc/utilities/remTestSignalS5L.sh | 4 - rpc/utilities/remTestSignalS6L.sh | 4 - rpc/utilities/remTestSignalSX.sh | 6 - rpc/utilities/remTestSignalSXL.sh | 6 - rpc/utilities/setTestSignalS1L.sh | 4 - rpc/utilities/setTestSignalS2L.sh | 4 - rpc/utilities/setTestSignalS3L.sh | 4 - rpc/utilities/setTestSignalS4L.sh | 4 - rpc/utilities/setTestSignalS5L.sh | 4 - rpc/utilities/setTestSignalS5R.sh | 4 - rpc/utilities/setTestSignalS6L.sh | 4 - rpc/utilities/setTestSignalSX.sh | 6 - rpc/utilities/setTestSignalSXL.sh | 6 - rpc/utilities/setThresholdsAllFFFF.sh | 6 - rpc/utilities/setThresholdsAll_b.sh | 6 - rpc/utilities/setThresholdsAll_c.sh | 6 - rpc/utilities/setThresholdsS1.sh | 4 +- rpc/utilities/setThresholdsS1ToFFFF.sh | 4 - rpc/utilities/setThresholdsS1_b.sh | 4 - rpc/utilities/setThresholdsS1_c.sh | 4 - rpc/utilities/setThresholdsS1_d.sh | 4 - rpc/utilities/setThresholdsS2.sh | 2 +- rpc/utilities/setThresholdsS2ToFFFF.sh | 4 - rpc/utilities/setThresholdsS2_b.sh | 4 - rpc/utilities/setThresholdsS2_c.sh | 4 - rpc/utilities/setThresholdsS2_d.sh | 4 - rpc/utilities/setThresholdsS3ToFFFF.sh | 4 - rpc/utilities/setThresholdsS3_b.sh | 4 - rpc/utilities/setThresholdsS3_c.sh | 4 - rpc/utilities/setThresholdsS3_d.sh | 4 - rpc/utilities/setThresholdsS4.sh | 8 +- rpc/utilities/setThresholdsS4ToFFFF.sh | 4 - rpc/utilities/setThresholdsS4_b.sh | 4 - rpc/utilities/setThresholdsS4_c.sh | 4 - rpc/utilities/setThresholdsS4_d.sh | 4 - rpc/utilities/setThresholdsS5.sh | 2 +- rpc/utilities/setThresholdsS5ToFFFF.sh | 4 - rpc/utilities/setThresholdsS5_b.sh | 4 - rpc/utilities/setThresholdsS5_c.sh | 4 - rpc/utilities/setThresholdsS5_d.sh | 4 - rpc/utilities/setThresholdsS6.sh | 8 +- rpc/utilities/setThresholdsS6ToFFFF.sh | 4 - rpc/utilities/setThresholdsS6_b.sh | 4 - rpc/utilities/setThresholdsS6_c.sh | 4 - rpc/utilities/setThresholdsS6_d.sh | 4 - rpc/utilities/setTriggerBoardS1.sh | 1 - rpc/utilities/setTriggerBoardS2.sh | 1 - rpc/utilities/setTriggerBoardS3.sh | 1 - rpc/utilities/setTriggerBoardS4.sh | 1 - rpc/utilities/setTriggerBoardS5.sh | 1 - rpc/utilities/setTriggerBoardS6.sh | 1 - rpc/utilities/setTriggerBoardSX.sh | 6 +- 66 files changed, 2113 insertions(+), 369 deletions(-) mode change 120000 => 100755 evtbuild/start_eb_gbe.pl create mode 120000 rich/addresses_concentrator.db delete mode 100755 rpc/utilities/remTestSignalS1L.sh delete mode 100755 rpc/utilities/remTestSignalS2L.sh delete mode 100755 rpc/utilities/remTestSignalS3L.sh delete mode 100755 rpc/utilities/remTestSignalS4L.sh delete mode 100755 rpc/utilities/remTestSignalS5L.sh delete mode 100755 rpc/utilities/remTestSignalS6L.sh delete mode 100755 rpc/utilities/remTestSignalSX.sh delete mode 100644 rpc/utilities/remTestSignalSXL.sh delete mode 100755 rpc/utilities/setTestSignalS1L.sh delete mode 100755 rpc/utilities/setTestSignalS2L.sh delete mode 100755 rpc/utilities/setTestSignalS3L.sh delete mode 100755 rpc/utilities/setTestSignalS4L.sh delete mode 100755 rpc/utilities/setTestSignalS5L.sh delete mode 100755 rpc/utilities/setTestSignalS5R.sh delete mode 100755 rpc/utilities/setTestSignalS6L.sh delete mode 100755 rpc/utilities/setTestSignalSX.sh delete mode 100644 rpc/utilities/setTestSignalSXL.sh delete mode 100755 rpc/utilities/setThresholdsAllFFFF.sh delete mode 100755 rpc/utilities/setThresholdsAll_b.sh delete mode 100755 rpc/utilities/setThresholdsAll_c.sh delete mode 100755 rpc/utilities/setThresholdsS1ToFFFF.sh delete mode 100755 rpc/utilities/setThresholdsS1_b.sh delete mode 100755 rpc/utilities/setThresholdsS1_c.sh delete mode 100755 rpc/utilities/setThresholdsS1_d.sh delete mode 100755 rpc/utilities/setThresholdsS2ToFFFF.sh delete mode 100755 rpc/utilities/setThresholdsS2_b.sh delete mode 100755 rpc/utilities/setThresholdsS2_c.sh delete mode 100755 rpc/utilities/setThresholdsS2_d.sh delete mode 100755 rpc/utilities/setThresholdsS3ToFFFF.sh delete mode 100755 rpc/utilities/setThresholdsS3_b.sh delete mode 100755 rpc/utilities/setThresholdsS3_c.sh delete mode 100755 rpc/utilities/setThresholdsS3_d.sh delete mode 100755 rpc/utilities/setThresholdsS4ToFFFF.sh delete mode 100755 rpc/utilities/setThresholdsS4_b.sh delete mode 100755 rpc/utilities/setThresholdsS4_c.sh delete mode 100755 rpc/utilities/setThresholdsS4_d.sh delete mode 100755 rpc/utilities/setThresholdsS5ToFFFF.sh delete mode 100755 rpc/utilities/setThresholdsS5_b.sh delete mode 100755 rpc/utilities/setThresholdsS5_c.sh delete mode 100755 rpc/utilities/setThresholdsS5_d.sh delete mode 100755 rpc/utilities/setThresholdsS6ToFFFF.sh delete mode 100755 rpc/utilities/setThresholdsS6_b.sh delete mode 100755 rpc/utilities/setThresholdsS6_c.sh delete mode 100755 rpc/utilities/setThresholdsS6_d.sh delete mode 100755 rpc/utilities/setTriggerBoardS1.sh delete mode 100755 rpc/utilities/setTriggerBoardS2.sh delete mode 100755 rpc/utilities/setTriggerBoardS3.sh delete mode 100755 rpc/utilities/setTriggerBoardS4.sh delete mode 100755 rpc/utilities/setTriggerBoardS5.sh delete mode 100755 rpc/utilities/setTriggerBoardS6.sh diff --git a/control/gui/monitor/30_Epics_EB b/control/gui/monitor/30_Epics_EB index cebc553..315b7f1 100755 --- a/control/gui/monitor/30_Epics_EB +++ b/control/gui/monitor/30_Epics_EB @@ -1,4 +1,6 @@ #!/bin/bash -ssh -X scs@lxhadeb06 'export EPICS_CA_ADDR_LIST="192.168.111.255 192.168.111.255:10012 192.168.111.255:10008 192.168.111.255:10003 192.168.111.255:10002 192.168.111.255:10001 192.168.111.255:10014 192.168.111.255:10007 192.168.111.255:10004 192.168.111.255:10010 192.168.111.255:10013 192.168.111.255:10015 192.168.111.255:10016 192.168.111.255:10009 192.168.111.255:10005 192.168.111.255:10011 192.168.111.255:10006" ; export EPICS_CA_AUTO_ADDR_LIST=NO; /home/epics/EPICS/EPICS-3.14.12.4/extensions/bin/linux-x86_64/medm -x -macro "SUBSYSNUM=24" ~/operator/ebmainctrl.adl' +#ssh -X scs@lxhadeb06 'export EPICS_CA_ADDR_LIST="192.168.111.255 192.168.111.255:10012 192.168.111.255:10008 192.168.111.255:10003 192.168.111.255:10002 192.168.111.255:10001 192.168.111.255:10014 192.168.111.255:10007 192.168.111.255:10004 192.168.111.255:10010 192.168.111.255:10013 192.168.111.255:10015 192.168.111.255:10016 192.168.111.255:10009 192.168.111.255:10005 192.168.111.255:10011 192.168.111.255:10006" ; export EPICS_CA_AUTO_ADDR_LIST=NO; /home/epics/EPICS/EPICS-3.14.12.4/extensions/bin/linux-x86_64/medm -x -macro "SUBSYSNUM=24" ~/operator/ebmainctrl.adl' + +ssh -X scs@lxhadeb06 'export EPICS_CA_ADDR_LIST="192.168.111.255 192.168.111.255:10007 192.168.111.255:10012 192.168.111.255:10004 192.168.111.255:10008 192.168.111.255:10010 192.168.111.255:10003 192.168.111.255:10013 192.168.111.255:10015 192.168.111.255:10009 192.168.111.255:10005 192.168.111.255:10002 192.168.111.255:10001 192.168.111.255:10011 192.168.111.255:10014 192.168.111.255:10006" ; export EPICS_CA_AUTO_ADDR_LIST=NO; /home/epics/EPICS/EPICS-3.14.12.4/extensions/bin/linux-x86_64/medm -x -macro "SUBSYSNUM=24" ~/operator/ebmainctrl.adl' #export EPICS_CA_ADDR_LIST=192.168.111.255; export EPICS_CA_AUTO_ADDR_LIST=NO; /home/epics/EPICS/EPICS-3.14.12.4/extensions/bin/linux-x86_64/medm -x -macro "SUBSYSNUM=24" /home/scs/operator/ebmainctrl.adl & diff --git a/evtbuild/eb_bnet_ltsm.conf b/evtbuild/eb_bnet_ltsm.conf index c77202b..2714cd1 100644 --- a/evtbuild/eb_bnet_ltsm.conf +++ b/evtbuild/eb_bnet_ltsm.conf @@ -20,7 +20,7 @@ EB_OUTDEV: null EB_EXT: te # file size in MBytes -EB_FSIZE: 500 +EB_FSIZE: 1500 EB_EVTID: 1 SHMEMNAME: test @@ -70,13 +70,13 @@ QUEUESIZE: 32 BNETINP: 0 0 0 0 #BNETINP: 1 1 1 1 #BNETINP: 2 2 2 2 -BNETBLD: 2 2 2 2 +#BNETBLD: 2 2 2 2 #BNETBLD: 3 3 3 3 -#BNETBLD: 1 1 1 1 +BNETBLD: 1 1 1 1 # EB Nr 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #EB_LIST: 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 -EB_LIST: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +EB_LIST: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 # Switch to DABC mode (on=1/off=0) for 16 EB processes # EB Nr 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 @@ -84,7 +84,7 @@ EB_LIST: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 #DABC: 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 #DABC: 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 #DABC: 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -DABC: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +DABC: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 #DABC: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 # Switch multiple disk ctrl via daq_disks (1=on,0=off) @@ -104,7 +104,7 @@ EB_DEBUG: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 # Switch (on=1/off=0) EPICS Control of EB processes # IOC Master is by default the IOC for EB process 1 -EPICS_CTRL: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +EPICS_CTRL: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 # RFIO switch (on=1/off=0) for 16 EB processes # EB Nr 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 @@ -130,23 +130,21 @@ RFIO_iPathConvention: 0 # LTSM switch (on=1/off=0) for 16 EB processes # note: for bnet mode, only flag of EB15 is used! # EB Nr 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 -#LTSM: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +#LTSM: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 LTSM: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 #LTSM: 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 # LTSM default options for all EB processes -LTSM_PATH: /lustre/hebe/hades/jan18test/default -#LTSM_PATH: /home/hadaq/raw/jun17/default -#LTSM_PATH: /home/hadaq/raw/jun17/default +LTSM_PATH: /lustre/hebe/hades/raw/jan18test/default/tsm #LTSM_Server: lxltsm01-tsm-server LTSM_Server: lxltsm01-8t #LTSM_Node: LTSM_TEST01 #LTSM_Passwd: LTSM_TEST01 -LTSM_Node: hades8t -LTSM_Passwd: hades8t +LTSM_Node: hadestest +LTSM_Passwd: hadestest LTSM_Filesystem: /lustre/hebe @@ -194,7 +192,7 @@ MULTIDISK: 1 ONLINESERVER: on -OUTDIR: /data10/data/ +OUTDIR: /data01/data/ RESDOWNSCALE: 20 RESNUMEVENTS: 2000 @@ -214,14 +212,14 @@ OUTDIR: /data10/data/ #---------------------------------------------- [EB_PROC_4] -OUTDIR: /data10/data/ +OUTDIR: /data01/data/ MULTIDISK: 5 #---------------------------------------------- [EB_PROC_5] -OUTDIR: /data02/data/ +OUTDIR: /data01/data/ MULTIDISK: 2 #---------------------------------------------- [EB_PROC_6] diff --git a/evtbuild/start_eb_gbe.pl b/evtbuild/start_eb_gbe.pl deleted file mode 120000 index b43afde..0000000 --- a/evtbuild/start_eb_gbe.pl +++ /dev/null @@ -1 +0,0 @@ -start_eb_gbe_bnet_ltsm.pl \ No newline at end of file diff --git a/evtbuild/start_eb_gbe.pl b/evtbuild/start_eb_gbe.pl new file mode 100755 index 0000000..3d35a07 --- /dev/null +++ b/evtbuild/start_eb_gbe.pl @@ -0,0 +1,1927 @@ +#!/usr/bin/perl -w + +use English; +use strict; +use Getopt::Long; +use Data::Dumper; +use Config::Std; +use FileHandle; +use List::MoreUtils qw(any apply first_index); +use File::Basename; +use Cwd; + +#- Copy all the arguments because +# later on the @ARGV becomes empty +my @arg_list = @ARGV; + +#- the command line option flags +my $opt_help = 0; +my $opt_ebconf = "/home/hadaq/trbsoft/hadesdaq/evtbuild/eb.conf"; +my $opt_ioc = ""; +my $opt_test = 0; +my $opt_verb = 0; +my $opt_eb = ""; +my @opt_ebrange = (); +my $opt_rfio = 'undef'; +my $opt_disk = 'undef'; +my $opt_online = 'undef'; +my $opt_prefix; + +GetOptions ('h|help' => \$opt_help, + 'c|conf=s' => \$opt_ebconf, + 'e|eb=s' => \$opt_eb, + 'i|ioc=s' => \$opt_ioc, + 't|test' => \$opt_test, + 'n|nr=s' => \@opt_ebrange, + 'd|disk=s' => \$opt_disk, + 'r|rfio=s' => \$opt_rfio, + 'p|prefix=s' => \$opt_prefix, + 'o|online=s' => \$opt_online, + 'v|verb' => \$opt_verb); + +if( $opt_help ) { + &help(); + exit(0); +} + +#- List of EBs provided via command line options +my $active_EBs_aref = &setArgs(); + +#- Hash with status of CPU cores of EBs (used for 'taskset') +my %EB_CPU_status; +my $EB_CPU_status_href = \%EB_CPU_status; +&init_CPU_status($EB_CPU_status_href); + +my $expect_ioc_script = "/tmp/ioc_exit.exp"; +my $log_path = "/tmp/log"; +my %temp_args; +my $temp_args_href = \%temp_args; +read_config $opt_ebconf => %$temp_args_href; +#print Dumper $temp_args_href; +#exit; + +my %IP_GSI_lookup = ( + '192.168.100.15' => '140.181.66.160', + '192.168.100.12' => '140.181.76.94', + '192.168.100.13' => '140.181.91.154', + '192.168.100.14' => '140.181.88.20', + '192.168.100.8' => '140.181.80.62', + '192.168.100.9' => '140.181.80.64', + '192.168.100.10' => '140.181.80.68' + ); + +my $IP_GSI_href = \%IP_GSI_lookup; + + +my $numOfEBProcs = 0; +my %EB_Args; +my $EB_Args_href = \%EB_Args; + +my @EB_IP_list; + + + +&getEBArgs( $EB_Args_href ); + +if($opt_ioc eq "start"){ + &killIOC(); + &startIOC(); +} +elsif($opt_ioc eq "stop"){ + &killIOC(); +} +elsif($opt_eb eq "start"){ + &writeArgs2file(); + &startEvtBuilders(); +} +elsif($opt_eb eq "stop"){ + &stopEvtBuilders(); +} +elsif($opt_eb eq "restart"){ + &stopEvtBuilders(); + sleep 1; + &writeArgs2file(); + &startEvtBuilders(); +} + +exit(0); + +################### END OF MAIN #################### + +sub help() +{ + print "\n"; + print << 'EOF'; +start_eb_gbe.pl + + This script starts parallel Event Building processes. + The script also starts IOC processes for the run control. + +Usage: + + Command line: start_eb_gbe.pl + [-h|--help] : Show this help. + [-c|--conf ] : Path to the config file (default: ../evtbuild/eb.conf). + [-e|--eb ] : Start or stop Event Builders (default: start). + [-i|--ioc ] : Start or stop IOCs (default: start). + [-n|--nr ] : Range of numbers of Event Bulders to be started. + [-d|--disk ] : Switch writing to disk on|off. + [-r|--rfio ] : Switch writing to tape on|off. + [-p|--prefix ] : Prefix of hld file. + [-o|--online ] : Switch RPC server on|off. + [-t|--test] : Test without execution. + [-v|--verb] : More verbouse. + +Examples: + + Start 6 EBs with the numbers 1,2,3,5,7 and prefix 'md': + start_eb_gbe.pl -e start -n 1-3 -n 5 -n 7 -p md + + Start EBs and enable writing to disks but disable writing to tape for all EBs: + start_eb_gbe.pl -e start --disk on --rfio off + +EOF +} + +sub init_CPU_status() +{ + my ($EB_CPU_status_href) = @_; + + # CPU affinity with 'taskset' + # + # CPU dec bin hex + # 0 1 1 + # 1 10 2 + # 2 100 4 + # 3 1000 8 + # 4 10000 10 + + #cores 0/1 reserved for system 02-05 + #cores 2/3 reserved for interrupts on 02-05 + +#lxhadeb01 is gone +# foreach my $core (0..7){ +# if($core == 1){ +# $EB_CPU_status_href->{'192.168.100.11'}->{$core} = "res"; #reserved +# } +# else{ +# $EB_CPU_status_href->{'192.168.100.11'}->{$core} = "free"; +# } +# } + +#JAM adjust this to actual affinities for eth0 settings TODO +# eth0 interrupts are above core 8 now +# +# +# foreach my $core (0..11){ +# if(($core < 2) || ($core> 8 ) ){ +# $EB_CPU_status_href->{'192.168.100.12'}->{$core} = "res"; #reserved +# $EB_CPU_status_href->{'192.168.100.13'}->{$core} = "res"; #reserved +# $EB_CPU_status_href->{'192.168.100.14'}->{$core} = "res"; #reserved +# } +# else{ +# $EB_CPU_status_href->{'192.168.100.12'}->{$core} = "free"; +# $EB_CPU_status_href->{'192.168.100.13'}->{$core} = "free"; +# $EB_CPU_status_href->{'192.168.100.14'}->{$core} = "free"; +# } +# } +# +## after upgrade to debian 7: ethernet reserved cores are below 6 + foreach my $core (0..11){ + if(($core < 6) ){ + $EB_CPU_status_href->{'192.168.100.12'}->{$core} = "res"; #reserved + $EB_CPU_status_href->{'192.168.100.13'}->{$core} = "res"; #reserved + $EB_CPU_status_href->{'192.168.100.14'}->{$core} = "res"; #reserved + } + else{ + $EB_CPU_status_href->{'192.168.100.12'}->{$core} = "free"; + $EB_CPU_status_href->{'192.168.100.13'}->{$core} = "free"; + $EB_CPU_status_href->{'192.168.100.14'}->{$core} = "free"; + + } + } + +# eth0 ir is set above core 11 + foreach my $core (0..23){ + if( ($core < 2) ||( $core > 11) ){ + $EB_CPU_status_href->{'192.168.100.15'}->{$core} = "res"; #reserved + } + else{ + $EB_CPU_status_href->{'192.168.100.15'}->{$core} = "free"; + } + } + + # add cores for new EB servers JAM2018 + foreach my $core (0..63){ + if( ($core < 2) ||( $core > 60) ){ + $EB_CPU_status_href->{'192.168.100.8'}->{$core} = "res"; #reserved + $EB_CPU_status_href->{'192.168.100.9'}->{$core} = "res"; #reserved + $EB_CPU_status_href->{'192.168.100.10'}->{$core} = "res"; #reserved + } + else{ + $EB_CPU_status_href->{'192.168.100.8'}->{$core} = "free"; + $EB_CPU_status_href->{'192.168.100.9'}->{$core} = "free"; + $EB_CPU_status_href->{'192.168.100.10'}->{$core} = "free"; + } + } + +} + +sub getCoreNr() +{ + my ($ip) = @_; + + my $core_nr; + + foreach my $eb_ip (sort keys %$EB_CPU_status_href){ + next unless($ip eq $eb_ip); + + foreach my $core ( sort {$a <=> $b} keys %{$EB_CPU_status_href->{$eb_ip}} ){ + my $core_status = $EB_CPU_status_href->{$eb_ip}->{$core}; + + next unless(lc($core_status) eq "free"); + + $core_nr = $core; + $EB_CPU_status_href->{$eb_ip}->{$core} = "busy"; + last; + } + } + + #- If no free cores left - take reserved cores + unless( defined $core_nr ){ + foreach my $eb_ip (sort keys %$EB_CPU_status_href){ + next unless($ip eq $eb_ip); + + foreach my $core ( sort {$a <=> $b} keys %{$EB_CPU_status_href->{$eb_ip}} ){ + my $core_status = $EB_CPU_status_href->{$eb_ip}->{$core}; + + if(lc($core_status) eq "res"){ + $core_nr = $core; + $EB_CPU_status_href->{$eb_ip}->{$core} = "busy"; + last; + } + } + } + } + + unless( defined $core_nr ){ + print "No free cores left on CPU $ip. Exit.\n"; + exit(0); + } + + return $core_nr; +} + +sub setArgs() +{ + my @active_EBs; + + if(@opt_ebrange){ + foreach my $range (@opt_ebrange){ + if($range =~ /(\d+)-(\d+)/){ + my $max = $1; + my $min = $2; + + foreach my $eb ($max..$min){ + #- 1 must be subtracted to match + # EB numbering in the register_configgbe_ip.db + # which starts from zero + &checkEB_nr($eb); + push(@active_EBs, $eb-1); + } + } + elsif($range =~ /(\d+)/){ + &checkEB_nr($1); + push(@active_EBs, $1-1); + } + } + } + + return \@active_EBs; +} + +sub checkEB_nr() +{ + my ($eb_nr) = @_; + + if( $eb_nr < 1 || $eb_nr > 16 ){ + print "ERROR: EB number should be in the range 1-16. Exit."; + exit(0); + } +} + +sub getEBArgs() +{ + my ($href) = @_; + + my $prefix = $temp_args_href->{'Main'}->{'EB_EXT'}; + $prefix = $opt_prefix if( defined $opt_prefix ); + my $filesize = $temp_args_href->{'Main'}->{'EB_FSIZE'}; + + my $base_port = $temp_args_href->{'Parallel'}->{'BASE_PORT'}; + my $shift_port = $temp_args_href->{'Parallel'}->{'SHIFT_PORT'}; + my $source_num = $temp_args_href->{'Parallel'}->{'NUM_OF_SOURCES'}; + my $queuesize = $temp_args_href->{'Parallel'}->{'QUEUESIZE'}; + + my $multidisk = $temp_args_href->{'Parallel'}->{'MULTIDISK'}; + + #- Number of EB process + my $ebproc = 0; + + #- List of BEs + my $listOfEBs = $temp_args_href->{'Parallel'}->{'EB_LIST'}; + my @eb_list = split(/\s+/, $listOfEBs); + + #- DABC mode selection + my $listOfDABC = $temp_args_href->{'Parallel'}->{'DABC'}; + my @dabc_list = split(/\s+/, $listOfDABC); + + + # BNET setup: + my $listOfBnetInputs = $temp_args_href->{'Parallel'}->{'BNETINP'}; + my @bnet_in_list = split(/\s+/, $listOfBnetInputs); + + my $listOfBnetBuilders = $temp_args_href->{'Parallel'}->{'BNETBLD'}; + my @bnet_bld_list = split(/\s+/, $listOfBnetBuilders); + + + #- Default RFIO settings + my $rfio = $temp_args_href->{'Parallel'}->{'RFIO'}; + my $rfio_path = $temp_args_href->{'Parallel'}->{'RFIO_PATH'}; + my $rfio_pcOptions = $temp_args_href->{'Parallel'}->{'RFIO_pcOptions'}; + my $rfio_iCopyMode = $temp_args_href->{'Parallel'}->{'RFIO_iCopyMode'}; + my $rfio_pcCopyPath = $temp_args_href->{'Parallel'}->{'RFIO_pcCopyPath'}; + my $rfio_iCopyFrac = $temp_args_href->{'Parallel'}->{'RFIO_iCopyFraction'}; + my $rfio_iMaxFile = $temp_args_href->{'Parallel'}->{'RFIO_iMaxFile'}; + my $rfio_iPathConv = $temp_args_href->{'Parallel'}->{'RFIO_iPathConvention'}; + + my @rfio_list = split(/\s+/, $rfio); + + + + #- LTSM settings + my $listOfLTSM = $temp_args_href->{'Parallel'}->{'LTSM'}; + my @ltsm_list = split(/\s+/, $listOfLTSM); + + my $ltsm_path = $temp_args_href->{'Parallel'}->{'LTSM_PATH'}; + my $ltsm_server = $temp_args_href->{'Parallel'}->{'LTSM_Server'}; + my $ltsm_node = $temp_args_href->{'Parallel'}->{'LTSM_Node'}; + my $ltsm_passwd = $temp_args_href->{'Parallel'}->{'LTSM_Passwd'}; + my $ltsm_filesys = $temp_args_href->{'Parallel'}->{'LTSM_Filesystem'}; + + + + + #- EPICS Controled + my $epics_ctrl = $temp_args_href->{'Parallel'}->{'EPICS_CTRL'}; + + my @epics_list = split(/\s+/, $epics_ctrl); + + #- Logging the output of EBs + my $eb_log = $temp_args_href->{'Parallel'}->{'EB_LOG'}; + my $eb_debug = $temp_args_href->{'Parallel'}->{'EB_DEBUG'}; + my $nm_log = $temp_args_href->{'Parallel'}->{'NM_LOG'}; + my @eblog_list = split(/\s+/, $eb_log); + my @ebdbg_list = split(/\s+/, $eb_debug); + my @nmlog_list = split(/\s+/, $nm_log); + + + #- Write to disk + my $write2disk = $temp_args_href->{'Parallel'}->{'WRITE_TO_DISK'}; + my @write2disk_list = split(/\s+/, $write2disk); + + #--- Read GbE configuration + my %eb_ids_gbe_hash; + my $eb_ids_gbe_href = \%eb_ids_gbe_hash; + + &getGbEconfig($eb_ids_gbe_href); + + #--- Loop over all EB processes + #print Dumper $eb_ids_gbe_href; + #exit; + foreach my $ebproc ( sort keys %{$eb_ids_gbe_href} ){ + + #- If there was a list of EBs provided via command line options + # go to the next $ebproc if the current $ebproc is not in this list. + #print "active EBs:\n"; + #print Dumper $active_EBs_aref; + + if(@$active_EBs_aref){ + next unless( any {$_ == $ebproc} @$active_EBs_aref ); #from command line args + } + else{ + next unless( $eb_list[$ebproc] ); #from eb.conf + } + + + my $eb_ip = $eb_ids_gbe_href->{$ebproc}->{'IP'}; + + #- Save IP needed by other function to stop EBs. + push(@EB_IP_list, $eb_ip) unless( any {$_ eq $eb_ip} @EB_IP_list ); + + #- Some checks on number of EB processes + die "Number of EB processes exceeds the number in RFIO setting! Exit." if($ebproc > $#rfio_list); + die "Number of EB processes exceeds the number in EPICS_CTRL setting! Exit." if($ebproc > $#epics_list); + + #- Here we can overwrite default rfio settings with individual settings per EB processes + my $procname = sprintf("EB_PROC_%d", 1+$ebproc); + # $rfio_iCopyMode = $temp_args_href->{$procname}->{'RFIO_iCopyMode'}; + + $href->{$ebproc}->{'IP'} = $eb_ip; + $href->{$ebproc}->{'EBNUM'} = $ebproc+1; + $href->{$ebproc}->{'BASEPORT'} = $base_port; + $href->{$ebproc}->{'PORT_LIST'} = $eb_ids_gbe_href->{$ebproc}->{'port_list'}; + $href->{$ebproc}->{'SOURCENUM'} = scalar @{$eb_ids_gbe_href->{$ebproc}->{'port_list'}}; + + # JAM2016: bnet requieres udp destination nodes in a list like the ports: + $href->{$ebproc}->{'IP_LIST'} = $eb_ids_gbe_href->{$ebproc}->{'ip_list'}; + + # JAM2018: bnet requieres calibration modes in a list like the ports: + $href->{$ebproc}->{'CALIB_LIST'} = $eb_ids_gbe_href->{$ebproc}->{'calib_list'}; + + # JAM2018: bnet requieres hub addresses/subevents in a list like the ports: + $href->{$ebproc}->{'HUB_LIST'} = $eb_ids_gbe_href->{$ebproc}->{'addr_list'}; + + + $href->{$ebproc}->{'BUFSIZE_LIST'} = $eb_ids_gbe_href->{$ebproc}->{'bufsize_list'}; + $href->{$ebproc}->{'PREFIX'} = $prefix; + $href->{$ebproc}->{'QUEUESIZE'} = $queuesize; + $href->{$ebproc}->{'MULTIDISK'} = $multidisk; + $href->{$ebproc}->{'FILESIZE'} = $filesize; + + if( defined $temp_args_href->{$procname}->{'MULTIDISK'} ){ + $href->{$ebproc}->{'MULTIDISK'} = $temp_args_href->{$procname}->{'MULTIDISK'}; + } + elsif($multidisk){ + $href->{$ebproc}->{'MULTIDISK'} = $href->{$ebproc}->{'EBNUM'}; + } + else{ + $href->{$ebproc}->{'MULTIDISK'} = $multidisk; + } + + if( defined $temp_args_href->{$procname}->{'RESDOWNSCALE'} ){ + $href->{$ebproc}->{'RESDOWNSCALE'} = $temp_args_href->{$procname}->{'RESDOWNSCALE'}; + $href->{$ebproc}->{'RESNUMEVENTS'} = $temp_args_href->{$procname}->{'RESNUMEVENTS'}; + $href->{$ebproc}->{'RESPATH'} = $temp_args_href->{$procname}->{'RESPATH'}; + $href->{$ebproc}->{'RESSIZELIMIT'} = $temp_args_href->{$procname}->{'RESSIZELIMIT'}; + } + + if( defined $temp_args_href->{$procname}->{'ONLINESERVER'} ){ + if($opt_online eq "on"){ + $href->{$ebproc}->{'ONLINESERVER'} = "on"; + } + elsif($opt_online eq "off"){ + $href->{$ebproc}->{'ONLINESERVER'} = "off"; + } + else{ + $href->{$ebproc}->{'ONLINESERVER'} = $temp_args_href->{$procname}->{'ONLINESERVER'}; + } + } + else{ + $href->{$ebproc}->{'ONLINESERVER'} = "off"; + } + + $href->{$ebproc}->{'RFIO'} = $rfio_list[$ebproc] if(lc($opt_rfio) eq 'undef'); # 0|1 + $href->{$ebproc}->{'RFIO'} = 1 if(lc($opt_rfio) eq 'on'); # 0|1 + $href->{$ebproc}->{'RFIO'} = 0 if(lc($opt_rfio) eq 'off'); # 0|1 + $href->{$ebproc}->{'RFIO_PATH'} = $rfio_path; + $href->{$ebproc}->{'RFIO_pcOptions'} = $rfio_pcOptions; + $href->{$ebproc}->{'RFIO_iCopyMode'} = $rfio_iCopyMode; + $href->{$ebproc}->{'RFIO_pcCopyPath'} = $rfio_pcCopyPath; + $href->{$ebproc}->{'RFIO_iCopyFrac'} = $rfio_iCopyFrac; + $href->{$ebproc}->{'RFIO_iMaxFile'} = $rfio_iMaxFile; + $href->{$ebproc}->{'RFIO_iPathConv'} = $rfio_iPathConv; + + + + $href->{$ebproc}->{'LTSM'} = $ltsm_list[$ebproc]; # 0|1 + $href->{$ebproc}->{'LTSM_PATH'} = $ltsm_path; + $href->{$ebproc}->{'LTSM_Server'} = $ltsm_server; + $href->{$ebproc}->{'LTSM_Node'} = $ltsm_node; + $href->{$ebproc}->{'LTSM_Passwd'} = $ltsm_passwd; + $href->{$ebproc}->{'LTSM_Filesystem'} = $ltsm_filesys; + + + $href->{$ebproc}->{'EPICS_CTRL'} = $epics_list[$ebproc]; # 0|1 + + $href->{$ebproc}->{'DABC'} = $dabc_list[$ebproc]; # 0|1 + + $href->{$ebproc}->{'EB_DEBUG'} = $ebdbg_list[$ebproc]; # 0|1 + + $href->{$ebproc}->{'EB_LOG'} = $eblog_list[$ebproc]; # 0|1 + $href->{$ebproc}->{'NM_LOG'} = $nmlog_list[$ebproc]; # 0|1 + + + if($ebproc<4) + { + # note that for bnet setup, index does not mean eb number, but machine number! + # we misuse this here to save complexity of setup + $href->{$ebproc}->{'BNET_INP'} = $bnet_in_list[$ebproc]; # 0|1|2... + $href->{$ebproc}->{'BNET_BLD'} = $bnet_bld_list[$ebproc]; # 0|1|2|3 + } + + + if( $write2disk_list[$ebproc] && lc($opt_disk) eq 'undef' ){ + if(&isVarDefined($temp_args_href->{$procname}->{'OUTDIR'}, "OUTDIR for $procname")){ + $href->{$ebproc}->{'OUTDIR'} = $temp_args_href->{$procname}->{'OUTDIR'}; + } + } + elsif( lc($opt_disk) eq 'on' ){ + if(&isVarDefined($temp_args_href->{$procname}->{'OUTDIR'}, "OUTDIR for $procname")){ + $href->{$ebproc}->{'OUTDIR'} = $temp_args_href->{$procname}->{'OUTDIR'}; + } + } + elsif( lc($opt_disk) eq 'off' ){ + #- do not do anything. If $href->{$ebproc}->{'OUTDIR'} is undefined, + # the data will go to /dev/null + } + } + + $numOfEBProcs = $ebproc; +} + +sub isVarDefined() +{ + my ($var, $msg) = @_; + + my $retval = 1; + + unless( defined $var ){ + print "Undefined variable found: $msg\n"; + $retval = 0; + } + + return $retval; +} + +sub getVarSizeArg() +{ + my ($ebproc) = @_; + + my $i = 0; + my $arg = " "; + + foreach my $size (@{$EB_Args_href->{$ebproc}->{'BUFSIZE_LIST'}}){ + + if($EB_Args_href->{$ebproc}->{'BUFSIZE_LIST'}->[$i] == + $EB_Args_href->{$ebproc}->{'QUEUESIZE'}){ + $i++; + next; + } + + $arg = $arg . " -Q " . $i . ":" . $EB_Args_href->{$ebproc}->{'BUFSIZE_LIST'}->[$i]; + $i++; + } + + return $arg; +} + + +sub startBnet() +{ +# here we launch the dabc bnet. +# parameters in eb.conf can specify how many input and builder processes run on each node. +# we misuse daq gbe setup for EB 15 to specify ports and destination nodes. +my (@process_list); +my $ebproc =15; + my $username = "hadaq"; + my $dabclogin = ". /home/hadaq/soft/dabc/bin/dabclogin.head; "; +# here test special installations: + my $cdworkdir = "cd /home/hadaq/oper;"; + + my $cmd_dabc = "/home/hadaq/soft/dabc/bin/dabc_exe.head "; + + my $conf_bnet_inp = " BnetInputHades.head.xml"; + my $conf_bnet_bld = " BnetBuilderHades.head.xml"; + + + +# before we start inidividual bnet processes, need to evaluate list of ports and nodes: +# BNETSENDERS=[localhost:12501,localhost:12502] +# BNETRECEIVERS= [localhost:12101,localhost:12102] +# HADAQPORTS =[50000,50001,50002] + +my $bnetsenders = "["; +my $bnetrcvs = "["; +my @bnet_port_list = (); +my @bnet_calib_list = (); +my @bnet_subevt_list = (); +my $firstsnd = 1; +my $firstrcv = 1; + + +my $rcvport = 12100; +for ( my $ebserver=0; $ebserver<4; $ebserver=$ebserver+1){ + print "Gathering processes at EB server: $ebserver\n"; + my $sendport = 12501; + # here we use the fact that first 4 eb processes are assigned to first 4 servers. + # so node ip is directly mapped from setup: + my $ip = $EB_Args_href->{$ebserver}->{'IP'}; + + # JAM2018 - need to transform HADES VLAN IPs into GSI VLAN for BNET! + my $gsi_ip = getIP_hades2gsi($ip); + + # array of BNET values is already indexed with server id: + my $bnet_numsenders = $EB_Args_href->{$ebserver}->{'BNET_INP'}; + my $bnet_numbuilders = $EB_Args_href->{$ebserver}->{'BNET_BLD'}; + for (my $six=0; $six<$bnet_numsenders; $six=$six+1) + { + $bnetsenders=$bnetsenders . "," unless ($firstsnd>0); + $bnetsenders=$bnetsenders . $gsi_ip.":". $sendport; + $sendport=$sendport+1; + $firstsnd=0 if($firstsnd>0); + } + for (my $rix=0; $rix<$bnet_numbuilders; $rix=$rix+1) + { + $bnetrcvs=$bnetrcvs . "," unless ($firstrcv>0); + $bnetrcvs=$bnetrcvs . $gsi_ip.":". $rcvport; + $rcvport=$rcvport+1; + $firstrcv=0 if($firstrcv>0); + } + + my $hadaqports = "["; + my $calibflags = "["; + my $subevents = "["; + my $firstport = 1; + + + #- add ports: note that we only use eb 15 setup and do check which ports belong to our eb server: + my $ix =0; + foreach my $port (@{$EB_Args_href->{$ebproc}->{'PORT_LIST'}}){ + # here we only gather such ports that are assigned to our node: + # todo: how to distribute the ports to more than one bnet input process per server? + my $cflag = $EB_Args_href->{$ebproc}->{'CALIB_LIST'}[$ix]; + my $hub = $EB_Args_href->{$ebproc}->{'HUB_LIST'}[$ix]; + print "ip" . $ip . " with port:" . $port ." index:" . $ix . " ip: ". $EB_Args_href->{$ebproc}->{'IP_LIST'}[$ix] . " calib: ". $cflag ." hub: ". $hub ."\n" ; + if($ip eq $EB_Args_href->{$ebproc}->{'IP_LIST'}[$ix]) + { + $hadaqports=$hadaqports . "," unless ($firstport>0); + $hadaqports = $hadaqports . $port; + $calibflags=$calibflags . "," unless ($firstport>0); + $calibflags = $calibflags . $cflag; + $subevents=$subevents . "," unless ($firstport>0); + $subevents = $subevents . $hub; + $firstport=0 if($firstport>0); + } + $ix++; + + } + $hadaqports=$hadaqports . "]"; + push(@bnet_port_list, $hadaqports); # ports are per server + + $calibflags=$calibflags . "]"; + push(@bnet_calib_list, $calibflags); # flags per server + + $subevents=$subevents . "]"; + push(@bnet_subevt_list, $subevents); # flags per server + + + + print "node ". $gsi_ip . " uses ports ".$hadaqports . ", calibflags " .$calibflags . " hubs: ". $subevents ."\n"; +} +$bnetsenders = $bnetsenders . "]"; +$bnetrcvs = $bnetrcvs . "]"; + +print "bnetsenders: ". $bnetsenders ."\n"; +print "bnetreceivers: ". $bnetrcvs ."\n"; + + my $portid=0; # + my $sendid=0; + + my $bnebport=12100; +for ( my $ebserver=0; $ebserver<4; $ebserver=$ebserver+1){ + print "Starting processes on EB server: $ebserver\n"; + my $ebid=$ebserver + 1; # still need unique eventbuilder ids on cluster because of epics! + + # here we use the fact that first 4 eb processes are assigned to first 4 servers. + # so node ip is directly mapped from setup: + my $cpu = $EB_Args_href->{$ebserver}->{'IP'}; + my $gsi_cpu = getIP_hades2gsi($cpu); + # in the following, the port and ip setup of the bnet is taken from ebproc 15 only! + + my $bnet_numsenders = $EB_Args_href->{$ebserver}->{'BNET_INP'}; + my $bnet_numbuilders = $EB_Args_href->{$ebserver}->{'BNET_BLD'}; + print "found $bnet_numsenders senders and $bnet_numbuilders builders on node $cpu \n"; + + + + my $bninpport=12501; + + # loop over senders on this node and start them: + for(my $sender=0; $sender<$bnet_numsenders; $sender=$sender+1) + { + + my $sendnum= $sender + 1; + my $exports = " export MYHOST=" . $gsi_cpu . ";" . + " export BNINPNUM=" . $sendnum . ";" . + " export BNINPID=" . $sendid . "; " . + " export BNINPPORT=" . $bninpport . "; " . + " export BNETSENDERS=" . $bnetsenders . ";" . + " export BNETRECEIVERS=" . $bnetrcvs . ";" . + " export HADAQPORTS=" . $bnet_port_list[$ebserver] .";" . + " export SUBEVENTS=" . $bnet_subevt_list[$ebserver] .";" . + " export CALIBFLAGS=" . $bnet_calib_list[$ebserver] .";"; + + # todo: how to configure situation with more than one bnet input per node? hadaqports must be distributed on them... + # + + my $core_nr = &getCoreNr($cpu) . "," . &getCoreNr($cpu); + + my $exe_dabc = "ssh -n $cpu -l $username \"$dabclogin $cdworkdir $exports taskset -c $core_nr $cmd_dabc $conf_bnet_inp 1{$ebproc}->{'RFIO'} ){ +# +# $exports = $exports . " export FILEOUTPUTS=3;"; +# # additional exports for RFIO +# +# $exports = $exports . " export RFIOPATH=". $EB_Args_href->{$ebproc}->{'RFIO_PATH'} . ";"; +# $exports = $exports . " export RFIOLUSTREPATH=". $EB_Args_href->{$ebproc}->{'RFIO_pcCopyPath'} . ";"; +# $exports = $exports . " export RFIOCOPYMODE=". $EB_Args_href->{$ebproc}->{'RFIO_iCopyMode'} . ";"; +# $exports = $exports . " export RFIOCOPYFRAC=". $EB_Args_href->{$ebproc}->{'RFIO_iCopyFrac'} . ";"; +# $exports = $exports . " export RFIOMAXFILE=". $EB_Args_href->{$ebproc}->{'RFIO_iMaxFile'} . ";"; +# $exports = $exports . " export RFIOPATHCONV=". $EB_Args_href->{$ebproc}->{'RFIO_iPathConv'} . ";"; +# +# # switch on by number of outputs +# } + if( $EB_Args_href->{$ebproc}->{'LTSM'} ){ + + $exports = $exports . " export FILEOUTPUTS=3;"; + # additional exports for LTSM + + $exports = $exports . " export LTSMPATH=". $EB_Args_href->{$ebproc}->{'LTSM_PATH'} . ";"; + $exports = $exports . " export LTSMSERVER=". $EB_Args_href->{$ebproc}->{'LTSM_Server'} . ";"; + $exports = $exports . " export LTSMNODE=". $EB_Args_href->{$ebproc}->{'LTSM_Node'} . ";"; + $exports = $exports . " export LTSMPASSWD=". $EB_Args_href->{$ebproc}->{'LTSM_Passwd'} . ";"; + $exports = $exports . " export LTSMFSNAME=". $EB_Args_href->{$ebproc}->{'LTSM_Filesystem'} . ";"; +# switch on by number of outputs + } + + else + { + # no rfio, just local file + $exports = $exports . " export FILEOUTPUTS=2;"; + } + + + + + } #outdir + else{ + $exports = $exports . " export FILEOUTPUTS=1;"; + # no output except for the stream server... + } + + my $core_nr = &getCoreNr($cpu) . "," . &getCoreNr($cpu); + + my $exe_dabc = "ssh -n $cpu -l $username \"$dabclogin $cdworkdir $exports taskset -c $core_nr $cmd_dabc $conf_bnet_bld 1 bnet distribution + `trbcmd w 0x0003 0xa0f0 0x8000`; + # all calibration triggers also assigned to pseudo EB15 => bnet distribution for the moment + `trbcmd w 0x0003 0xa0f3 0xfff`; + + sleep (20); # need to wait until forking is done, otherwise it does not work via gui control xterm + +} + + + +sub startEvtBuilders() +{ + if( $EB_Args_href->{0}->{'BNET_INP'} ){ + print "Starting Builder network...\n"; + startBnet(); + return; + } + + +# print "DISABLING regular eventbuilder start for testing!\n"; +# return; +######################################## + my $username = "hadaq"; + + my (@process_list); + + foreach my $ebproc (sort {$a <=> $b} keys %$EB_Args_href){ + + my $ebnum2print = $ebproc+1; + print "EB process: $ebnum2print\n"; + + +# JAM first test if we should activate dabc eventbuilder or old one + + if( $EB_Args_href->{$ebproc}->{'DABC'} ){ + print "Starting DABC process..\n"; + +#". /home/joern/dabcwork/head/dabclogin;cd /home/joern/dabcwork/head/plugins/hadaq/app; export EBNUM=1; export STREAMS=5; export UDP00=10101; export UDP01=10102; export UDP02=10103; export UDP03=10104; export UDP04=10105 export PREFIX=be; /home/joern/dabcwork/head/bin/dabc_exe EventBuilderHades.xml &" > /dev/null 2>&1 & + + my $cpu = $EB_Args_href->{$ebproc}->{'IP'}; +# JAM old, direct to version + #my $dabclogin = ". /home/hadaq/soft/dabc/head/dabclogin;"; +# JAM default: +#my $dabclogin = ". /home/hadaq/soft/dabc/bin/dabclogin;"; +#my $dabclogin = ". /home/hadaq/soft/dabc/bin/dabclogin.275;"; + my $dabclogin = ". /home/hadaq/soft/dabc/bin/dabclogin.head; "; +# here test special installations: + my $cdworkdir = "cd //home/hadaq/oper;"; + +# JAM old, direct to version + #my $cmd_dabc = "/home/hadaq/soft/dabc/head/bin/dabc_exe "; +# JAM default: +#my $cmd_dabc = "/home/hadaq/soft/dabc/bin/dabc_exe "; +# here test special installations: +# my $cmd_dabc = "/home/hadaq/soft/dabc/bin/dabc_exe.275 "; + my $cmd_dabc = "/home/hadaq/soft/dabc/bin/dabc_exe.head "; + +# my $conf_dabc = " EventBuilderHades.xml"; +# my $conf_dabc = " EventBuilderHades.275.xml"; + my $conf_dabc = " EventBuilderHades.head.xml"; + + my $exports = " export LC_ALL=C;" . + " export EBNUM=" . $EB_Args_href->{$ebproc}->{'EBNUM'} . "; " . + " export STREAMS=" . $EB_Args_href->{$ebproc}->{'SOURCENUM'} . "; " . + " export PREFIX=" . $EB_Args_href->{$ebproc}->{'PREFIX'}. "; " ; + + my @port_list = (); + + #- add ports + my $ix =0; + foreach my $port (@{$EB_Args_href->{$ebproc}->{'PORT_LIST'}}){ + #$cmd_nm = $cmd_nm . " -i UDP:0.0.0.0:" . $port; + my $index=sprintf("%02d", $ix++); + $exports = $exports . " export UDP". $index. "=" . $port . "; "; + push(@port_list, $port); + } + &cpPortList2EB(\@port_list, $EB_Args_href->{$ebproc}->{'EBNUM'}, $cpu); + + + + + + +# MULTIDISK + +#- add output type + + if($EB_Args_href->{$ebproc}->{'OUTDIR'} ){ + if($EB_Args_href->{$ebproc}->{'MULTIDISK'}){ + $exports = $exports . "export DAQDISK=1; export OUTDIR=/data01; "; + } + else{ + $exports = $exports . "export DAQDISK=0; export OUTDIR=" . $EB_Args_href->{$ebproc}->{'OUTDIR'} .";"; + } + + if( $EB_Args_href->{$ebproc}->{'LTSM'} ){ + + $exports = $exports . " export FILEOUTPUTS=3;"; + # additional exports for LTSM + + $exports = $exports . " export LTSMPATH=". $EB_Args_href->{$ebproc}->{'LTSM_PATH'} . ";"; + $exports = $exports . " export LTSMSERVER=". $EB_Args_href->{$ebproc}->{'LTSM_Server'} . ";"; + $exports = $exports . " export LTSMNODE=". $EB_Args_href->{$ebproc}->{'LTSM_Node'} . ";"; + $exports = $exports . " export LTSMPASSWD=". $EB_Args_href->{$ebproc}->{'LTSM_Passwd'} . ";"; + $exports = $exports . " export LTSMFSNAME=". $EB_Args_href->{$ebproc}->{'LTSM_Filesystem'} . ";"; + +# switch on by number of outputs + } +################## deprecated, keep code for optional testing? +# JAM 5-2017 - we never run rfio and ltsm in parallel. +# if( $EB_Args_href->{$ebproc}->{'RFIO'} ){ +# +# $exports = $exports . " export FILEOUTPUTS=3;"; +# # additional exports for RFIO +# +# $exports = $exports . " export RFIOPATH=". $EB_Args_href->{$ebproc}->{'RFIO_PATH'} . ";"; +# $exports = $exports . " export RFIOLUSTREPATH=". $EB_Args_href->{$ebproc}->{'RFIO_pcCopyPath'} . ";"; +# $exports = $exports . " export RFIOCOPYMODE=". $EB_Args_href->{$ebproc}->{'RFIO_iCopyMode'} . ";"; +# $exports = $exports . " export RFIOCOPYFRAC=". $EB_Args_href->{$ebproc}->{'RFIO_iCopyFrac'} . ";"; +# $exports = $exports . " export RFIOMAXFILE=". $EB_Args_href->{$ebproc}->{'RFIO_iMaxFile'} . ";"; +# $exports = $exports . " export RFIOPATHCONV=". $EB_Args_href->{$ebproc}->{'RFIO_iPathConv'} . ";"; +# +# # switch on by number of outputs +# } +####################################### + else + { + # no rfio, just local file + $exports = $exports . " export FILEOUTPUTS=2;"; + } + + + + + } #outdir + else{ + $exports = $exports . " export FILEOUTPUTS=1;"; + # no output except for the stream server... + } + + + + + + + + + +# EPICSCONTROL ? always enabled for production +# SMALLFILES for online monitoring node + +# Jul14 beamtime setup 3 cores for dabc + #my $core_nr = &getCoreNr($cpu) . "," . &getCoreNr($cpu) . "," . &getCoreNr($cpu); + +# try 2 cores each dabc for more dabc nodes: + my $core_nr = &getCoreNr($cpu) . "," . &getCoreNr($cpu); +# my $core_nr = &getCoreNr($cpu); +# dabc is set to 3 cores + +# JAM use fixed core number for kp1pc092 tests: +# my $core_nr = 1; + my $exe_dabc = "ssh -n $cpu -l $username \"$dabclogin $cdworkdir $exports taskset -c $core_nr $cmd_dabc $conf_dabc 1{$ebproc}->{'SOURCENUM'} . + " -q " . $EB_Args_href->{$ebproc}->{'QUEUESIZE'} . + " -S " . $EB_Args_href->{$ebproc}->{'EBNUM'} . + " --ebnum " . $EB_Args_href->{$ebproc}->{'EBNUM'} . + " -x " . $EB_Args_href->{$ebproc}->{'PREFIX'}; + + #- add queue variable size args + my $varsize_arg = &getVarSizeArg($ebproc); + $cmd_eb = $cmd_eb . $varsize_arg; + + #- add output type + if( defined $EB_Args_href->{$ebproc}->{'OUTDIR'} ){ + if($EB_Args_href->{$ebproc}->{'MULTIDISK'}){ + $cmd_eb = $cmd_eb . " -d file -o " . "/data01/data"; + } + else{ + $cmd_eb = $cmd_eb . " -d file -o " . $EB_Args_href->{$ebproc}->{'OUTDIR'}; + } + } + else{ + $cmd_eb = $cmd_eb . " -d null"; + } + + #- add file size + $cmd_eb = $cmd_eb . " --filesize " . $EB_Args_href->{$ebproc}->{'FILESIZE'}; + + #- add second output with small hdl files + if( defined $EB_Args_href->{$ebproc}->{'RESDOWNSCALE'} ){ + $cmd_eb = $cmd_eb . " --resdownscale " . $EB_Args_href->{$ebproc}->{'RESDOWNSCALE'} . + " --resnumevents " . $EB_Args_href->{$ebproc}->{'RESNUMEVENTS'} . + " --respath " . $EB_Args_href->{$ebproc}->{'RESPATH'} . + " --ressizelimit " . $EB_Args_href->{$ebproc}->{'RESSIZELIMIT'}; + } + + my $cpu = $EB_Args_href->{$ebproc}->{'IP'}; + + #- add rfio args + my $rfio; + if( $EB_Args_href->{$ebproc}->{'RFIO'} ){ + $rfio = " --rfio rfiodaq:gstore:" . $EB_Args_href->{$ebproc}->{'RFIO_PATH'} . + " --rfiolustre " . $EB_Args_href->{$ebproc}->{'RFIO_pcCopyPath'} . + " --rfio_pcoption " . $EB_Args_href->{$ebproc}->{'RFIO_pcOptions'} . + " --rfio_icopymode " . $EB_Args_href->{$ebproc}->{'RFIO_iCopyMode'} . + " --rfio_icopyfrac " . $EB_Args_href->{$ebproc}->{'RFIO_iCopyFrac'} . + " --rfio_imaxfile " . $EB_Args_href->{$ebproc}->{'RFIO_iMaxFile'} . + " --rfio_ipathconv " . $EB_Args_href->{$ebproc}->{'RFIO_iPathConv'}; + } + + $cmd_eb = $cmd_eb . $rfio if( defined $rfio ); + + #- add multiple disk arg (ctrl via daq_disks) + if($EB_Args_href->{$ebproc}->{'MULTIDISK'} && + defined $EB_Args_href->{$ebproc}->{'OUTDIR'}){ + $cmd_eb = $cmd_eb . " --multidisk " . $EB_Args_href->{$ebproc}->{'MULTIDISK'}; + } + + #- add online RPC server + if( $EB_Args_href->{$ebproc}->{'ONLINESERVER'} eq "on" ){ + $cmd_eb = $cmd_eb . " --online"; + } + + #- add epics controlled + $cmd_eb = $cmd_eb . " --epicsctrl " if( $EB_Args_href->{$ebproc}->{'EPICS_CTRL'} ); + + # switch on debug output + $cmd_eb = $cmd_eb . " --debug trignr --debug errbit --debug word " if( $EB_Args_href->{$ebproc}->{'EB_DEBUG'} ); + + + + #- logging the output + my $eblog_file = "/tmp/log_eb_" . $EB_Args_href->{$ebproc}->{'EBNUM'} . ".txt"; + my $eb_log = "1>$eblog_file 2>$eblog_file"; + $eb_log = "1>/dev/null 2>/dev/null" unless( $EB_Args_href->{$ebproc}->{'EB_LOG'} ); + + my $time = 1. * $ebproc; + my $sleep_cmd = "sleep " . $time; + + my $core_nr = &getCoreNr($cpu); + + my $exe_eb = "ssh -n $cpu -l $username \"cd /home/hadaq/oper; export DAQ_SETUP=/home/hadaq/oper/eb; taskset -c $core_nr $cmd_eb $eb_log &\""; + + #print "exec: $exe_eb\n"; + + #--- Prepare execution of daq_netmem + my $cmd_nm = "/home/hadaq/bin/daq_netmem" . + " -m " . $EB_Args_href->{$ebproc}->{'SOURCENUM'} . + " -q " . $EB_Args_href->{$ebproc}->{'QUEUESIZE'} . + " -S " . $EB_Args_href->{$ebproc}->{'EBNUM'}; + + #- add queue variable size args + $cmd_nm = $cmd_nm . $varsize_arg; + + my @port_list = (); + + #- add ports + foreach my $port (@{$EB_Args_href->{$ebproc}->{'PORT_LIST'}}){ + #$cmd_nm = $cmd_nm . " -i UDP:0.0.0.0:" . $port; + $cmd_nm = $cmd_nm . " -i " . $port; + + push(@port_list, $port); + } + + &cpPortList2EB(\@port_list, $EB_Args_href->{$ebproc}->{'EBNUM'}, $cpu); + + #- logging the output + my $nmlog_file = "/tmp/log_nm_" . $EB_Args_href->{$ebproc}->{'EBNUM'} . ".txt"; + my $nm_log = "1>$nmlog_file 2>$nmlog_file"; + $nm_log = "1>/dev/null 2>/dev/null" unless( $EB_Args_href->{$ebproc}->{'NM_LOG'} ); + + $core_nr = &getCoreNr($cpu); + + my $exe_nm = "ssh -n $cpu -l $username \"cd /home/hadaq/oper; export DAQ_SETUP=/home/hadaq/oper/eb; taskset -c $core_nr $cmd_nm $nm_log &\""; + + #print "exec: $exe_nm\n"; + + #--- Open permissions for shared memory + my $eb_shmem = "daq_evtbuild" . $EB_Args_href->{$ebproc}->{'EBNUM'} . ".shm"; + my $nm_shmem = "daq_netmem" . $EB_Args_href->{$ebproc}->{'EBNUM'} . ".shm"; + my $exe_open_eb = "ssh -n $cpu -l $username \"chmod 775 /dev/shm/$eb_shmem\""; + my $exe_open_nm = "ssh -n $cpu -l $username \"chmod 775 /dev/shm/$nm_shmem\""; + + &forkEB($exe_eb, $exe_nm, $exe_open_eb, $exe_open_nm, \@process_list); + } + +} +# if dabc + + #- Wait for children + foreach my $cur_child_pid (@process_list) { + waitpid($cur_child_pid,0); + } + +} +# foreach + +sub stopEvtBuilders() +{ + my $username = "hadaq"; + + my @process_list = (); + + #--- Loop over server IPs + foreach my $ip (@EB_IP_list){ + + my $exe = "ssh -n $ip -l $username \"/home/hadaq/bin/cleanup_evtbuild.pl; /home/hadaq/bin/ipcrm.pl\""; + + if($opt_verb){ + print "Killing running EBs...\n"; + print "Exec: $exe\n"; + } + + my $log = $log_path . "/log_" . $ip . "_" . "stopEB.txt"; + + forkMe($exe, $log, \@process_list) unless($opt_test); + } + + #- Wait for children + foreach my $cur_child_pid (@process_list) { + print "wait for $cur_child_pid\n"; + waitpid($cur_child_pid,0); + } +} + +sub cpPortList2EB() +{ + my ($port_list_aref, $ebnr, $cpu) = @_; + + my $tmpfile = "/tmp/eb" . $ebnr . "_" . $cpu . ".txt"; + + #- First write ports to tmp file + my $fh = new FileHandle(">$tmpfile"); + + if(!$fh) { + my $txt = "\nError! Could not open file \"$tmpfile\" for output. Exit.\n"; + print STDERR $txt; + print $txt; + exit(128); + } + + foreach my $port (@$port_list_aref){ + print $fh "$port\n"; + } + + $fh->close(); + + #- Copy this tmp file to EB + my $exe_cp = "scp $tmpfile hadaq\@$cpu:/tmp/ 1>/dev/null 2>/dev/null"; + system($exe_cp); +} + +sub startIOC() +{ + my $ioc_dir = "/home/scs/ebctrl/ioc/iocBoot/iocebctrl"; + + &writeIOC_stcmd( $ioc_dir ); + + print "Starting IOCs...\n" if($opt_verb); + + foreach my $ebproc (keys %$EB_Args_href){ + + my $stcmd = sprintf("st_eb%02d.cmd", 1 + $ebproc); + my $screen_name = sprintf("ioc_eb%02d", 1 + $ebproc); + + my $cmd = "bash; . /home/scs/.bashrc; export HOSTNAME=\\\$(hostname); cd $ioc_dir; screen -dmS $screen_name ../../bin/linux-x86_64/ebctrl $stcmd"; + my $cpu = $EB_Args_href->{$ebproc}->{'IP'}; + # JAM2016: this is kludge for bnet: + # first IP in hub configuration of pseude EB15 might be set differently + # we always reset it to match lxhadeb05 where epics for builder should belong + if($ebproc == 15) + { + $cpu="192.168.100.15"; + } + # end bnet kludge + my $exe = "ssh -n $cpu -l scs \"$cmd\""; + + print "Exec: $exe\n" if($opt_verb); + system($exe) unless($opt_test); + } +} + +sub smallestEBProcNum() +{ + my $smallest = 1000; + + foreach my $ebproc (keys %$EB_Args_href){ + $smallest = $ebproc if($smallest > $ebproc); + } + + return $smallest; +} + +sub writeIOC_stcmd() +{ + my ($ioc_dir) = @_; + + # JAM first evaluate ports for ca list + my $epicscalist = "192.168.111.255"; + foreach my $ebproc (keys %$EB_Args_href){ + $epicscalist=sprintf("%s 192.168.111.255:%d", $epicscalist, 10001 + $ebproc); + } + + print "Copying st.cmd files to servers...\n" if($opt_verb); + + my $smallest_ebproc = &smallestEBProcNum(); + + foreach my $ebproc (keys %$EB_Args_href){ + + my $ebNr = 1 + $ebproc; + my $ebnum = sprintf("eb%02d", $ebNr); + my $serverport = 10001+ $ebproc; + + + #- in MBytes + my $maxFileSize = $EB_Args_href->{$ebproc}->{'FILESIZE'}; + + my $ebtype = "slave"; + my $comment_genrunid = "#"; + my $comment_totalevt = "#"; + + if($ebproc == $smallest_ebproc){ + $ebtype = "master"; + $comment_genrunid = ""; + $comment_totalevt = ""; + } + +# if($ebNr == 1){ +# $comment_totalevt = ""; +# } + + my $ioc_stcmd = < \${TOP}/iocBoot/\${IOC}/$ebnum.dbl + +EOF + + my $outfile = "/tmp/st_" . $ebnum . ".cmd"; + my $fh = new FileHandle(">$outfile"); + + if(!$fh) { + my $txt = "\nError! Could not open file \"$outfile\" for output. Exit.\n"; + print STDERR $txt; + print $txt; + exit(128); + } + + print $fh $ioc_stcmd; + $fh->close(); + + my $ip = $EB_Args_href->{$ebproc}->{'IP'}; + my $cmd = "scp $outfile scs\@$ip:$ioc_dir/."; + + print "Exec: $cmd\n" if($opt_verb); + system($cmd) unless($opt_test); + } +} + +sub killIOC() +{ + my %ioc; + my $ioc_href = \%ioc; + + print "Looking for running IOCs...\n" if($opt_verb); + + #--- Loop over server IPs + foreach my $ip (@EB_IP_list){ + + &findRunningIOC($ip, $ioc_href); + } + + #print Dumper \%$ioc_href; + + &writeExpectIOC() if(%$ioc_href); + + if($opt_verb){ + print "Killing running IOCs...\n"; + print "No IOCs found - nothing to kill, continue...\n" unless(%$ioc_href); + } + + my (@process_list); + + foreach my $ip ( %$ioc_href ){ + foreach my $ioc ( @{$ioc_href->{$ip}} ){ + + my $cmd = $expect_ioc_script . " " . $ip . " " . $ioc; + my $log = $log_path . "/log_" . $ip . "_" . $ioc . ".txt"; + print "cmd: $cmd\n" if($opt_verb); + &forkMe($cmd, $log, \@process_list); + } + } + + + + + #- Wait for children + foreach my $cur_child_pid (@process_list) { + waitpid($cur_child_pid,0); + } + + ### just kill the remaining stuff + @process_list = (); + + foreach my $ip (@EB_IP_list){ + my $cmd = qq|ssh scs\@$ip "/usr/bin/pkill -f \\"SCREEN -dmS ioc_eb\\""|; + print $cmd; + &forkMe($cmd, "/tmp/ioc_kill_$ip", \@process_list); + } + + foreach my $cur_child_pid (@process_list) { + waitpid($cur_child_pid,0); + } + + sleep 1; + + ### just kill the remaining stuff + @process_list = (); + foreach my $ip (@EB_IP_list){ + my $cmd = qq|ssh scs\@$ip "/usr/bin/pkill -9 -f \\"SCREEN -dmS ioc_eb\\""|; + &forkMe($cmd, "/tmp/ioc_kill2_$ip", \@process_list); + } + + foreach my $cur_child_pid (@process_list) { + waitpid($cur_child_pid,0); + } + +} + +sub forkMe() +{ + my ($cmd, $log, $proc_list) = @_; + + my $child = fork(); + + if( $child ){ # parent + push( @$proc_list, $child ); + } + elsif( $child == 0 ) { # child + system("$cmd >$log 2>&1 "); + exit(0); + } + else{ + print "Could not fork: $!\n"; + exit(1); + } +} + +sub forkEB() +{ + my ($exe_eb, $exe_nm, $exe_open_eb, $exe_open_nm, $proc_list) = @_; + + my $child = fork(); + + if( $child ){ # parent + push( @$proc_list, $child ); + } + elsif( $child == 0 ) { # child + #--- Execute Event Builder + print "Exec: $exe_eb\n" if($opt_verb); + system($exe_eb) unless($opt_test); + + sleep(1); + + #--- Open permissions for EB shared memory + # ! Permissions should be opened by EB process + #print "Exec: $exe_open_eb\n" if($opt_verb); + #system($exe_open_eb) unless($opt_test); + + sleep(2); + + #--- Execute Net-2-Memory + print "Exec: $exe_nm\n" if($opt_verb); + system($exe_nm) unless($opt_test); + + sleep(1); + + #--- Open permissions for NM shared memory + # ! Permissions should be opened by EB process + #print "Exec: $exe_open_nm\n" if($opt_verb); + #system($exe_open_nm) unless($opt_test); + + exit(0); + } + else{ + print "Could not fork: $!\n"; + exit(1); + } +} + +sub findRunningIOC() +{ + my ($cpu, $ioc_href) = @_; + + `ssh -n $cpu -l scs \"screen -wipe\"`; + my $exe = "ssh -n $cpu -l scs \"screen -ls\""; + + my @output = `$exe`; + + foreach my $line (@output){ + if($line =~ /\d+\.(ioc_eb\d{2})\s+/){ + my $name = $1; + push( @{$ioc_href->{$cpu}}, $name ); + print "Found IOC: $name on $cpu\n" if($opt_verb); + } + } +} + +sub writeExpectIOC() +{ + # This expect script can be executed to exit IOC. + + #! Look if /tmp dir exists + my $tmp_dir = dirname("/tmp"); + if ( !(-d $tmp_dir) ){ + print "\nCannot access /tmp directory!\nExit.\n"; + exit(1); + } + + my $expect_script_my = <0} { + set ip [lindex \$argv 0] + set iocname [lindex \$argv 1] +} else { + send_user "Usage: \$argv0 ip iocname\\n" +} + +spawn ssh scs@\$ip + +#expect { +# "error" { exit; } +# "login:" { exit; } +# "Password:" { exit; } +#} + +set timeout 20 +#240 + +expect "~\$ " +send "screen -r \$iocname\\r" +expect "epics> " +send "exit\\r" +expect "~\$ " + +EOF + + my $fh = new FileHandle(">$expect_ioc_script"); + + if(!$fh) { + my $txt = "\nError! Could not open file \"$expect_ioc_script\" for output. Exit.\n"; + print STDERR $txt; + print $txt; + exit(128); + } + + print $fh $expect_script_my; + $fh->close(); + + #- open permissions + system("chmod 755 $expect_ioc_script"); +} + +sub getGbEconfig() +{ + # + # Read DB configurations of GbE and CTS, + # look for active data sources as well as + # for EB IPs and ports. + # + + my ($eb_ids_href) = @_; + + my $data_sources = $temp_args_href->{'Parallel'}->{'DATA_SOURCES'}; + my $gbe_conf = $temp_args_href->{'Parallel'}->{'GBE_CONF'}; + #my $cts_conf = $temp_args_href->{'Parallel'}->{'CTS_CONF'}; + + my %activeSources_hash; + my $activeSources_href = \%activeSources_hash; + + &readActiveSources($data_sources, $activeSources_href); + + my @id_list; + my $id_list_aref = \@id_list; + + #&readEBids($cts_conf, $id_list_aref); + + #- Overwrite array with EB numbers + @id_list = (0 .. 15); + #print Dumper $id_list_aref; + + &readEBports($gbe_conf, $activeSources_href, $id_list_aref, $eb_ids_href); +} + +sub readEBids() +{ + # + # Read EB Ids + # + + my ($file, $id_list_aref) = @_; + + my $nnn_table = 0; + my $val_table = 0; + + my $SPACE = ""; + + my $fh = new FileHandle("$file", "r"); + + while(<$fh>){ + + #- Remove all comments + $_ =~ s{ # Substitue... + \# # ...a literal octothorpe + [^\n]* # ...followed by any number of non-newlines + } + {$SPACE}gxms; # Raplace it with a single space + + #- Skip line if it contains only whitespaces + next unless(/\S/); + + if(/^(\s+)?!Value\stable/){ + $val_table = 1; + $nnn_table = 0; + next; + } + elsif(/^(\s+)?!\w+/){ + $val_table = 0; + $nnn_table = 1; + } + + if($val_table){ + my (@vals) = split(" ", $_); + my @id_list1 = split("", $vals[12]); + my @id_list2 = split("", $vals[13]); + foreach my $id (@id_list1){ + push(@$id_list_aref, hex($id)); + } + foreach my $id (@id_list2){ + push(@$id_list_aref, hex($id)); + } + } + elsif($nnn_table){ + } + } + + $fh->close; +} + +sub readEBports() +{ + # + # Read EB IPs and ports accoring to EB Id (type) + # and TRB-Net addresses of active data sources. + # + + my ($file, $activeSources_href, $id_list_aref, $ports_href) = @_; + + my $nnn_table = 0; + my $val_table = 0; + + my $fh = new FileHandle("$file", "r"); + + &isFileDefined($fh, $file); + + my %tmp; + my $tmp_href = \%tmp; + + my $SPACE = ""; + + while(<$fh>){ + + #print $_; + #- Remove all comments + $_ =~ s{ # Substitue... + \# # ...a literal octothorpe + [^\n]* # ...followed by any number of non-newlines + } + {$SPACE}gxms; # Raplace it with a single space + + #- Skip line if it contains only whitespaces + next unless(/\S/); + + #print $_; + if(/^(\s+)?!Value\stable/){ + $val_table = 1; + $nnn_table = 0; + next; + } + elsif(/^(\s+)?!\w+/){ + $nnn_table = 1; + $val_table = 0; + } + + if($val_table){ + my (@vals) = split(" ", $_); + my $id = $vals[1]; + + #if($id <0 or $id >15) { + # print "error: in $file there is a line with an eventbuilder number different than 0..15, the number given in the file is $id. please correct the config file.\n"; + # exit(128); + #} + + + #- Accept only EB Ids from CTS config file + #print "value: $_"; + next unless( any {$_ eq $id} @$id_list_aref ); + + #print Dumper \@vals; + #print "active sources: "; print Dumper $activeSources_href->{'addr_list'}; + #exit; + + my $ip = &getIP_hex2dec($vals[6]); + my $port = &getPort_hex2dec($vals[2]); + my $addr = $vals[0]; + my $calib = $vals[7]; # jam2018 - add list of trb3 tdc calibration modes + + #print "got: ip: $ip, port: $port, addr: $addr\n"; + #- Accept only sources from active source list + if( any {hex($_) == hex($addr)} @{$activeSources_href->{'addr_list'}} ){ + $tmp_href->{$id}->{'IP'} = $ip; + push( @{$tmp_href->{$id}->{'port_list'}}, $port ); + push( @{$tmp_href->{$id}->{'addr_list'}}, $addr ); + push( @{$tmp_href->{$id}->{'calib_list'}}, $calib ); + + # JAM2016: for bnet we need the receiver nodes per port as list also: + push( @{$tmp_href->{$id}->{'ip_list'}}, $ip ); + + } + } + } + + $fh->close; + + #print Dumper $tmp_href; + + #- Sort hash according to active data source list + foreach my $id (keys %tmp){ + $ports_href->{$id}->{'IP'} = $tmp_href->{$id}->{'IP'}; + + foreach my $addr (@{$activeSources_href->{'addr_list'}}){ + + my $ind1 = first_index {$_ eq $addr} @{$tmp_href->{$id}->{'addr_list'}}; + my $ind2 = first_index {$_ eq $addr} @{$activeSources_href->{'addr_list'}}; + + next if($ind1 == -1); + + push( @{$ports_href->{$id}->{'port_list'}}, $tmp_href->{$id}->{'port_list'}->[$ind1]); + # added for bnet JAM: + push( @{$ports_href->{$id}->{'ip_list'}}, $tmp_href->{$id}->{'ip_list'}->[$ind1]); + push( @{$ports_href->{$id}->{'calib_list'}}, $tmp_href->{$id}->{'calib_list'}->[$ind1]); + + push( @{$ports_href->{$id}->{'addr_list'}}, $addr); + push( @{$ports_href->{$id}->{'bufsize_list'}}, $activeSources_href->{'bufsize_list'}->[$ind2]); + } + } + + #print Dumper $ports_href; +} + +sub readActiveSources() +{ + # + # Read TRB-Net addresses of active data sources + # + + my ($file, $activeSources_href) = @_; + + my $fh = new FileHandle("$file", "r"); + + &isFileDefined($fh, $file); + + my $SPACE = ""; + + while(<$fh>){ + + #- Remove all comments + $_ =~ s{ # Substitue... + \# # ...a literal octothorpe + [^\n]* # ...followed by any number of non-newlines + } + {$SPACE}gxms; # Raplace it with a single space + + #- Skip line if it contains only whitespaces + next unless(/\S/); + + my ($addr, $astat, $sys, $size) = split(" ", $_); + + next if($astat == 0); + + push( @{$activeSources_href->{'addr_list'}}, $addr); + push( @{$activeSources_href->{'bufsize_list'}}, &getBufSize($size)); + } + + $fh->close; +} + +sub getBufSize() +{ + my ($bufSize) = @_; + + if(lc($bufSize) eq "low"){ + return $temp_args_href->{'Main'}->{'BUF_SIZE_LOW'}; + } + elsif(lc($bufSize) eq "mid"){ + return $temp_args_href->{'Main'}->{'BUF_SIZE_MID'}; + } + elsif(lc($bufSize) eq "high"){ + return $temp_args_href->{'Main'}->{'BUF_SIZE_HIGH'}; + } + else{ + print "Cannot understand $bufSize from data_sources.db.\n"; + exit(0); + } +} + +sub getIP_hex2dec() +{ + my ($ip_hex) = @_; + + my $ip_dec; + + if( $ip_hex =~ /0x(\w{2})(\w{2})(\w{2})(\w{2})/ ){ + $ip_dec = hex($1) . "." . hex($2) . "." . hex($3) . "." . hex($4); + } + else{ + print "getIP_hex2dec(): cannot extract ip address because of diferent format! Exit."; + exit(0); + } + + return $ip_dec; +} + +sub getPort_hex2dec() +{ + my ($port_hex) = @_; + + my $port_dec; + + if( $port_hex =~ /0x(\w+)/ ){ + $port_dec = hex($1); + } + else{ + print "getPort_hex2dec(): cannot extract port number because of diferent format! Exit."; + exit(0); + } + + return $port_dec; +} + +sub getIP_hades2gsi() +{ + my ($ip_hades) = @_; + my $ip_gsi = ""; + if (exists $IP_GSI_href->{$ip_hades}){ + $ip_gsi = $IP_GSI_href->{$ip_hades}; + } + else { + print "getIP_hades2gsi(): WARNING - unknown hades ip $ip_hades"; + } + return $ip_gsi; +} + + + + +sub isFileDefined() +{ + my ($fh, $name) = @_; + + if(!$fh) { + my $txt = "\nError! Could not open file \'$name\'. Exit.\n"; + print STDERR $txt; + print $txt; + exit(128); + } + + return 0; +} + +sub writeArgs2file() +{ + my $fileName = $0; + + #- Replace .pl with .sh + $fileName =~ s/\.pl/\.sh/; + + my $fh = new FileHandle(">./$fileName"); + if(!$fh) { + my $txt = "\nError! Could not open file \"$fileName\" for output. Exit.\n"; + print STDERR $txt; + print $txt; + exit(128); + } + + my $current_dir = cwd(); + my $ptogName = $0; + + + #- Write to the file the script name itself + print $fh $0; + + #- Write to the file the arguments + foreach my $arg (@arg_list){ + print $fh " $arg"; + } + print $fh "\n"; + + $fh->close(); + + system("chmod 755 ./$fileName"); +} + diff --git a/evtbuild/start_eb_gbe.sh b/evtbuild/start_eb_gbe.sh index 625449c..3830660 100755 --- a/evtbuild/start_eb_gbe.sh +++ b/evtbuild/start_eb_gbe.sh @@ -1 +1 @@ -./start_eb_gbe.pl -e restart -n 1-16 -d off -p -- +./start_eb_gbe.pl -e restart -n 1-15 -d on -p te diff --git a/evtbuild/start_eb_iocs.sh b/evtbuild/start_eb_iocs.sh index 716e321..95a50b6 100755 --- a/evtbuild/start_eb_iocs.sh +++ b/evtbuild/start_eb_iocs.sh @@ -3,5 +3,6 @@ # restart epics iocs for all eventbuilders # will kill all previous iocs # need to set environment with this script due to relative paths in config files +# JAM 4-2018: switch off EB16 for BNET. Anyway, this restart script is deactivated in icinga! cd /home/hadaq/trbsoft/daq/evtbuild -./start_eb_gbe.pl -i start -n 1-16 +./start_eb_gbe.pl -i start -n 1-15 diff --git a/hub/register_configgbe_2018.db b/hub/register_configgbe_2018.db index 3137bb8..4623eaf 100644 --- a/hub/register_configgbe_2018.db +++ b/hub/register_configgbe_2018.db @@ -90,12 +90,12 @@ 0x8890 1 0x8890 1 1 0x8900 1 0x8900 1 1 0x8910 1 0x8910 1 1 - 0x8a00 1 0x8a00 1 1 - 0x8a01 1 0x8a01 1 1 - 0x8a02 1 0x8a02 1 1 - 0x8a03 1 0x8a03 1 1 - 0x8a04 1 0x8a04 1 1 - 0x8a05 1 0x8a05 1 1 + 0x8a00 1 0x8a00 1 0 + 0x8a01 1 0x8a01 1 0 + 0x8a02 1 0x8a02 1 0 + 0x8a03 1 0x8a03 1 0 + 0x8a04 1 0x8a04 1 0 + 0x8a05 1 0x8a05 1 0 0x1000 1 0x1000 1 0 0x1010 1 0x1010 1 0 0x1020 1 0x1020 1 0 diff --git a/hub/register_configgbe_ip.db b/hub/register_configgbe_ip.db index 797b44a..a3fe897 120000 --- a/hub/register_configgbe_ip.db +++ b/hub/register_configgbe_ip.db @@ -1 +1 @@ -register_configgbe_ip_2018.db \ No newline at end of file +register_configgbe_ip_2018_oldEBs.db \ No newline at end of file diff --git a/hub/register_configgbe_ip_2018.db b/hub/register_configgbe_ip_2018.db index 2ddce8f..645afc7 100644 --- a/hub/register_configgbe_ip_2018.db +++ b/hub/register_configgbe_ip_2018.db @@ -404,7 +404,7 @@ 0x1020 6 0xc462 0xdead1020 0xc0a86492 0xc462 0xc0a8640D 0x1030 6 0xc463 0xdead1030 0xc0a86493 0xc463 0xc0a8640D 0x1040 6 0xc464 0xdead1040 0xc0a86494 0xc464 0xc0a8640D - 0x1050 6 0xc465 0xdead1010 0xc0a864A1 0xc471 0xc0a8640D + 0x1050 6 0xc465 0xdead1050 0xc0a86495 0xc465 0xc0a8640D 0x1100 6 0xc466 0xdead1100 0xc0a86496 0xc466 0xc0a8640D 0x1110 6 0xc467 0xdead1110 0xc0a86497 0xc467 0xc0a8640D 0x1120 6 0xc468 0xdead1120 0xc0a86498 0xc468 0xc0a8640D @@ -832,9 +832,9 @@ -# Dest Port Src MAC Src IP Src Port -# Hub # Type # C3 # C4 # C6 # C7 # -####################################################################### +# Dest Port Src MAC Src IP Src Port # # TDC Calib flag +# Hub # Type # C3 # C4 # C6 # C7 # EB IP # 1:NO 1:linear 2:complex +################################################################################################ # JAM 2016: this EB will be used as pseudo node to setup the dabc bnet # last column will distribute to bnet input nodes # EB_LUT must be 0x8000 in CTS for bnet mode @@ -845,49 +845,49 @@ # note that we also need to set same destination ips in the hub table at the end of this file! # #lxhadeb04, EB15 .14 - 0x8000 15 0xc65B 0xdead8000 0xc0a86480 0xc65B 0xc0a8640F - 0x8100 15 0xc651 0xdead8100 0xc0a86481 0xc651 0xc0a8640F - 0x8110 15 0xc652 0xdead8110 0xc0a86482 0xc652 0xc0a8640F - 0x8400 15 0xc656 0xdead8400 0xc0a86486 0xc656 0xc0a8640C - 0x8410 15 0xc657 0xdead8410 0xc0a86487 0xc657 0xc0a8640C - 0x8420 15 0xc658 0xdead8420 0xc0a86488 0xc658 0xc0a8640C - 0x8600 15 0xc659 0xdead8600 0xc0a86489 0xc659 0xc0a8640C - 0x8700 15 0xc65A 0xdead8700 0xc0a8648A 0xc65A 0xc0a8640C - 0x8800 15 0xc650 0xdead8800 0xc0a8648B 0xc650 0xc0a8640F - 0x8900 15 0xc65C 0xdead8900 0xc0a8648C 0xc65C 0xc0a8640D - 0x8880 15 0xc65D 0xdead8A00 0xc0a8648D 0xc65D 0xc0a8640D - 0x8890 15 0xc65F 0xdead8890 0xc0a8648F 0xc65F 0xc0a8640D - 0x8910 15 0xc65E 0xdead8910 0xc0a8648E 0xc65E 0xc0a8640D - 0x1000 15 0xc660 0xdead1000 0xc0a86490 0xc660 0xc0a8640D - 0x1010 15 0xc661 0xdead1010 0xc0a86491 0xc661 0xc0a8640D - 0x1020 15 0xc662 0xdead1020 0xc0a86492 0xc662 0xc0a8640D - 0x1030 15 0xc663 0xdead1030 0xc0a86493 0xc663 0xc0a8640D - 0x1040 15 0xc664 0xdead1040 0xc0a86494 0xc664 0xc0a8640E - 0x1050 15 0xc665 0xdead1050 0xc0a86495 0xc665 0xc0a8640E - 0x1100 15 0xc666 0xdead1100 0xc0a86496 0xc666 0xc0a8640E - 0x1110 15 0xc667 0xdead1110 0xc0a86497 0xc667 0xc0a8640E - 0x1120 15 0xc668 0xdead1120 0xc0a86498 0xc668 0xc0a8640F - 0x1130 15 0xc669 0xdead1130 0xc0a86499 0xc669 0xc0a8640F - 0x1140 15 0xc66A 0xdead1140 0xc0a8649A 0xc66A 0xc0a8640F - 0x1150 15 0xc66B 0xdead1150 0xc0a8649B 0xc66B 0xc0a8640F - 0x1160 15 0xc66C 0xdead1160 0xc0a8649C 0xc66C 0xc0a8640F - 0x8a00 15 0xc676 0xdead3260 0xc0a864A6 0xc676 0xc0a8640F - 0x8a01 15 0xc677 0xdead3270 0xc0a864A7 0xc677 0xc0a8640F - 0x8a02 15 0xc678 0xdead3280 0xc0a864A8 0xc678 0xc0a8640F - 0x8a03 15 0xc679 0xdead3290 0xc0a864A9 0xc679 0xc0a8640F - 0x8a04 15 0xc67a 0xdead32a0 0xc0a864AA 0xc67A 0xc0a8640F - 0x8a05 15 0xc67b 0xdead32b0 0xc0a864AB 0xc67B 0xc0a8640E - 0x83c0 15 0xc67c 0xdead32c0 0xc0a864AC 0xc67C 0xc0a8640E - 0x83c1 15 0xc67d 0xdead32d0 0xc0a864AD 0xc67D 0xc0a8640E - 0x83c2 15 0xc67e 0xdead32e0 0xc0a864AE 0xc67E 0xc0a8640E - 0x83c3 15 0xc67f 0xdead32f0 0xc0a864AF 0xc67F 0xc0a8640E - 0x83c4 15 0xc680 0xdead3300 0xc0a864B0 0xc680 0xc0a8640E - 0x83c5 15 0xc681 0xdead3310 0xc0a864B1 0xc681 0xc0a8640D - 0x83c6 15 0xc682 0xdead3320 0xc0a864b2 0xc682 0xc0a8640D - 0x83c7 15 0xc683 0xdead3330 0xc0a864b3 0xc683 0xc0a8640D - 0x83c8 15 0xc684 0xdead3340 0xc0a864b4 0xc684 0xc0a8640D - 0x83c9 15 0xc685 0xdead3350 0xc0a864b5 0xc685 0xc0a8640D - 0x83ca 15 0xc686 0xdead3360 0xc0a864b6 0xc686 0xc0a8640D + 0x8000 15 0xc65B 0xdead8000 0xc0a86480 0xc65B 0xc0a8640F 0 # old cts -lxhadeb05 + 0x8100 15 0xc651 0xdead8100 0xc0a86481 0xc651 0xc0a8640E 0 # mdc old? lxhadeb04 + 0x8110 15 0xc652 0xdead8110 0xc0a86482 0xc652 0xc0a8640E 0 # mdc old lxhadeb04 + 0x8400 15 0xc656 0xdead8400 0xc0a86486 0xc656 0xc0a8640F 0 # rpc lxhadeb05 + 0x8410 15 0xc657 0xdead8410 0xc0a86487 0xc657 0xc0a8640F 0 # rpc lxhadeb05 + 0x8420 15 0xc658 0xdead8420 0xc0a86488 0xc658 0xc0a8640F 0 # rpc old lxhadeb05 + 0x8600 15 0xc659 0xdead8600 0xc0a86489 0xc659 0xc0a8640F 0 # tof lxhadeb05 + 0x8700 15 0xc65A 0xdead8700 0xc0a8648A 0xc65A 0xc0a8640F 0 # fw lxhadeb05 + 0x8800 15 0xc650 0xdead8800 0xc0a8648B 0xc650 0xc0a8640F 0 # central-cts lxhadeb05 + 0x8880 15 0xc65D 0xdead8A00 0xc0a8648D 0xc65D 0xc0a8640D 2 # start - lxhadeb03 + 0x8890 15 0xc65F 0xdead8890 0xc0a8648F 0xc65F 0xc0a8640D 2 # veto lxhadeb03 + 0x8900 15 0xc65C 0xdead8900 0xc0a8648C 0xc65C 0xc0a8640D 2 # pion1 lxhadeb03 + 0x8910 15 0xc65E 0xdead8910 0xc0a8648E 0xc65E 0xc0a8640D 2 # pion2 lxhadeb03 + 0x1000 15 0xc660 0xdead1000 0xc0a86490 0xc660 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1010 15 0xc661 0xdead1010 0xc0a86491 0xc661 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1020 15 0xc662 0xdead1020 0xc0a86492 0xc662 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1030 15 0xc663 0xdead1030 0xc0a86493 0xc663 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1040 15 0xc664 0xdead1040 0xc0a86494 0xc664 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1050 15 0xc665 0xdead1050 0xc0a86495 0xc665 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1100 15 0xc666 0xdead1100 0xc0a86496 0xc666 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1110 15 0xc667 0xdead1110 0xc0a86497 0xc667 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1120 15 0xc668 0xdead1120 0xc0a86498 0xc668 0xc0a8640C 0 # mdc - lxhadeb02 + 0x1130 15 0xc669 0xdead1130 0xc0a86499 0xc669 0xc0a8640D 0 # mdc - lxhadeb03 + 0x1140 15 0xc66A 0xdead1140 0xc0a8649A 0xc66A 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1150 15 0xc66B 0xdead1150 0xc0a8649B 0xc66B 0xc0a8640E 0 # mdc - lxhadeb04 + 0x1160 15 0xc66C 0xdead1160 0xc0a8649C 0xc66C 0xc0a8640E 0 # mdc - lxhadeb04 + 0x8a00 15 0xc676 0xdead3260 0xc0a864A6 0xc676 0xc0a8640D 1 # ecal- all to lxhadeb03 + 0x8a01 15 0xc677 0xdead3270 0xc0a864A7 0xc677 0xc0a8640D 1 # ecal- all to lxhadeb03 + 0x8a02 15 0xc678 0xdead3280 0xc0a864A8 0xc678 0xc0a8640D 1 # ecal- all to lxhadeb03 + 0x8a03 15 0xc679 0xdead3290 0xc0a864A9 0xc679 0xc0a8640D 1 # ecal- all to lxhadeb03 + 0x8a04 15 0xc67a 0xdead32a0 0xc0a864AA 0xc67A 0xc0a8640D 1 # ecal- all to lxhadeb03 + 0x8a05 15 0xc67b 0xdead32b0 0xc0a864AB 0xc67B 0xc0a8640D 1 # ecal- all to lxhadeb03 + 0x83c0 15 0xc67c 0xdead32c0 0xc0a864AC 0xc67C 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c1 15 0xc67d 0xdead32d0 0xc0a864AD 0xc67D 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c2 15 0xc67e 0xdead32e0 0xc0a864AE 0xc67E 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c3 15 0xc67f 0xdead32f0 0xc0a864AF 0xc67F 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c4 15 0xc680 0xdead3300 0xc0a864B0 0xc680 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c5 15 0xc681 0xdead3310 0xc0a864B1 0xc681 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c6 15 0xc682 0xdead3320 0xc0a864b2 0xc682 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c7 15 0xc683 0xdead3330 0xc0a864b3 0xc683 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c8 15 0xc684 0xdead3340 0xc0a864b4 0xc684 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83c9 15 0xc685 0xdead3350 0xc0a864b5 0xc685 0xc0a8640C 1 # rich - all to lxhadeb02 + 0x83ca 15 0xc686 0xdead3360 0xc0a864b6 0xc686 0xc0a8640C 1 # rich - all to lxhadeb02 @@ -904,50 +904,50 @@ # 0x8410 15 0xc657 0xdead8410 0xc0a86487 0xc657 0xc0a8640E # 0x8420 15 0xc658 0xdead8420 0xc0a86488 0xc658 0xc0a8640E # 0x8600 15 0xc659 0xdead8600 0xc0a86489 0xc659 0xc0a8640E -# 0x8700 15 0xc65A 0xdead8700 0xc0a8648A 0xc65A 0xc0a8640E -# 0x8800 15 0xc650 0xdead8800 0xc0a8648B 0xc650 0xc0a8640E -# 0x8900 15 0xc65C 0xdead8900 0xc0a8648C 0xc65C 0xc0a8640E -# 0x8880 15 0xc65D 0xdead8A00 0xc0a8648D 0xc65D 0xc0a8640E -# 0x8890 15 0xc65F 0xdead8890 0xc0a8648F 0xc65F 0xc0a8640E -# 0x8910 15 0xc65E 0xdead8910 0xc0a8648E 0xc65E 0xc0a8640E -# 0x1000 15 0xc660 0xdead1000 0xc0a86490 0xc660 0xc0a8640E -# 0x1010 15 0xc661 0xdead1010 0xc0a86491 0xc661 0xc0a8640E -# 0x1020 15 0xc662 0xdead1020 0xc0a86492 0xc662 0xc0a8640E -# 0x1030 15 0xc663 0xdead1030 0xc0a86493 0xc663 0xc0a8640E -# 0x1040 15 0xc664 0xdead1040 0xc0a86494 0xc664 0xc0a8640E -# 0x1050 15 0xc665 0xdead1050 0xc0a86495 0xc665 0xc0a8640E -# 0x1100 15 0xc666 0xdead1100 0xc0a86496 0xc666 0xc0a8640E -# 0x1110 15 0xc667 0xdead1110 0xc0a86497 0xc667 0xc0a8640E -# 0x1120 15 0xc668 0xdead1120 0xc0a86498 0xc668 0xc0a8640E -# 0x1130 15 0xc669 0xdead1130 0xc0a86499 0xc669 0xc0a8640E -# 0x1140 15 0xc66A 0xdead1140 0xc0a8649A 0xc66A 0xc0a8640E -# 0x1150 15 0xc66B 0xdead1150 0xc0a8649B 0xc66B 0xc0a8640E -# 0x1160 15 0xc66C 0xdead1160 0xc0a8649C 0xc66C 0xc0a8640E -# 0x3200 15 0xc670 0xdead3200 0xc0a864A0 0xc670 0xc0a8640E -# 0x3210 15 0xc671 0xdead3210 0xc0a864A1 0xc671 0xc0a8640E -# 0x3220 15 0xc672 0xdead3220 0xc0a864A2 0xc672 0xc0a8640E -# 0x3230 15 0xc673 0xdead3230 0xc0a864A3 0xc673 0xc0a8640E -# 0x3240 15 0xc674 0xdead3240 0xc0a864A4 0xc674 0xc0a8640E -# 0x3250 15 0xc675 0xdead3250 0xc0a864A5 0xc675 0xc0a8640E - - - - - -# Dest MAC Dest MAC Dest IP Src MAC Packet Size -# Hub # Type # C0 # C1 # C2 # C5 # C8 # -##################################################################################### - 0xff7f 100 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 #lxhadeb05, EB0 00:0e:1e:03:11:e6 192.168.100.15 - 0xff7f 101 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 #lxhadeb02, EB1 00:1b:21:55:3e:1e 192.168.100.12 - 0xff7f 102 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 #lxhadeb03, EB2 00:1b:21:55:06:8a 192.168.100.13 - 0xff7f 103 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 #lxhadeb04, EB3 00:1b:21:29:b7:c4 192.168.100.14 - 0xff7f 104 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 - 0xff7f 105 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 - 0xff7f 106 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 - 0xff7f 107 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 - 0xff7f 108 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 - 0xff7f 109 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 - 0xff7f 110 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 +# 0x8700 15 0xc65A 0xdead8700 0xc0a8648A 0xc65A 0xc0a8640E +# 0x8800 15 0xc650 0xdead8800 0xc0a8648B 0xc650 0xc0a8640E +# 0x8900 15 0xc65C 0xdead8900 0xc0a8648C 0xc65C 0xc0a8640E +# 0x8880 15 0xc65D 0xdead8A00 0xc0a8648D 0xc65D 0xc0a8640E +# 0x8890 15 0xc65F 0xdead8890 0xc0a8648F 0xc65F 0xc0a8640E +# 0x8910 15 0xc65E 0xdead8910 0xc0a8648E 0xc65E 0xc0a8640E +# 0x1000 15 0xc660 0xdead1000 0xc0a86490 0xc660 0xc0a8640E +# 0x1010 15 0xc661 0xdead1010 0xc0a86491 0xc661 0xc0a8640E +# 0x1020 15 0xc662 0xdead1020 0xc0a86492 0xc662 0xc0a8640E +# 0x1030 15 0xc663 0xdead1030 0xc0a86493 0xc663 0xc0a8640E +# 0x1040 15 0xc664 0xdead1040 0xc0a86494 0xc664 0xc0a8640E +# 0x1050 15 0xc665 0xdead1050 0xc0a86495 0xc665 0xc0a8640E +# 0x1100 15 0xc666 0xdead1100 0xc0a86496 0xc666 0xc0a8640E +# 0x1110 15 0xc667 0xdead1110 0xc0a86497 0xc667 0xc0a8640E +# 0x1120 15 0xc668 0xdead1120 0xc0a86498 0xc668 0xc0a8640E +# 0x1130 15 0xc669 0xdead1130 0xc0a86499 0xc669 0xc0a8640E +# 0x1140 15 0xc66A 0xdead1140 0xc0a8649A 0xc66A 0xc0a8640E +# 0x1150 15 0xc66B 0xdead1150 0xc0a8649B 0xc66B 0xc0a8640E +# 0x1160 15 0xc66C 0xdead1160 0xc0a8649C 0xc66C 0xc0a8640E +# 0x3200 15 0xc670 0xdead3200 0xc0a864A0 0xc670 0xc0a8640E +# 0x3210 15 0xc671 0xdead3210 0xc0a864A1 0xc671 0xc0a8640E +# 0x3220 15 0xc672 0xdead3220 0xc0a864A2 0xc672 0xc0a8640E +# 0x3230 15 0xc673 0xdead3230 0xc0a864A3 0xc673 0xc0a8640E +# 0x3240 15 0xc674 0xdead3240 0xc0a864A4 0xc674 0xc0a8640E +# 0x3250 15 0xc675 0xdead3250 0xc0a864A5 0xc675 0xc0a8640E + + + + + +# Dest MAC Dest MAC Dest IP Src MAC Packet Size +# Hub # Type # C0 # C1 # C2 # C5 # C8 # +##################################################################################### + 0xff7f 100 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 #lxhadeb05, EB0 00:1b:21:57:b0:95 + 0xff7f 101 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 #lxhadeb02, EB1 00:1b:21:55:3e:1e + 0xff7f 102 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 #lxhadeb03, EB2 00:1b:21:55:06:8a + 0xff7f 103 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 #lxhadeb04, EB3 00:1b:21:29:b7:c4 + 0xff7f 104 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 + 0xff7f 105 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 + 0xff7f 106 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 + 0xff7f 107 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 + 0xff7f 108 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 + 0xff7f 109 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 + 0xff7f 110 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 0xff7f 111 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 0xff7f 112 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 0xff7f 113 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 @@ -956,40 +956,51 @@ # 0xff7f 115 0x4877f487 0x0030 0xc0a86432 0x0230 0x0578 #lxhadesdaq # JAM2016: for DABC-BNET the destination ips have to be set here for individual hubs # the ip entries in above table for eb15 needs to match this to configure EBs! - 0x8000 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x8100 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x8110 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x8300 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x8310 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x8320 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x8400 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # 0xc0a8640C lxhadeb02 - 0x8410 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # 0xc0a8640C lxhadeb02 - 0x8420 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # 0xc0a8640C lxhadeb02 - 0x8600 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # 0xc0a8640C lxhadeb02 - 0x8700 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # 0xc0a8640C lxhadeb02 - 0x8800 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x8900 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x8880 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x8890 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x8910 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x1000 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x1010 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x1020 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x1030 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # 0xc0a8640D lxhadeb03 - 0x1040 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # 0xc0a8640E lxhadeb04 - 0x1050 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # 0xc0a8640E lxhadeb04 - 0x1100 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # 0xc0a8640E lxhadeb04 - 0x1110 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # 0xc0a8640E lxhadeb04 - 0x1120 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x1130 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x1140 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x1150 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x1160 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x3200 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x3210 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x3220 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x3230 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x3240 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - 0x3250 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # 0xc0a8640F lxhadeb05 - - + 0x8000 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # old cts -lxhadeb05 + 0x8100 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc old? lxhadeb04 + 0x8110 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc old lxhadeb04 + 0x8400 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # rpc lxhadeb05 + 0x8410 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # rpc lxhadeb05 + 0x8420 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # rpc old lxhadeb05 + 0x8600 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # tof lxhadeb05 + 0x8700 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # fw lxhadeb05 + 0x8800 115 0x2157b095 0x001B 0xc0a8640F 0x0230 0x0578 # central-cts lxhadeb05 + 0x8880 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # start - lxhadeb03 + 0x8890 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # veto lxhadeb03 + 0x8900 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # pion1 lxhadeb03 + 0x8910 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # pion2 lxhadeb03 + 0x1000 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1010 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1020 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1030 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1040 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1050 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1100 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1110 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1120 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # mdc - lxhadeb02 - dummy if rich is off + 0x1130 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # mdc - lxhadeb03 - dummy if ecal is off + 0x1140 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1150 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x1160 115 0x2129b7c4 0x001B 0xc0a8640E 0x0230 0x0578 # mdc - lxhadeb04 + 0x8a00 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # ecal- all to lxhadeb03 + 0x8a01 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # ecal- all to lxhadeb03 + 0x8a02 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # ecal- all to lxhadeb03 + 0x8a03 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # ecal- all to lxhadeb03 + 0x8a04 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # ecal- all to lxhadeb03 + 0x8a05 115 0x2155068A 0x001B 0xc0a8640D 0x0230 0x0578 # ecal- all to lxhadeb03 + 0x83c0 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c1 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c2 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c3 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c4 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c5 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c6 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c7 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c8 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83c9 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + 0x83ca 115 0x21553E1E 0x001B 0xc0a8640C 0x0230 0x0578 # rich - all to lxhadeb02 + + + + + diff --git a/mdc/addresses_oep.db b/mdc/addresses_oep.db index 69f0b36..cdcca80 100644 --- a/mdc/addresses_oep.db +++ b/mdc/addresses_oep.db @@ -285,10 +285,11 @@ 0x222b 301 1 12 0 # exchange 2010-08-03, no light from FOT on 426 0x222c 238 1 12 0 0x222d 054 1 12 0 -# 0x222e 381 1 12 0 # original before 14.6.2017 -# 0x222f 155 1 12 0 -0x222f 381 1 12 0 # switched e <--> f - for testchamber readout with short MBO 14.6.2017 -0x222e 155 1 12 0 +#0x222e 381 1 12 0 # original before 14.6.2017 +0x222e 113 1 12 0 #newOEP, replaced 11.4.2018 +0x222f 155 1 12 0 +#0x222f 381 1 12 0 # switched e <--> f - for testchamber readout with short MBO 14.6.2017 +#0x222e 155 1 12 0 #old setting! ################################################### diff --git a/rich/addresses_concentrator.db b/rich/addresses_concentrator.db new file mode 120000 index 0000000..bd98f57 --- /dev/null +++ b/rich/addresses_concentrator.db @@ -0,0 +1 @@ +addresses_concentrator.db_20180509 \ No newline at end of file diff --git a/rpc/utilities/remTestSignalS1L.sh b/rpc/utilities/remTestSignalS1L.sh deleted file mode 100755 index f5654f8..0000000 --- a/rpc/utilities/remTestSignalS1L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp059 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp067 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp110 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp056 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' diff --git a/rpc/utilities/remTestSignalS2L.sh b/rpc/utilities/remTestSignalS2L.sh deleted file mode 100755 index b856cf2..0000000 --- a/rpc/utilities/remTestSignalS2L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp094 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp085 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp065 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp063 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' diff --git a/rpc/utilities/remTestSignalS3L.sh b/rpc/utilities/remTestSignalS3L.sh deleted file mode 100755 index 361a60a..0000000 --- a/rpc/utilities/remTestSignalS3L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp089 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp031 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp040 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp074 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' diff --git a/rpc/utilities/remTestSignalS4L.sh b/rpc/utilities/remTestSignalS4L.sh deleted file mode 100755 index 43bec0f..0000000 --- a/rpc/utilities/remTestSignalS4L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp091 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp080 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp078 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp122 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' diff --git a/rpc/utilities/remTestSignalS5L.sh b/rpc/utilities/remTestSignalS5L.sh deleted file mode 100755 index c3a4ea3..0000000 --- a/rpc/utilities/remTestSignalS5L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp054 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp053 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp052 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp051 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' diff --git a/rpc/utilities/remTestSignalS6L.sh b/rpc/utilities/remTestSignalS6L.sh deleted file mode 100755 index 06734d4..0000000 --- a/rpc/utilities/remTestSignalS6L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp092 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp083 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp075 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' -command_client.pl -e etraxp061 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400000' diff --git a/rpc/utilities/remTestSignalSX.sh b/rpc/utilities/remTestSignalSX.sh deleted file mode 100755 index 7856180..0000000 --- a/rpc/utilities/remTestSignalSX.sh +++ /dev/null @@ -1,6 +0,0 @@ -remTestSignalS1L.sh -remTestSignalS2L.sh -remTestSignalS3L.sh -remTestSignalS4L.sh -remTestSignalS5L.sh -remTestSignalS6L.sh diff --git a/rpc/utilities/remTestSignalSXL.sh b/rpc/utilities/remTestSignalSXL.sh deleted file mode 100644 index 7856180..0000000 --- a/rpc/utilities/remTestSignalSXL.sh +++ /dev/null @@ -1,6 +0,0 @@ -remTestSignalS1L.sh -remTestSignalS2L.sh -remTestSignalS3L.sh -remTestSignalS4L.sh -remTestSignalS5L.sh -remTestSignalS6L.sh diff --git a/rpc/utilities/setTestSignalS1L.sh b/rpc/utilities/setTestSignalS1L.sh deleted file mode 100755 index 6476794..0000000 --- a/rpc/utilities/setTestSignalS1L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp059 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp067 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp110 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp056 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' diff --git a/rpc/utilities/setTestSignalS2L.sh b/rpc/utilities/setTestSignalS2L.sh deleted file mode 100755 index 4189973..0000000 --- a/rpc/utilities/setTestSignalS2L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp094 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp085 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp065 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp063 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' diff --git a/rpc/utilities/setTestSignalS3L.sh b/rpc/utilities/setTestSignalS3L.sh deleted file mode 100755 index 30bb677..0000000 --- a/rpc/utilities/setTestSignalS3L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp089 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp031 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp040 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp074 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' diff --git a/rpc/utilities/setTestSignalS4L.sh b/rpc/utilities/setTestSignalS4L.sh deleted file mode 100755 index 190191b..0000000 --- a/rpc/utilities/setTestSignalS4L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp091 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp080 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp078 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp122 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' diff --git a/rpc/utilities/setTestSignalS5L.sh b/rpc/utilities/setTestSignalS5L.sh deleted file mode 100755 index a6fcb71..0000000 --- a/rpc/utilities/setTestSignalS5L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp054 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp053 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp052 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp051 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' diff --git a/rpc/utilities/setTestSignalS5R.sh b/rpc/utilities/setTestSignalS5R.sh deleted file mode 100755 index 4e75773..0000000 --- a/rpc/utilities/setTestSignalS5R.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp054 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x4000CC' -command_client.pl -e etraxp053 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x4000CC' -command_client.pl -e etraxp052 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x4000CC' -command_client.pl -e etraxp051 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x4000CC' diff --git a/rpc/utilities/setTestSignalS6L.sh b/rpc/utilities/setTestSignalS6L.sh deleted file mode 100755 index 89f9b49..0000000 --- a/rpc/utilities/setTestSignalS6L.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp092 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp083 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp075 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' -command_client.pl -e etraxp061 -c '/home/hadaq/bin/rw_trbv2 --trb w 0 c2 0x400033' diff --git a/rpc/utilities/setTestSignalSX.sh b/rpc/utilities/setTestSignalSX.sh deleted file mode 100755 index 53deb09..0000000 --- a/rpc/utilities/setTestSignalSX.sh +++ /dev/null @@ -1,6 +0,0 @@ -setTestSignalS1L.sh -setTestSignalS2L.sh -setTestSignalS3L.sh -setTestSignalS4L.sh -setTestSignalS5L.sh -setTestSignalS6L.sh diff --git a/rpc/utilities/setTestSignalSXL.sh b/rpc/utilities/setTestSignalSXL.sh deleted file mode 100644 index 53deb09..0000000 --- a/rpc/utilities/setTestSignalSXL.sh +++ /dev/null @@ -1,6 +0,0 @@ -setTestSignalS1L.sh -setTestSignalS2L.sh -setTestSignalS3L.sh -setTestSignalS4L.sh -setTestSignalS5L.sh -setTestSignalS6L.sh diff --git a/rpc/utilities/setThresholdsAllFFFF.sh b/rpc/utilities/setThresholdsAllFFFF.sh deleted file mode 100755 index e602981..0000000 --- a/rpc/utilities/setThresholdsAllFFFF.sh +++ /dev/null @@ -1,6 +0,0 @@ -./setThresholdsS1ToFFFF.sh & -./setThresholdsS2ToFFFF.sh & -./setThresholdsS3ToFFFF.sh & -./setThresholdsS4ToFFFF.sh & -./setThresholdsS5ToFFFF.sh & -./setThresholdsS6ToFFFF.sh diff --git a/rpc/utilities/setThresholdsAll_b.sh b/rpc/utilities/setThresholdsAll_b.sh deleted file mode 100755 index 1006e81..0000000 --- a/rpc/utilities/setThresholdsAll_b.sh +++ /dev/null @@ -1,6 +0,0 @@ -./setThresholdsS1_b.sh & -./setThresholdsS2_b.sh & -./setThresholdsS3_b.sh & -./setThresholdsS4_b.sh & -./setThresholdsS5_b.sh & -./setThresholdsS6_b.sh diff --git a/rpc/utilities/setThresholdsAll_c.sh b/rpc/utilities/setThresholdsAll_c.sh deleted file mode 100755 index e69326d..0000000 --- a/rpc/utilities/setThresholdsAll_c.sh +++ /dev/null @@ -1,6 +0,0 @@ -./setThresholdsS1_c.sh & -./setThresholdsS2_c.sh & -./setThresholdsS3_c.sh & -./setThresholdsS4_c.sh & -./setThresholdsS5_c.sh & -./setThresholdsS6_c.sh diff --git a/rpc/utilities/setThresholdsS1.sh b/rpc/utilities/setThresholdsS1.sh index e22bcc2..13b86ad 100755 --- a/rpc/utilities/setThresholdsS1.sh +++ b/rpc/utilities/setThresholdsS1.sh @@ -1,4 +1,4 @@ command_client.pl -e etraxp059 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & command_client.pl -e etraxp067 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp110 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp056 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' +command_client.pl -e etraxp052 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +#command_client.pl -e etraxp056 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' diff --git a/rpc/utilities/setThresholdsS1ToFFFF.sh b/rpc/utilities/setThresholdsS1ToFFFF.sh deleted file mode 100755 index 255a14b..0000000 --- a/rpc/utilities/setThresholdsS1ToFFFF.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp059 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp067 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp068 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp056 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' diff --git a/rpc/utilities/setThresholdsS1_b.sh b/rpc/utilities/setThresholdsS1_b.sh deleted file mode 100755 index 910182f..0000000 --- a/rpc/utilities/setThresholdsS1_b.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp059 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp067 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp068 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp056 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' diff --git a/rpc/utilities/setThresholdsS1_c.sh b/rpc/utilities/setThresholdsS1_c.sh deleted file mode 100755 index c3bbdf4..0000000 --- a/rpc/utilities/setThresholdsS1_c.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp059 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp067 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp068 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp056 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' diff --git a/rpc/utilities/setThresholdsS1_d.sh b/rpc/utilities/setThresholdsS1_d.sh deleted file mode 100755 index ee9462b..0000000 --- a/rpc/utilities/setThresholdsS1_d.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp059 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp067 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp068 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp056 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' diff --git a/rpc/utilities/setThresholdsS2.sh b/rpc/utilities/setThresholdsS2.sh index e1ac5d4..53c96c8 100755 --- a/rpc/utilities/setThresholdsS2.sh +++ b/rpc/utilities/setThresholdsS2.sh @@ -1,4 +1,4 @@ -command_client.pl -e etraxp094 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +#command_client.pl -e etraxp094 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & command_client.pl -e etraxp085 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & command_client.pl -e etraxp065 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & command_client.pl -e etraxp063 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' diff --git a/rpc/utilities/setThresholdsS2ToFFFF.sh b/rpc/utilities/setThresholdsS2ToFFFF.sh deleted file mode 100755 index 8f11093..0000000 --- a/rpc/utilities/setThresholdsS2ToFFFF.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp094 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp085 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp065 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp063 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' diff --git a/rpc/utilities/setThresholdsS2_b.sh b/rpc/utilities/setThresholdsS2_b.sh deleted file mode 100755 index 1f09923..0000000 --- a/rpc/utilities/setThresholdsS2_b.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp094 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp085 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp065 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp063 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' diff --git a/rpc/utilities/setThresholdsS2_c.sh b/rpc/utilities/setThresholdsS2_c.sh deleted file mode 100755 index 77615dc..0000000 --- a/rpc/utilities/setThresholdsS2_c.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp094 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp085 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp065 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp063 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' diff --git a/rpc/utilities/setThresholdsS2_d.sh b/rpc/utilities/setThresholdsS2_d.sh deleted file mode 100755 index 8c7a555..0000000 --- a/rpc/utilities/setThresholdsS2_d.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp094 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp085 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp065 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp063 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' diff --git a/rpc/utilities/setThresholdsS3ToFFFF.sh b/rpc/utilities/setThresholdsS3ToFFFF.sh deleted file mode 100755 index 684b1d5..0000000 --- a/rpc/utilities/setThresholdsS3ToFFFF.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp089 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp031 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp040 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp074 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' diff --git a/rpc/utilities/setThresholdsS3_b.sh b/rpc/utilities/setThresholdsS3_b.sh deleted file mode 100755 index 31c3680..0000000 --- a/rpc/utilities/setThresholdsS3_b.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp089 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp031 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp040 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp074 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' diff --git a/rpc/utilities/setThresholdsS3_c.sh b/rpc/utilities/setThresholdsS3_c.sh deleted file mode 100755 index 659d9e6..0000000 --- a/rpc/utilities/setThresholdsS3_c.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp089 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp031 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp040 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp074 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' diff --git a/rpc/utilities/setThresholdsS3_d.sh b/rpc/utilities/setThresholdsS3_d.sh deleted file mode 100755 index 7de60d1..0000000 --- a/rpc/utilities/setThresholdsS3_d.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp089 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp031 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp040 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp074 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' diff --git a/rpc/utilities/setThresholdsS4.sh b/rpc/utilities/setThresholdsS4.sh index 1f18d28..dff2454 100755 --- a/rpc/utilities/setThresholdsS4.sh +++ b/rpc/utilities/setThresholdsS4.sh @@ -1,4 +1,4 @@ -command_client.pl -e etraxp091 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp080 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp078 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp122 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' +command_client.pl -e etraxp092 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +command_client.pl -e etraxp083 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +command_client.pl -e etraxp075 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +command_client.pl -e etraxp061 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' diff --git a/rpc/utilities/setThresholdsS4ToFFFF.sh b/rpc/utilities/setThresholdsS4ToFFFF.sh deleted file mode 100755 index 8d84333..0000000 --- a/rpc/utilities/setThresholdsS4ToFFFF.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp091 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp080 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp078 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp122 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' diff --git a/rpc/utilities/setThresholdsS4_b.sh b/rpc/utilities/setThresholdsS4_b.sh deleted file mode 100755 index 667e4eb..0000000 --- a/rpc/utilities/setThresholdsS4_b.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp091 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp080 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp078 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp122 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' diff --git a/rpc/utilities/setThresholdsS4_c.sh b/rpc/utilities/setThresholdsS4_c.sh deleted file mode 100755 index 8f6b6d8..0000000 --- a/rpc/utilities/setThresholdsS4_c.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp091 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp080 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp078 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp122 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' diff --git a/rpc/utilities/setThresholdsS4_d.sh b/rpc/utilities/setThresholdsS4_d.sh deleted file mode 100755 index 3e3503f..0000000 --- a/rpc/utilities/setThresholdsS4_d.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp091 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp080 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp078 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp122 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' diff --git a/rpc/utilities/setThresholdsS5.sh b/rpc/utilities/setThresholdsS5.sh index fd9267c..13d2e14 100755 --- a/rpc/utilities/setThresholdsS5.sh +++ b/rpc/utilities/setThresholdsS5.sh @@ -1,4 +1,4 @@ command_client.pl -e etraxp054 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & command_client.pl -e etraxp053 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp052 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +command_client.pl -e etraxp110 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & command_client.pl -e etraxp051 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' diff --git a/rpc/utilities/setThresholdsS5ToFFFF.sh b/rpc/utilities/setThresholdsS5ToFFFF.sh deleted file mode 100755 index 39f01f4..0000000 --- a/rpc/utilities/setThresholdsS5ToFFFF.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp054 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp053 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp052 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp051 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' diff --git a/rpc/utilities/setThresholdsS5_b.sh b/rpc/utilities/setThresholdsS5_b.sh deleted file mode 100755 index d323142..0000000 --- a/rpc/utilities/setThresholdsS5_b.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp054 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp053 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp052 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp051 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' diff --git a/rpc/utilities/setThresholdsS5_c.sh b/rpc/utilities/setThresholdsS5_c.sh deleted file mode 100755 index 1c4b0eb..0000000 --- a/rpc/utilities/setThresholdsS5_c.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp054 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp053 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp052 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp051 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' diff --git a/rpc/utilities/setThresholdsS5_d.sh b/rpc/utilities/setThresholdsS5_d.sh deleted file mode 100755 index 546af1e..0000000 --- a/rpc/utilities/setThresholdsS5_d.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp054 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp053 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp052 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp051 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' diff --git a/rpc/utilities/setThresholdsS6.sh b/rpc/utilities/setThresholdsS6.sh index dff2454..70b401b 100755 --- a/rpc/utilities/setThresholdsS6.sh +++ b/rpc/utilities/setThresholdsS6.sh @@ -1,4 +1,4 @@ -command_client.pl -e etraxp092 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp083 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp075 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & -command_client.pl -e etraxp061 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' +command_client.pl -e etraxp091 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +command_client.pl -e etraxp080 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +command_client.pl -e etraxp078 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' & +#command_client.pl -e etraxp122 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mV' diff --git a/rpc/utilities/setThresholdsS6ToFFFF.sh b/rpc/utilities/setThresholdsS6ToFFFF.sh deleted file mode 100755 index 2adf5c1..0000000 --- a/rpc/utilities/setThresholdsS6ToFFFF.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp092 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp083 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp075 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' -command_client.pl -e etraxp061 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_FFFF' diff --git a/rpc/utilities/setThresholdsS6_b.sh b/rpc/utilities/setThresholdsS6_b.sh deleted file mode 100755 index d26955c..0000000 --- a/rpc/utilities/setThresholdsS6_b.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp092 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp083 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp075 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' & -command_client.pl -e etraxp061 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVb' diff --git a/rpc/utilities/setThresholdsS6_c.sh b/rpc/utilities/setThresholdsS6_c.sh deleted file mode 100755 index c163cde..0000000 --- a/rpc/utilities/setThresholdsS6_c.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp092 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp083 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp075 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' & -command_client.pl -e etraxp061 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVc' diff --git a/rpc/utilities/setThresholdsS6_d.sh b/rpc/utilities/setThresholdsS6_d.sh deleted file mode 100755 index 62ffe80..0000000 --- a/rpc/utilities/setThresholdsS6_d.sh +++ /dev/null @@ -1,4 +0,0 @@ -command_client.pl -e etraxp092 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp083 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp075 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' & -command_client.pl -e etraxp061 -c '/home/hadaq/bin/spi_trbv2_5 /home/hadaq/rpc/configFile_40mVd' diff --git a/rpc/utilities/setTriggerBoardS1.sh b/rpc/utilities/setTriggerBoardS1.sh deleted file mode 100755 index 077cc9f..0000000 --- a/rpc/utilities/setTriggerBoardS1.sh +++ /dev/null @@ -1 +0,0 @@ -command_client.pl -e etraxp059 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_059' diff --git a/rpc/utilities/setTriggerBoardS2.sh b/rpc/utilities/setTriggerBoardS2.sh deleted file mode 100755 index 1c05342..0000000 --- a/rpc/utilities/setTriggerBoardS2.sh +++ /dev/null @@ -1 +0,0 @@ -command_client.pl -e etraxp094 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_094' diff --git a/rpc/utilities/setTriggerBoardS3.sh b/rpc/utilities/setTriggerBoardS3.sh deleted file mode 100755 index b756692..0000000 --- a/rpc/utilities/setTriggerBoardS3.sh +++ /dev/null @@ -1 +0,0 @@ -command_client.pl -e etraxp089 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_089' diff --git a/rpc/utilities/setTriggerBoardS4.sh b/rpc/utilities/setTriggerBoardS4.sh deleted file mode 100755 index d2afd85..0000000 --- a/rpc/utilities/setTriggerBoardS4.sh +++ /dev/null @@ -1 +0,0 @@ -command_client.pl -e etraxp091 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_091' diff --git a/rpc/utilities/setTriggerBoardS5.sh b/rpc/utilities/setTriggerBoardS5.sh deleted file mode 100755 index e6062a6..0000000 --- a/rpc/utilities/setTriggerBoardS5.sh +++ /dev/null @@ -1 +0,0 @@ -command_client.pl -e etraxp054 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_054' diff --git a/rpc/utilities/setTriggerBoardS6.sh b/rpc/utilities/setTriggerBoardS6.sh deleted file mode 100755 index 6f9fe0c..0000000 --- a/rpc/utilities/setTriggerBoardS6.sh +++ /dev/null @@ -1 +0,0 @@ -command_client.pl -e etraxp092 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_092' diff --git a/rpc/utilities/setTriggerBoardSX.sh b/rpc/utilities/setTriggerBoardSX.sh index 211a54f..ddd4a70 100755 --- a/rpc/utilities/setTriggerBoardSX.sh +++ b/rpc/utilities/setTriggerBoardSX.sh @@ -1,6 +1,6 @@ command_client.pl -e etraxp059 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_059' -command_client.pl -e etraxp094 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_094' +#command_client.pl -e etraxp094 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_094' command_client.pl -e etraxp089 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_089' -command_client.pl -e etraxp091 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_091' -command_client.pl -e etraxp054 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_054' command_client.pl -e etraxp092 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_092' +command_client.pl -e etraxp054 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_054' +command_client.pl -e etraxp091 -c 'spi_trbv2_5 /home/hadaq/rpc/triggerBoards/triggerBoard_091' -- 2.43.0