From 70105300b244f5f42e53449f9d97eb0ad09ac792 Mon Sep 17 00:00:00 2001 From: carneirofc Date: Tue, 8 Jun 2021 13:25:22 -0300 Subject: [PATCH 1/9] procServ unix socket fallback --- iocBoot/ioctiming/runProcServ.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/iocBoot/ioctiming/runProcServ.sh b/iocBoot/ioctiming/runProcServ.sh index 7f82a65..a9324ec 100755 --- a/iocBoot/ioctiming/runProcServ.sh +++ b/iocBoot/ioctiming/runProcServ.sh @@ -7,8 +7,9 @@ set +u . ./parseCMDOpts.sh "$@" # Use defaults if not set +UNIX_SOCKET="" if [ -z "${DEVICE_TELNET_PORT}" ]; then - DEVICE_TELNET_PORT="20000" + UNIX_SOCKET="true" fi if [ -z "${DEVICE_TYPE}" ]; then @@ -18,4 +19,8 @@ fi set -u # Run run*.sh scripts with procServ -/usr/local/bin/procServ -f -n TIMING_${DEVICE_TYPE} -i ^C^D ${DEVICE_TELNET_PORT} ./runGenericModule.sh "$@" +if [ "${UNIX_SOCKET}" ]; then + /usr/local/bin/procServ -f -n TIMING_${DEVICE_TYPE} -i ^C^D unix:./procserv.sock ./runGenericModule.sh "$@" +else + /usr/local/bin/procServ -f -n TIMING_${DEVICE_TYPE} -i ^C^D ${DEVICE_TELNET_PORT} ./runGenericModule.sh "$@" +fi From 2e0ce91dbd40f80d9149449153070872c774595c Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 09:32:30 -0300 Subject: [PATCH 2/9] Cleaning unused run scripts --- iocBoot/ioctiming/README | 9 --------- iocBoot/ioctiming/runEVE.sh | 27 --------------------------- iocBoot/ioctiming/runEVG.sh | 27 --------------------------- iocBoot/ioctiming/runEVR.sh | 27 --------------------------- iocBoot/ioctiming/runFOUT.sh | 27 --------------------------- 5 files changed, 117 deletions(-) delete mode 100644 iocBoot/ioctiming/README delete mode 100755 iocBoot/ioctiming/runEVE.sh delete mode 100755 iocBoot/ioctiming/runEVG.sh delete mode 100755 iocBoot/ioctiming/runEVR.sh delete mode 100755 iocBoot/ioctiming/runFOUT.sh diff --git a/iocBoot/ioctiming/README b/iocBoot/ioctiming/README deleted file mode 100644 index 9d7c747..0000000 --- a/iocBoot/ioctiming/README +++ /dev/null @@ -1,9 +0,0 @@ -To start the ioc from this directory execute the command - ../../bin/linux-x86_64/ st.cmd - -Alternatively make the st.cmd file directly executable with - chmod +x st.cmd -and check the executable name on the first line of the st.cmd file - -You may need to change the name of the .dbd file given in the -st.cmd's dbLoadDatabase() command before starting the ioc. diff --git a/iocBoot/ioctiming/runEVE.sh b/iocBoot/ioctiming/runEVE.sh deleted file mode 100755 index e046119..0000000 --- a/iocBoot/ioctiming/runEVE.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -# Source environment -. ./checkEnv.sh - -# Parse command-line options -. ./parseCMDOpts.sh "$@" - -# Check last command return status -if [ $? -ne 0 ]; then - echo "Could not parse command-line options" >&2 - exit 1 -fi - -if [ -z "$IPADDR" ]; then - echo "IP address not set. Please use -i option or set \$IPADDR environment variable" >&2 - exit 3 -fi - -if [ -z "$IPPORT" ]; then - echo "IP port number not set. Please use -p option or set \$IPPORT environment variable" >&2 - exit 4 -fi - -cd "$IOC_BOOT_DIR" - -IPADDR="$IPADDR" IPPORT="$IPPORT" PORT="$PORT" P="$P" R="$R" "$IOC_BIN" stEVE.cmd diff --git a/iocBoot/ioctiming/runEVG.sh b/iocBoot/ioctiming/runEVG.sh deleted file mode 100755 index 413842c..0000000 --- a/iocBoot/ioctiming/runEVG.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -# Source environment -. ./checkEnv.sh - -# Parse command-line options -. ./parseCMDOpts.sh "$@" - -# Check last command return status -if [ $? -ne 0 ]; then - echo "Could not parse command-line options" >&2 - exit 1 -fi - -if [ -z "$IPADDR" ]; then - echo "IP address not set. Please use -i option or set \$IPADDR environment variable" >&2 - exit 3 -fi - -if [ -z "$IPPORT" ]; then - echo "IP port number not set. Please use -p option or set \$IPPORT environment variable" >&2 - exit 4 -fi - -cd "$IOC_BOOT_DIR" - -IPADDR="$IPADDR" IPPORT="$IPPORT" PORT="$PORT" P="$P" R="$R" "$IOC_BIN" stEVG.cmd diff --git a/iocBoot/ioctiming/runEVR.sh b/iocBoot/ioctiming/runEVR.sh deleted file mode 100755 index d68ee6d..0000000 --- a/iocBoot/ioctiming/runEVR.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -# Source environment -. ./checkEnv.sh - -# Parse command-line options -. ./parseCMDOpts.sh "$@" - -# Check last command return status -if [ $? -ne 0 ]; then - echo "Could not parse command-line options" >&2 - exit 1 -fi - -if [ -z "$IPADDR" ]; then - echo "IP address not set. Please use -i option or set \$IPADDR environment variable" >&2 - exit 3 -fi - -if [ -z "$IPPORT" ]; then - echo "IP port number not set. Please use -p option or set \$IPPORT environment variable" >&2 - exit 4 -fi - -cd "$IOC_BOOT_DIR" - -IPADDR="$IPADDR" IPPORT="$IPPORT" PORT="$PORT" P="$P" R="$R" "$IOC_BIN" stEVR.cmd diff --git a/iocBoot/ioctiming/runFOUT.sh b/iocBoot/ioctiming/runFOUT.sh deleted file mode 100755 index 4e17db0..0000000 --- a/iocBoot/ioctiming/runFOUT.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -# Source environment -. ./checkEnv.sh - -# Parse command-line options -. ./parseCMDOpts.sh "$@" - -# Check last command return status -if [ $? -ne 0 ]; then - echo "Could not parse command-line options" >&2 - exit 1 -fi - -if [ -z "$IPADDR" ]; then - echo "IP address not set. Please use -i option or set \$IPADDR environment variable" >&2 - exit 3 -fi - -if [ -z "$IPPORT" ]; then - echo "IP port number not set. Please use -p option or set \$IPPORT environment variable" >&2 - exit 4 -fi - -cd "$IOC_BOOT_DIR" - -IPADDR="$IPADDR" IPPORT="$IPPORT" PORT="$PORT" P="$P" R="$R" "$IOC_BIN" stFOUT.cmd From 19d3a492f3741d7c8d9fafaf46e2ee5d6e121075 Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 09:35:55 -0300 Subject: [PATCH 3/9] removing unused cmd file --- iocBoot/ioctiming/st.cmd | 193 --------------------------------------- 1 file changed, 193 deletions(-) delete mode 100755 iocBoot/ioctiming/st.cmd diff --git a/iocBoot/ioctiming/st.cmd b/iocBoot/ioctiming/st.cmd deleted file mode 100755 index 86233e6..0000000 --- a/iocBoot/ioctiming/st.cmd +++ /dev/null @@ -1,193 +0,0 @@ -#!../../bin/linux-x86_64/timing - -## You may have to change timing to something else -## everywhere it appears in this file - -< envPaths - -# ###### MACRO SUBSTITUTION ###### - -## Naming Convention -epicsEnvSet SEC AS -epicsEnvSet SUB Inj -epicsEnvSet DIS TI -epicsEnvSet GDEV EVG -epicsEnvSet RDEV EVR -epicsEnvSet EDEV EVE -epicsEnvSet FDEV FOUT - -## Number of events recognized by the state machine -# Must NOT be modified -epicsEnvSet EVENT_NUM 16 - -# Enable/disable module lines -epicsEnvSet EVG1_line "" - -epicsEnvSet EVR1_line "#" -epicsEnvSet EVR2_line "#" -epicsEnvSet EVR3_line "#" -epicsEnvSet EVR4_line "#" -epicsEnvSet EVR5_line "#" -epicsEnvSet EVR6_line "#" - -epicsEnvSet EVE1_line "#" -epicsEnvSet EVE2_line "#" -epicsEnvSet EVE3_line "#" -epicsEnvSet EVE4_line "#" - -epicsEnvSet FOUT1_line "" -epicsEnvSet FOUT2_line "#" -epicsEnvSet FOUT3_line "#" -epicsEnvSet FOUT4_line "#" -epicsEnvSet FOUT5_line "#" - -# ################################ - -epicsEnvSet("STREAM_PROTOCOL_PATH", "$(TOP)/timingApp/Db") - -## Register all support components -dbLoadDatabase("${TOP}/dbd/timing.dbd") -timing_registerRecordDeviceDriver pdbbase - -asSetFilename("$(TOP)/timingApp/Db/accessSecurityFile.acf") - -${EVG1_line}drvAsynIPPortConfigure ("EVG1", "10.0.18.32:50111:50111 udp",0,0,0) - -${EVR1_line}drvAsynIPPortConfigure ("EVR1", "10.0.18.65:50111:50111 udp",0,0,0) -${EVR2_line}drvAsynIPPortConfigure ("EVR2", "10.0.18.112:50112:50112 udp",0,0,0) -${EVR3_line}drvAsynIPPortConfigure ("EVR3", "10.0.18.113:50113:50113 udp",0,0,0) -${EVR4_line}drvAsynIPPortConfigure ("EVR4", "10.0.18.114:50114:50114 udp",0,0,0) -${EVR5_line}drvAsynIPPortConfigure ("EVR5", "10.0.18.65:50115:50115 udp",0,0,0) -${EVR6_line}drvAsynIPPortConfigure ("EVR6", "10.0.18.43:50116:50116 udp",0,0,0) - -${EVE1_line}drvAsynIPPortConfigure ("EVE1", "10.0.18.48:50121:50121 udp",0,0,0) -${EVE2_line}drvAsynIPPortConfigure ("EVE2", "10.0.18.32:50122:50122 udp",0,0,0) -${EVE3_line}drvAsynIPPortConfigure ("EVE3", "10.0.18.123:50123:50123 udp",0,0,0) -${EVE4_line}drvAsynIPPortConfigure ("EVE4", "10.0.18.124:50124:50124 udp",0,0,0) - -${FOUT1_line}drvAsynIPPortConfigure ("FOUT1", "10.2.118.35:50116:50116 udp",0,0,0) -${FOUT2_line}drvAsynIPPortConfigure ("FOUT2", "10.0.18.43:50117:50117 udp",0,0,0) -${FOUT3_line}drvAsynIPPortConfigure ("FOUT3", "10.0.18.65:50118:50118 udp",0,0,0) -${FOUT4_line}drvAsynIPPortConfigure ("FOUT4", "10.0.18.65:50118:50118 udp",0,0,0) -${FOUT5_line}drvAsynIPPortConfigure ("FOUT5", "10.0.18.65:50118:50118 udp",0,0,0) - -## Load record instances - -# EVG -${EVG1_line}dbLoadRecords("${TOP}/db/evg.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, PORT=EVG1, ADDR=0, TIMEOUT=2") -${EVG1_line}dbLoadRecords "${TOP}/db/SeqRAM.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1" - -# Events -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=0, desc='Li Inj event', code=0x01, time=100, mode=0, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=1, desc='BO Inj event', code=0x02, time=150, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=2, desc='BO ramp event', code=0x03, time=160, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=3, desc='SI Inj event', code=0x04, time=170, mode=1, transm=0" - -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=4, desc='Diagnostic', code=0x05, time=180, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=5, desc='Undefined', code=0x06, time=190, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=6, desc='Undefined', code=0x07, time=200, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=7, desc='Undefined', code=0x08, time=210, mode=1, transm=0" - -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=8, desc='Undefined', code=0x09, time=220, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=9, desc='Undefined', code=0x0A, time=230, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=10, desc='Undefined', code=0x0B, time=240, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=11, desc='Undefined', code=0x0C, time=250, mode=1, transm=0" - -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=12, desc='Undefined', code=0x0D, time=260, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=13, desc='Undefined', code=0x0E, time=270, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=14, desc='Undefined', code=0x0F, time=280, mode=1, transm=0" -${EVG1_line}dbLoadRecords "${TOP}/db/Events.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=15, desc='Undefined', code=0x10, time=290, mode=1, transm=0" - -# EVR -${EVR1_line}dbLoadRecords("${TOP}/db/evr.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=1, PORT=EVR1, ADDR=0, TIMEOUT=2") -${EVR2_line}dbLoadRecords("${TOP}/db/evr.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=2, PORT=EVR2, ADDR=0, TIMEOUT=2") -${EVR3_line}dbLoadRecords("${TOP}/db/evr.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=3, PORT=EVR3, ADDR=0, TIMEOUT=2") -${EVR4_line}dbLoadRecords("${TOP}/db/evr.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=4, PORT=EVR4, ADDR=0, TIMEOUT=2") -${EVR5_line}dbLoadRecords("${TOP}/db/evr.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=5, PORT=EVR5, ADDR=0, TIMEOUT=2") -${EVR6_line}dbLoadRecords("${TOP}/db/evr.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=6, PORT=EVR6, ADDR=0, TIMEOUT=2") - -# EVE -${EVE1_line}dbLoadRecords("${TOP}/db/eve.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=1, PORT=EVE1, ADDR=0, TIMEOUT=2") -${EVE2_line}dbLoadRecords("${TOP}/db/eve.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=2, PORT=EVE2, ADDR=0, TIMEOUT=2") -${EVE3_line}dbLoadRecords("${TOP}/db/eve.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=3, PORT=EVE3, ADDR=0, TIMEOUT=2") -${EVE4_line}dbLoadRecords("${TOP}/db/eve.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=4, PORT=EVE4, ADDR=0, TIMEOUT=2") - -# FOUT -${FOUT1_line}dbLoadRecords("${TOP}/db/fout.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=1, PORT=FOUT1, ADDR=0, TIMEOUT=2") -${FOUT2_line}dbLoadRecords("${TOP}/db/fout.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=2, PORT=FOUT2, ADDR=0, TIMEOUT=2") -${FOUT3_line}dbLoadRecords("${TOP}/db/fout.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=3, PORT=FOUT3, ADDR=0, TIMEOUT=2") -${FOUT4_line}dbLoadRecords("${TOP}/db/fout.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=4, PORT=FOUT4, ADDR=0, TIMEOUT=2") -${FOUT5_line}dbLoadRecords("${TOP}/db/fout.db", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=5, PORT=FOUT5, ADDR=0, TIMEOUT=2") - -# < save_restore.cmd - -## Run this to trace the stages of iocInit -#traceIocInit - -iocInit - -## Start any sequence programs - -# Module initialization and network status -${EVG1_line}seq sncEVGSetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1" - -# Injection System State Machine -${EVG1_line}seq sncSeqRAM, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, ev_num=${EVENT_NUM}" - -${EVR1_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=1" -${EVR2_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=2" -${EVR3_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=3" -${EVR4_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=4" -${EVR5_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=5" -${EVR6_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=6" - -${EVE1_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=1" -${EVE2_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=2" -${EVE3_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=3" -${EVE4_line}seq sncEVRESetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=4" - -${FOUT1_line}seq sncFOUTSetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=1" -${FOUT2_line}seq sncFOUTSetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=2" -${FOUT3_line}seq sncFOUTSetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=3" -${FOUT4_line}seq sncFOUTSetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=4" -${FOUT5_line}seq sncFOUTSetup, "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=5" - -# Create manual trigger for Autosave -#EVG -${EVG1_line}create_triggered_set("autosave_evg_NOPROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1") -${EVG1_line}create_triggered_set("autosave_ITBL_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1") -${EVG1_line}create_triggered_set("autosave_event0_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=0") -${EVG1_line}create_triggered_set("autosave_event1_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=1") -${EVG1_line}create_triggered_set("autosave_event2_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=2") -${EVG1_line}create_triggered_set("autosave_event3_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=3") -${EVG1_line}create_triggered_set("autosave_event4_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=4") -${EVG1_line}create_triggered_set("autosave_event5_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=5") -${EVG1_line}create_triggered_set("autosave_event6_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=6") -${EVG1_line}create_triggered_set("autosave_event7_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=7") -${EVG1_line}create_triggered_set("autosave_event8_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=8") -${EVG1_line}create_triggered_set("autosave_event9_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=9") -${EVG1_line}create_triggered_set("autosave_event10_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=10") -${EVG1_line}create_triggered_set("autosave_event11_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=11") -${EVG1_line}create_triggered_set("autosave_event12_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=12") -${EVG1_line}create_triggered_set("autosave_event13_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=13") -${EVG1_line}create_triggered_set("autosave_event14_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=14") -${EVG1_line}create_triggered_set("autosave_event15_PROC.req", "${SEC}-${SUB}:${DIS}-${GDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${GDEV}, Idx=1, num=15") - -${EVR1_line}create_triggered_set("autosave_evr1_NOPROC.req", "${SEC}-${SUB}:${DIS}-${RDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=1") -${EVR2_line}create_triggered_set("autosave_evr2_NOPROC.req", "${SEC}-${SUB}:${DIS}-${RDEV}2:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=2") -${EVR3_line}create_triggered_set("autosave_evr3_NOPROC.req", "${SEC}-${SUB}:${DIS}-${RDEV}3:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=3") -${EVR4_line}create_triggered_set("autosave_evr4_NOPROC.req", "${SEC}-${SUB}:${DIS}-${RDEV}4:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=4") -${EVR5_line}create_triggered_set("autosave_evr5_NOPROC.req", "${SEC}-${SUB}:${DIS}-${RDEV}5:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=5") -${EVR6_line}create_triggered_set("autosave_evr6_NOPROC.req", "${SEC}-${SUB}:${DIS}-${RDEV}6:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${RDEV}, Idx=6") - -${EVE1_line}create_triggered_set("autosave_eve1_NOPROC.req", "${SEC}-${SUB}:${DIS}-${EDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=1") -${EVE2_line}create_triggered_set("autosave_eve2_NOPROC.req", "${SEC}-${SUB}:${DIS}-${EDEV}2:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=2") -${EVE3_line}create_triggered_set("autosave_eve3_NOPROC.req", "${SEC}-${SUB}:${DIS}-${EDEV}3:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=3") -${EVE4_line}create_triggered_set("autosave_eve4_NOPROC.req", "${SEC}-${SUB}:${DIS}-${EDEV}4:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${EDEV}, Idx=4") - -${FOUT1_line}create_triggered_set("autosave_fout1_NOPROC.req", "${SEC}-${SUB}:${DIS}-${FDEV}1:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=1") -${FOUT2_line}create_triggered_set("autosave_fout2_NOPROC.req", "${SEC}-${SUB}:${DIS}-${FDEV}2:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=2") -${FOUT3_line}create_triggered_set("autosave_fout3_NOPROC.req", "${SEC}-${SUB}:${DIS}-${FDEV}3:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=3") -${FOUT4_line}create_triggered_set("autosave_fout4_NOPROC.req", "${SEC}-${SUB}:${DIS}-${FDEV}4:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=4") -${FOUT5_line}create_triggered_set("autosave_fout5_NOPROC.req", "${SEC}-${SUB}:${DIS}-${FDEV}5:save_T", "Sec=${SEC}, Sub=${SUB}, Dis=${DIS}, Dev=${FDEV}, Idx=5") - From 8077b17d812700936b977072e6a10394ad209668 Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 10:07:32 -0300 Subject: [PATCH 4/9] cleaning scripts folder, removing systemd files --- scripts/{setup => }/EVE.py | 0 scripts/{setup => }/EVG.py | 0 scripts/{setup => }/EVR.py | 0 scripts/{setup => }/EVRIOCTest.py | 0 .../Find_Modules3.py => Find_Modules.py} | 0 scripts/{setup => }/IOCTest.py | 0 scripts/Makefile | 72 ------------- scripts/{setup => }/event_alias.py | 0 scripts/get-init-system.sh | 20 ---- scripts/setup/Find_Modules.py | 102 ------------------ scripts/systemd/bin/runTiming.sh | 41 ------- .../systemd/etc/sysconfig/timing-epics-ioc | 5 - .../etc/sysconfig/timing-epics-ioc-mapping | 88 --------------- .../etc/systemd/system/timing@.service.in | 22 ---- 14 files changed, 350 deletions(-) rename scripts/{setup => }/EVE.py (100%) rename scripts/{setup => }/EVG.py (100%) rename scripts/{setup => }/EVR.py (100%) rename scripts/{setup => }/EVRIOCTest.py (100%) rename scripts/{setup/Find_Modules3.py => Find_Modules.py} (100%) rename scripts/{setup => }/IOCTest.py (100%) delete mode 100644 scripts/Makefile rename scripts/{setup => }/event_alias.py (100%) delete mode 100755 scripts/get-init-system.sh delete mode 100644 scripts/setup/Find_Modules.py delete mode 100755 scripts/systemd/bin/runTiming.sh delete mode 100644 scripts/systemd/etc/sysconfig/timing-epics-ioc delete mode 100644 scripts/systemd/etc/sysconfig/timing-epics-ioc-mapping delete mode 100644 scripts/systemd/etc/systemd/system/timing@.service.in diff --git a/scripts/setup/EVE.py b/scripts/EVE.py similarity index 100% rename from scripts/setup/EVE.py rename to scripts/EVE.py diff --git a/scripts/setup/EVG.py b/scripts/EVG.py similarity index 100% rename from scripts/setup/EVG.py rename to scripts/EVG.py diff --git a/scripts/setup/EVR.py b/scripts/EVR.py similarity index 100% rename from scripts/setup/EVR.py rename to scripts/EVR.py diff --git a/scripts/setup/EVRIOCTest.py b/scripts/EVRIOCTest.py similarity index 100% rename from scripts/setup/EVRIOCTest.py rename to scripts/EVRIOCTest.py diff --git a/scripts/setup/Find_Modules3.py b/scripts/Find_Modules.py similarity index 100% rename from scripts/setup/Find_Modules3.py rename to scripts/Find_Modules.py diff --git a/scripts/setup/IOCTest.py b/scripts/IOCTest.py similarity index 100% rename from scripts/setup/IOCTest.py rename to scripts/IOCTest.py diff --git a/scripts/Makefile b/scripts/Makefile deleted file mode 100644 index 46a4435..0000000 --- a/scripts/Makefile +++ /dev/null @@ -1,72 +0,0 @@ -TOP = .. -include $(TOP)/configure/CONFIG - -CMDSEP = ; - -SCRIPTS_PREFIX ?= -PWD = $(shell pwd) -SED = sed - -# Prefixes -IOC_NAME ?= -INSTALL_PREFIX ?= -BIN_FILES_PREFIX ?= /usr/local - -# OS information -SERVICE_NAME = $(shell basename $(realpath ${TOP})) -INIT_SYSTEM := $(shell ./get-init-system.sh) -SCRIPTS_FULL_NAME := $(shell cd $(INIT_SYSTEM) && find . -type f \ - \( -iname "*" ! -iname "*.service.in" \)) -SCRIPTS_SERVICE_IN_FULL_NAME := $(shell cd $(INIT_SYSTEM) && find . -type f \ - \( -iname "*.service.in" \)) -# Strip .in suffix -SCRIPTS_SERVICE_FULL_NAME := $(SCRIPTS_SERVICE_IN_FULL_NAME:%.in=%) - -# Strip off a leading ./ -SCRIPTS=$(SCRIPTS_FULL_NAME:./%=%) -SCRIPTS_SERVICE_IN=$(SCRIPTS_SERVICE_IN_FULL_NAME:./%=%) -SCRIPTS_SERVICE=$(SCRIPTS_SERVICE_FULL_NAME:./%=%) - -# Binary files -BIN_FILES_FULL_NAME := $(shell cd ${INIT_SYSTEM} && find bin -type f) -# Strip off a leading ./ -BIN_FILES=$(BIN_FILES_FULL_NAME:./%=%) - -.PHONY: all clean mrproper install uninstall - -all: - -install: scripts_in_gen - $(foreach script,$(SCRIPTS),mkdir -p $(dir ${SCRIPTS_PREFIX}/$(script)) $(CMDSEP)) - $(foreach script,$(SCRIPTS),cp --preserve=mode $(INIT_SYSTEM)/$(script) ${SCRIPTS_PREFIX}/$(script) $(CMDSEP)) - $(foreach bin,$(BIN_FILES),cp --preserve=mode ${INIT_SYSTEM}/$(bin) ${BIN_FILES_PREFIX}/$(bin) $(CMDSEP)) - -uninstall: scripts_in_degen - -$(foreach bin,$(BIN_FILES),rm -f ${BIN_FILES_PREFIX}/$(bin) $(CMDSEP)) - $(foreach script,$(SCRIPTS),rm -f ${SCRIPTS_PREFIX}/$(script) $(CMDSEP)) - -scripts_in_gen: - $(foreach script,$(SCRIPTS_SERVICE_IN), \ - sed -e "\ - s##$(INSTALL_PREFIX)#g; \ - s##$(IOC_NAME)#g; \ - " $(PWD)/$(INIT_SYSTEM)/$(script) > $(PWD)/$(INIT_SYSTEM)/$(script:%.in=%) \ - $(CMDSEP) \ - ) - -scripts_in_degen: - $(foreach script,$(SCRIPTS_SERVICE_IN), \ - rm -f $(PWD)/$(INIT_SYSTEM)/$(script:%.in=%) \ - $(CMDSEP) \ - ) - -realuninstall: uninstall - -clean: - -realclean: clean - -distclean: realclean realuninstall - -mrproper: clean - diff --git a/scripts/setup/event_alias.py b/scripts/event_alias.py similarity index 100% rename from scripts/setup/event_alias.py rename to scripts/event_alias.py diff --git a/scripts/get-init-system.sh b/scripts/get-init-system.sh deleted file mode 100755 index b774128..0000000 --- a/scripts/get-init-system.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash - -# Based from the stackexchange answer -# http://unix.stackexchange.com/questions/18209/detect-init-system-using-the-shell - -IS_UPSTART=$(/sbin/init --version 2> /dev/null) - -if [[ ${IS_UPSTART} =~ upstart ]]; then - echo "upstart"; -elif [[ `systemctl` =~ -\.mount ]]; then - echo "systemd"; -# If on chroot the above alternative will not work. -# Try poking a few systemd directories instead -elif [[ -f /usr/lib/systemd || -f /lib/systemd/systemd ]]; then - echo "systemd"; -elif [[ -f /etc/init.d/cron && ! -h /etc/init.d/cron ]]; then - echo "sysv-init"; -else - echo "?"; -fi diff --git a/scripts/setup/Find_Modules.py b/scripts/setup/Find_Modules.py deleted file mode 100644 index 1f28c6d..0000000 --- a/scripts/setup/Find_Modules.py +++ /dev/null @@ -1,102 +0,0 @@ -########################### Run in python 2 ########################### - -# Find timing modules in a subnetwork - -import numpy as np -import time -import socket -import sys -import subprocess -import nmap - -WAIT = 0.01 -NrTry = 3 - -if (len(sys.argv) == 1): - ipsub_list = ['10.0.18','10.0.17','10.0.21','10.0.38'] -else: - ipsub_list = sys.argv[1:] - -port_ini = 50100 -port_end = 50150 - -f = open('Find_Modules.log','w') - -def FindMod(UDP_IP, UDP_PORT): - # Read - funsel = [16, 17, 18, 32] - try: - sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - sock.settimeout(WAIT) - sock.bind(('', UDP_PORT)) - except: - ok = 0 - addr = ['0.0.0.0', 0] - regA = regB = regC = [0, 0, 0, 0] - return ok, regA, regB, regC, addr - - add = 63 - ok = 0 - cmd = chr(0x80|add)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0)+chr(0) - - for i in range(NrTry): - sock.sendto(cmd, (UDP_IP, UDP_PORT)) - try: - data, addr = sock.recvfrom(13) # buffer size is 13 bytes - regA = [(ord(data[1])),(ord(data[2])),(ord(data[3])),(ord(data[4]))] - regB = [(ord(data[5])),(ord(data[6])),(ord(data[7])),(ord(data[8]))] - regC = [(ord(data[9])),(ord(data[10])),(ord(data[11])),(ord(data[12]))] - if (regC[3] in funsel): - ok = 1 - except: - ok = 0 - addr = ['0.0.0.0', 0] - regA = regB = regC = [0, 0, 0, 0] - if (ok == 1): - break - - return ok, regA, regB, regC, addr - -port_list = range(port_ini,port_end+1) -start_time = time.time() - -for ipsub in ipsub_list: - print 'Searching for timing modules in subnet', ipsub, 'and port range', port_ini, 'to', port_end - - nm = nmap.PortScanner() - nm.scan(ipsub+'.2-254', '9999') # scan host ipsub.2-254, port 9999 - - for host in nm.all_hosts(): - prod = nm[host]['tcp'][9999]['product'] - port_state = nm[host]['tcp'][9999]['state'] - if (('Lantronix' in prod) & (port_state == 'open')): - mac = nm[host]['tcp'][9999]['extrainfo'].split(' ')[1] - else: - continue - - ok = 0 - for port in port_list: - ok, a, b, c, addr = FindMod(host, port) - if ((ok==1) & (c[3]!=0)): - if (c[3]==32): - print 'EVE ip: ', host, 'port:', port, 'mac:', mac - f.write('EVE ip: ' + host + ' port: ' + str(port) + ' mac: ' + mac + '\n') - elif (c[3]==16): - print 'FOUT ip:', host, 'port:', port, 'mac:', mac - f.write('FOUT ip: ' + host + ' port: ' + str(port) + ' mac: ' + mac + '\n') - elif (c[3]==17): - print 'EVR ip: ', host, 'port:', port, 'mac:', mac - f.write('EVR ip: ' + host + ' port: ' + str(port) + ' mac: ' + mac + '\n') - elif (c[3]==18): - print 'EVG ip: ', host, 'port:', port, 'mac:', mac - f.write('EVG ip: ' + host + ' port: ' + str(port) + ' mac: ' + mac + '\n') - break - - if (ok == 0): - print 'NO ANS ip: ', host, 'mac:', mac - f.write('NO ANS ip: ' + host + ' mac: ' + mac + '\n') - -elapsed_time = time.time() - start_time -print 'Elapsed time:', elapsed_time, 'sec' - -f.close() diff --git a/scripts/systemd/bin/runTiming.sh b/scripts/systemd/bin/runTiming.sh deleted file mode 100755 index d7ee3cf..0000000 --- a/scripts/systemd/bin/runTiming.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env bash - -set -u - -if [ -z "$TIMING_INSTANCE" ]; then - echo "TIMING_INSTANCE environment variable is not set." >&2 - exit 1 -fi - -export TIMING_CURRENT_PV_AREA_PREFIX=TIMING_${TIMING_INSTANCE}_PV_AREA_PREFIX -export TIMING_CURRENT_PV_DEVICE_PREFIX=TIMING_${TIMING_INSTANCE}_PV_DEVICE_PREFIX -export TIMING_CURRENT_DEVICE_IP=TIMING_${TIMING_INSTANCE}_DEVICE_IP -export TIMING_CURRENT_DEVICE_PORT=TIMING_${TIMING_INSTANCE}_DEVICE_PORT -export TIMING_CURRENT_DEVICE_TELNET_PORT_SUFFIX=TIMING_${TIMING_INSTANCE}_TELNET_PORT_SUFFIX -# Only works with bash -export TIMING_PV_AREA_PREFIX=${!TIMING_CURRENT_PV_AREA_PREFIX} -export TIMING_PV_DEVICE_PREFIX=${!TIMING_CURRENT_PV_DEVICE_PREFIX} -export TIMING_DEVICE_IP=${!TIMING_CURRENT_DEVICE_IP} -export TIMING_DEVICE_PORT=${!TIMING_CURRENT_DEVICE_PORT} -export TIMING_DEVICE_TELNET_PORT=${PROCSERV_TIMING_PORT_PREFIX}${!TIMING_CURRENT_DEVICE_TELNET_PORT_SUFFIX} - -if [ -z "${TIMING_CURRENT_DEVICE_TELNET_PORT_SUFFIX}" ]; then - echo "TELNET port is not set." >&2 - exit 1 -fi - -TIMING_TYPE=$(echo ${TIMING_INSTANCE} | grep -Eo "[^0-9]+"); - -if [ -z "$TIMING_TYPE" ]; then - echo "Device instance is invalid. Valid device options are: EVG, EVE, EVR and FOUT." >&2 - echo "The instance format is: . Example: EVG1" >&2 - exit 5 -fi - -./runProcServ.sh \ - -t "${TIMING_DEVICE_TELNET_PORT}" \ - -P "${TIMING_PV_AREA_PREFIX}" \ - -R "${TIMING_PV_DEVICE_PREFIX}" \ - -i "${TIMING_DEVICE_IP}" \ - -p "${TIMING_DEVICE_PORT}" \ - -d "${TIMING_INSTANCE}" diff --git a/scripts/systemd/etc/sysconfig/timing-epics-ioc b/scripts/systemd/etc/sysconfig/timing-epics-ioc deleted file mode 100644 index 9e58fa1..0000000 --- a/scripts/systemd/etc/sysconfig/timing-epics-ioc +++ /dev/null @@ -1,5 +0,0 @@ -# General configuration -EPICS_HOST_ARCH=linux-x86_64 -PROCSERV_TIMING_PORT_PREFIX=400 -EPICS_CA_MAX_ARRAY_BYTES=50000000 -PATH=/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/opt/epics/base/bin/linux-x86_64 diff --git a/scripts/systemd/etc/sysconfig/timing-epics-ioc-mapping b/scripts/systemd/etc/sysconfig/timing-epics-ioc-mapping deleted file mode 100644 index e9a3f2e..0000000 --- a/scripts/systemd/etc/sysconfig/timing-epics-ioc-mapping +++ /dev/null @@ -1,88 +0,0 @@ -# --- EVG --- - -TIMING_EVG1_PV_AREA_PREFIX=RA-RaMO: -TIMING_EVG1_PV_DEVICE_PREFIX=TI-EVG: -TIMING_EVG1_DEVICE_IP=10.128.150.107 -TIMING_EVG1_DEVICE_PORT=50116 -TIMING_EVG1_TELNET_PORT_SUFFIX=01 - -# --- EVR Linac --- - -TIMING_EVR1_PV_AREA_PREFIX=LA-RFH01RACK2: -TIMING_EVR1_PV_DEVICE_PREFIX=TI-EVR: -TIMING_EVR1_DEVICE_IP=10.128.150.95 -TIMING_EVR1_DEVICE_PORT=50100 -TIMING_EVR1_TELNET_PORT_SUFFIX=02 - -# --- EVE Linac --- - -TIMING_EVE1_PV_AREA_PREFIX=LA-BIH01RACK2: -TIMING_EVE1_PV_DEVICE_PREFIX=TI-EVE: -TIMING_EVE1_DEVICE_IP=10.128.150.96 -TIMING_EVE1_DEVICE_PORT=50123 -TIMING_EVE1_TELNET_PORT_SUFFIX=03 - -# --- EVR Diag01 ICT Booster & Storage ring --- - -TIMING_EVR2_PV_AREA_PREFIX=IA-20RaDiag01: -TIMING_EVR2_PV_DEVICE_PREFIX=TI-EVR: -TIMING_EVR2_DEVICE_IP=10.128.150.66 -TIMING_EVR2_DEVICE_PORT=50113 -TIMING_EVR2_TELNET_PORT_SUFFIX=04 - -# --- EVR Inj05 Pulsados --- - -TIMING_EVR3_PV_AREA_PREFIX=IA-01RaInj05: -TIMING_EVR3_PV_DEVICE_PREFIX=TI-EVR: -TIMING_EVR3_DEVICE_IP=10.128.150.94 -TIMING_EVR3_DEVICE_PORT=50117 -TIMING_EVR3_TELNET_PORT_SUFFIX=05 - -# --- EVR LTB Power Supplies --- - -TIMING_EVR4_PV_AREA_PREFIX=LA-RaCtrl: -TIMING_EVR4_PV_DEVICE_PREFIX=TI-EVR: -TIMING_EVR4_DEVICE_IP=10.128.150.93 -TIMING_EVR4_DEVICE_PORT=50101 -TIMING_EVR4_TELNET_PORT_SUFFIX=06 - -# --- EVR Power Supplies Room --- - -TIMING_EVR5_PV_AREA_PREFIX=PA-RaCtrl: -TIMING_EVR5_PV_DEVICE_PREFIX=TI-EVR-1: -TIMING_EVR5_DEVICE_IP=10.128.150.105 -TIMING_EVR5_DEVICE_PORT=50112 -TIMING_EVR5_TELNET_PORT_SUFFIX=11 - -# --- Fout 1 Conectividade --- - -TIMING_FOUT1_PV_AREA_PREFIX=CA-RaCtrl: -TIMING_FOUT1_PV_DEVICE_PREFIX=TI-Fout-1: -TIMING_FOUT1_DEVICE_IP=10.128.150.100 -TIMING_FOUT1_DEVICE_PORT=50118 -TIMING_FOUT1_TELNET_PORT_SUFFIX=07 - -# --- Fout 2 Conectividade --- - -TIMING_FOUT2_PV_AREA_PREFIX=CA-RaCtrl: -TIMING_FOUT2_PV_DEVICE_PREFIX=TI-Fout-2: -TIMING_FOUT2_DEVICE_IP=10.128.150.104 -TIMING_FOUT2_DEVICE_PORT=50120 -TIMING_FOUT2_TELNET_PORT_SUFFIX=08 - -# --- Fout 3 Conectividade --- - -TIMING_FOUT3_PV_AREA_PREFIX=CA-RaCtrl: -TIMING_FOUT3_PV_DEVICE_PREFIX=TI-Fout-3: -TIMING_FOUT3_DEVICE_IP=10.128.150.98 -TIMING_FOUT3_DEVICE_PORT=50103 -TIMING_FOUT3_TELNET_PORT_SUFFIX=09 - -# --- Fout 4 Conectividade --- - -TIMING_FOUT4_PV_AREA_PREFIX=CA-RaCtrl: -TIMING_FOUT4_PV_DEVICE_PREFIX=TI-Fout-4: -TIMING_FOUT4_DEVICE_IP=10.128.150.97 -TIMING_FOUT4_DEVICE_PORT=50102 -TIMING_FOUT4_TELNET_PORT_SUFFIX=10 - diff --git a/scripts/systemd/etc/systemd/system/timing@.service.in b/scripts/systemd/etc/systemd/system/timing@.service.in deleted file mode 100644 index cd9a2b6..0000000 --- a/scripts/systemd/etc/systemd/system/timing@.service.in +++ /dev/null @@ -1,22 +0,0 @@ -[Unit] -Description=TIMING IOC %p%I -After=rc-local.service -Wants=rc-local.service -After=network-online.target -Wants=network-online.target - -[Service] -# Source environment -EnvironmentFile=/etc/sysconfig/timing-epics-ioc -EnvironmentFile=/etc/sysconfig/timing-epics-ioc-mapping -# Execute pre with root -PermissionsStartOnly=true -Environment=TIMING_INSTANCE=%i -ExecStartPre=/bin/mkdir -p /var/log/procServ/%p%i -ExecStartPre=/bin/mkdir -p /var/run/procServ/%p%i -WorkingDirectory=//iocBoot/ioctiming -# Run procServ with IOC -ExecStart="/usr/local/bin/runTiming.sh" - -[Install] -WantedBy=multi-user.target From 01dceea5a3653b27c7bbafe3d80a6afd9a6785b5 Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 15:35:19 -0300 Subject: [PATCH 5/9] moving event_alias.py to boot folder --- {scripts => iocBoot/ioctiming}/event_alias.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {scripts => iocBoot/ioctiming}/event_alias.py (100%) diff --git a/scripts/event_alias.py b/iocBoot/ioctiming/event_alias.py similarity index 100% rename from scripts/event_alias.py rename to iocBoot/ioctiming/event_alias.py From 6995e08d6c21968a09bc9430a31f9bc666e556ce Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 15:36:46 -0300 Subject: [PATCH 6/9] removing script folder make --- install/Makefile | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/install/Makefile b/install/Makefile index 5668616..57175b7 100644 --- a/install/Makefile +++ b/install/Makefile @@ -9,18 +9,12 @@ INSTALL_PREFIX ?= /opt/epics/startup/ioc export IOC_NAME export INSTALL_PREFIX -install: scripts_install +install: $(TOP)/install/install.sh ${INSTALL_PREFIX}/${IOC_NAME} $(TOP) -uninstall: scripts_uninstall +uninstall: $(TOP)/install/uninstall.sh ${INSTALL_PREFIX}/${IOC_NAME} $(TOP) -scripts_install: - $(MAKE) -C ${SCRIPTS_FOLDER} install - -scripts_uninstall: - $(MAKE) -C ${SCRIPTS_FOLDER} uninstall - realuninstall: uninstall clean: From 272710092071f22394efd78470c1ebe1b367d223 Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 15:40:27 -0300 Subject: [PATCH 7/9] cleaning default descriptions --- iocBoot/ioctiming/stEVG.cmd | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/iocBoot/ioctiming/stEVG.cmd b/iocBoot/ioctiming/stEVG.cmd index 4745b83..361155c 100755 --- a/iocBoot/ioctiming/stEVG.cmd +++ b/iocBoot/ioctiming/stEVG.cmd @@ -42,21 +42,21 @@ dbLoadRecords("${TOP}/db/evg_clk.db", "P=${P}, R=${R}, num=5, PORT=${PORT}, ADDR dbLoadRecords("${TOP}/db/evg_clk.db", "P=${P}, R=${R}, num=6, PORT=${PORT}, ADDR=0, TIMEOUT=2") dbLoadRecords("${TOP}/db/evg_clk.db", "P=${P}, R=${R}, num=7, PORT=${PORT}, ADDR=0, TIMEOUT=2") -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=0, desc='Linac', code='01', time=100, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=1, desc='InjBO', code='02', time=101, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=2, desc='InjSI', code='03', time=102, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=3, desc='RmpBO', code='04', time=103, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=4, desc='MigSI', code='05', time=104, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=5, desc='DigLI', code='06', time=105, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=6, desc='DigTB', code='07', time=106, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=7, desc='DigBO', code='08', time=107, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=8, desc='DigTS', code='09', time=108, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=9, desc='DigSI', code='10', time=109, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=10, desc='OrbSI', code='11', time=110, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=11, desc='CplSI', code='12', time=111, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=12, desc='TunSI', code='13', time=112, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=13, desc='Study', code='14', time=113, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" -dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=14, desc='OrbBO', code='15', time=114, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=0, desc='Undefined', code='01', time=100, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=1, desc='Undefined', code='02', time=101, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=2, desc='Undefined', code='03', time=102, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=3, desc='Undefined', code='04', time=103, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=4, desc='Undefined', code='05', time=104, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=5, desc='Undefined', code='06', time=105, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=6, desc='Undefined', code='07', time=106, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=7, desc='Undefined', code='08', time=107, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=8, desc='Undefined', code='09', time=108, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=9, desc='Undefined', code='10', time=109, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=10, desc='Undefined', code='11', time=110, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=11, desc='Undefined', code='12', time=111, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=12, desc='Undefined', code='13', time=112, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=13, desc='Undefined', code='14', time=113, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" +dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=14, desc='Undefined', code='15', time=114, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=15, desc='Undefined', code='16', time=115, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=16, desc='Undefined', code='17', time=116, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" dbLoadRecords "${TOP}/db/Events.db", "P=${P}, R=${R}, num=17, desc='Undefined', code='18', time=117, mode=0, transm=0, PORT=${PORT}, ADDR=0, TIMEOUT=2, EVT_DELAY=${EVT_DELAY}" From 059a68cda7e93c7189c8809e8c8a46330f468e10 Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 15:42:32 -0300 Subject: [PATCH 8/9] call event_alias.py at IOC startup --- iocBoot/ioctiming/event_alias.cmd | 27 ++++++--------------------- iocBoot/ioctiming/event_alias.py | 16 +++++++++------- iocBoot/ioctiming/runGenericModule.sh | 6 ++++++ 3 files changed, 21 insertions(+), 28 deletions(-) diff --git a/iocBoot/ioctiming/event_alias.cmd b/iocBoot/ioctiming/event_alias.cmd index 90da8b4..1aafa42 100644 --- a/iocBoot/ioctiming/event_alias.cmd +++ b/iocBoot/ioctiming/event_alias.cmd @@ -1,21 +1,6 @@ -######################################################################################## -##### This file was generated automatically by $(TOP)/scripts/setup/event_alias.py ##### -##### DO NOT DELETE OR MODIFY IT ##### -######################################################################################## - -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=0, alias='Linac', code='01'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=1, alias='InjBO', code='02'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=2, alias='InjSI', code='03'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=3, alias='RmpBO', code='04'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=4, alias='MigSI', code='05'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=5, alias='DigLI', code='06'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=6, alias='DigTB', code='07'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=7, alias='DigBO', code='08'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=8, alias='DigTS', code='09'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=9, alias='DigSI', code='10'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=10, alias='OrbSI', code='11'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=11, alias='CplSI', code='12'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=12, alias='TunSI', code='13'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=13, alias='Study', code='14'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=14, alias='OrbBO', code='15'" -dbLoadRecords "${TOP}/db/HLEvents.db","P=${P}, R=${R}, num=15, alias='Cycle', code='16'" +############################################################################# +##### This file content is automatically generated by ./event_alias.py ##### +##### at IOC startup based on High-Level Events ##### +##### ##### +##### DO NOT DELETE OR MODIFY IT ##### +############################################################################# diff --git a/iocBoot/ioctiming/event_alias.py b/iocBoot/ioctiming/event_alias.py index 857ffde..08c3f0b 100644 --- a/iocBoot/ioctiming/event_alias.py +++ b/iocBoot/ioctiming/event_alias.py @@ -3,7 +3,7 @@ import urllib.request as _urllib_request import ast import sys - +import os if (len(sys.argv) == 1): URL = 'http://10.0.38.42/control-system-constants/timesys/high-level-events.py' @@ -39,12 +39,15 @@ def HLEvt_to_LLEvt(HLEvents): HLEvents = ast.literal_eval(high_level_events(URL)) -f = open('../../iocBoot/ioctiming/event_alias.cmd', 'w') +ioc_run_path = os.path.join(os.path.dirname(os.path.abspath(__file__))) +f = open(os.path.join(ioc_run_path,'event_alias.cmd'), 'w') -f.write('########################################################################################\n') -f.write('##### This file was generated automatically by $(TOP)/scripts/setup/event_alias.py #####\n') -f.write('##### DO NOT DELETE OR MODIFY IT #####\n') -f.write('########################################################################################\n\n') +f.write('#############################################################################\n') +f.write('##### This file content is automatically generated by ./event_alias.py #####\n') +f.write('##### at IOC startup based on High-Level Events #####\n') +f.write('##### #####\n') +f.write('##### DO NOT DELETE OR MODIFY IT #####\n') +f.write('#############################################################################\n\n') if ('Error' in HLEvents): f.write('# Error reading url "' + URL + '"!') @@ -62,4 +65,3 @@ def HLEvt_to_LLEvt(HLEvents): f.write('dbLoadRecords ' + chr(34) + "${TOP}/db/HLEvents.db" + chr(34) + "," + chr(34) + "P=${P}, R=${R}, num=" + str(i) + ", alias='" + evt_alias[evt_name] + "', code='" + evt_code + "'" + chr(34) + '\n') f.close() - diff --git a/iocBoot/ioctiming/runGenericModule.sh b/iocBoot/ioctiming/runGenericModule.sh index 0cca3a8..6def094 100755 --- a/iocBoot/ioctiming/runGenericModule.sh +++ b/iocBoot/ioctiming/runGenericModule.sh @@ -43,6 +43,12 @@ fi case ${TIMING_TYPE} in EVG) ST_CMD_FILE=stEVG.cmd + echo "EVG Device: running event_alias.py to generate high-level events alias" + if [ -z "$HIGH_LEVEL_LINK" ]; then + /usr/bin/python3 event_alias.py + else + /usr/bin/python3 event_alias.py ${HIGH_LEVEL_LINK} + fi ;; EVR) From 189312c69de8c9f0e7eaed6de1d790d30446ab2c Mon Sep 17 00:00:00 2001 From: Mauricio Donatti Date: Fri, 29 Jul 2022 15:43:41 -0300 Subject: [PATCH 9/9] high level events link procserv parameter --- iocBoot/ioctiming/parseCMDOpts.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/iocBoot/ioctiming/parseCMDOpts.sh b/iocBoot/ioctiming/parseCMDOpts.sh index b755f48..4ffaa2e 100755 --- a/iocBoot/ioctiming/parseCMDOpts.sh +++ b/iocBoot/ioctiming/parseCMDOpts.sh @@ -4,7 +4,7 @@ set -e usage () { echo "Usage:" >&2 - echo " $1 -t PROCSERV_TELNET_PORT [-P P_VAL] [-R R_VAL] -i IPADDR -p IPPORT -d DEVICE " >&2 + echo " $1 -t PROCSERV_TELNET_PORT [-P P_VAL] [-R R_VAL] [-L HL_EVENTS_LINK] -i IPADDR -p IPPORT -d DEVICE" >&2 echo >&2 echo " Options:" >&2 echo " -t Configure procServ telnet port" >&2 @@ -13,9 +13,10 @@ usage () { echo " -i Configure IP address to connect to device" >&2 echo " -p Configure IP port number to connect to device" >&2 echo " -d Configure Sinap Timing device type [EVG|EVR|EVE|FOUT]" >&2 + echo " -l Configure High-level events link to load at EVG" >&2 } -while getopts ":t:P:R:i:p:d:" opt; do +while getopts ":t:P:R:i:p:d:l:" opt; do case $opt in t) DEVICE_TELNET_PORT="$OPTARG" ;; P) P="$OPTARG" ;; @@ -23,6 +24,7 @@ while getopts ":t:P:R:i:p:d:" opt; do i) IPADDR="$OPTARG" ;; p) IPPORT="$OPTARG" ;; d) DEVICE_TYPE="$OPTARG" ;; + l) HIGH_LEVEL_LINK="$OPTARG" ;; \?) echo "Invalid option: -$OPTARG" >&2 usage $0