From fba7487f889e42ed7119845c99cac59e1840d82f Mon Sep 17 00:00:00 2001 From: Edward Wall Date: Tue, 5 Nov 2024 15:00:45 +0100 Subject: [PATCH] No longer have to specify the Asyn Port Name --- README.md | 7 +++---- scripts/counterbox_4ch.cmd | 6 +++--- scripts/counterbox_8ch.cmd | 6 +++--- scripts/counterbox_v2.cmd | 8 ++++---- test/st.cmd | 2 +- test/test.py | 2 +- 6 files changed, 15 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index fb8e5f3..575c9b0 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,6 @@ Required Variables |----------------------|-----------------------------------------| | PREFIX | Prefix of all device specific PVs | | NAME | First field in all PVs after Prefix | -| ASYN\_PORT | Unique name for referencing Asyn device | | CNTBOX\_IP | Network IP of device | | CNTBOX\_PORT | Network Port of device | @@ -38,7 +37,7 @@ A device can be configured using one of the startup scripts as follows ``` epicsEnvSet("PREFIX", "SQ:INSTRUMENT") # can also be set in runScript call -runScript "$(counterbox_DIR)counterbox_v2.cmd" "NAME=COUNTERBOX, ASYN_PORT=CBOXV2, CNTBOX_IP=TestInst-DAQ1, CNTBOX_PORT=2000" +runScript "$(counterbox_DIR)counterbox_v2.cmd" "NAME=COUNTERBOX, CNTBOX_IP=TestInst-DAQ1, CNTBOX_PORT=2000" ``` ## PVs of Interest @@ -65,7 +64,7 @@ runtime via the following ``` epicsEnvSet("LOAD_TEST_PVS","") -runScript "$(counterbox_DIR)counterbox_v2.cmd" "NAME=COUNTERBOX, ASYN_PORT=CBOXV2, CNTBOX_HOST=TestInst-DAQ1:2000" +runScript "$(counterbox_DIR)counterbox_v2.cmd" "NAME=COUNTERBOX, CNTBOX_IP=TestInst-DAQ1, CNTBOX_PORT=2000" ``` See the file [counterbox\_v2\_test.db](./db/counterbox_v2_test.db) @@ -76,7 +75,7 @@ Simulation of the Hardware can be toggled on as follows: ``` epicsEnvSet("SET_SIM_MODE","") # run counterbox simulation instead of connecting to actual box -runScript "$(counterbox_DIR)counterbox_v2.cmd" "ASYN_PORT=CBOXV2, CNTBOX_IP=localhost, CNTBOX_PORT=2000" +runScript "$(counterbox_DIR)counterbox_v2.cmd" "NAME=CB_TEST, CNTBOX_IP=localhost, CNTBOX_PORT=2000" ``` In such a case, the provided `CNTBOX_IP` is ignored, and a python program diff --git a/scripts/counterbox_4ch.cmd b/scripts/counterbox_4ch.cmd index f0c24b9..d0c4d4b 100644 --- a/scripts/counterbox_4ch.cmd +++ b/scripts/counterbox_4ch.cmd @@ -10,9 +10,9 @@ $(SET_SIM_MODE=#) $(SET_SIM_MODE) system "$(counterbox_DIR)counterbox_sim.py $(C $(SET_SIM_MODE=#) $(SET_SIM_MODE) system 'sleep 3' epicsEnvSet("PROTO", "$(counterbox_DB)counterbox.proto") -drvAsynIPPortConfigure("$(ASYN_PORT)", "$($(NAME)_CNTBOX_HOST)", 0, 0, 0) -dbLoadRecords("$(counterbox_DB)counterbox_common.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=$(ASYN_PORT), CHANNELS=4") -dbLoadRecords("$(counterbox_DB)counterbox_4ch.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=$(ASYN_PORT)") +drvAsynIPPortConfigure("ASYN_$(NAME)", "$($(NAME)_CNTBOX_HOST)", 0, 0, 0) +dbLoadRecords("$(counterbox_DB)counterbox_common.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=ASYN_$(NAME), CHANNELS=4") +dbLoadRecords("$(counterbox_DB)counterbox_4ch.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=ASYN_$(NAME)") # Could also use substitions instead. dbLoadRecords("$(counterbox_DB)channels.db", "P=$(PREFIX), NAME=$(NAME), CHANNEL=1") diff --git a/scripts/counterbox_8ch.cmd b/scripts/counterbox_8ch.cmd index 85e07d3..a430cc5 100644 --- a/scripts/counterbox_8ch.cmd +++ b/scripts/counterbox_8ch.cmd @@ -10,9 +10,9 @@ $(SET_SIM_MODE=#) $(SET_SIM_MODE) system "$(counterbox_DIR)counterbox_sim.py $(C $(SET_SIM_MODE=#) $(SET_SIM_MODE) system 'sleep 3' epicsEnvSet("PROTO", "$(counterbox_DB)counterbox.proto") -drvAsynIPPortConfigure("$(ASYN_PORT)", "$($(NAME)_CNTBOX_HOST)", 0, 0, 0) -dbLoadRecords("$(counterbox_DB)counterbox_common.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=$(ASYN_PORT), CHANNELS=8") -dbLoadRecords("$(counterbox_DB)counterbox_8ch.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=$(ASYN_PORT)") +drvAsynIPPortConfigure("ASYN_$(NAME)", "$($(NAME)_CNTBOX_HOST)", 0, 0, 0) +dbLoadRecords("$(counterbox_DB)counterbox_common.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=ASYN_$(NAME), CHANNELS=8") +dbLoadRecords("$(counterbox_DB)counterbox_8ch.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=ASYN_$(NAME)") # Could also use substitions instead. dbLoadRecords("$(counterbox_DB)channels.db", "P=$(PREFIX), NAME=$(NAME), CHANNEL=1") diff --git a/scripts/counterbox_v2.cmd b/scripts/counterbox_v2.cmd index 8868823..0471207 100644 --- a/scripts/counterbox_v2.cmd +++ b/scripts/counterbox_v2.cmd @@ -10,9 +10,9 @@ $(SET_SIM_MODE=#) $(SET_SIM_MODE) system "$(counterbox_DIR)counterbox_sim.py $(C $(SET_SIM_MODE=#) $(SET_SIM_MODE) system 'sleep 5' epicsEnvSet("PROTO", "$(counterbox_DB)counterbox.proto") -drvAsynIPPortConfigure("$(ASYN_PORT)", "$($(NAME)_CNTBOX_HOST)", 0, 0, 0) -dbLoadRecords("$(counterbox_DB)counterbox_common.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=$(ASYN_PORT), CHANNELS=10") -dbLoadRecords("$(counterbox_DB)counterbox_v2.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=$(ASYN_PORT)") +drvAsynIPPortConfigure("ASYN_$(NAME)", "$($(NAME)_CNTBOX_HOST)", 0, 0, 0) +dbLoadRecords("$(counterbox_DB)counterbox_common.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=ASYN_$(NAME), CHANNELS=10") +dbLoadRecords("$(counterbox_DB)counterbox_v2.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=ASYN_$(NAME)") # Could also use substitions instead. dbLoadRecords("$(counterbox_DB)channels.db", "P=$(PREFIX), NAME=$(NAME), CHANNEL=1") @@ -26,4 +26,4 @@ dbLoadRecords("$(counterbox_DB)channels.db", "P=$(PREFIX), NAME=$(NAME), CHANNEL dbLoadRecords("$(counterbox_DB)channels.db", "P=$(PREFIX), NAME=$(NAME), CHANNEL=9") dbLoadRecords("$(counterbox_DB)channels.db", "P=$(PREFIX), NAME=$(NAME), CHANNEL=10") -$(LOAD_TEST_PVS=#) $(LOAD_TEST_PVS) dbLoadRecords("$(counterbox_DB)counterbox_v2_test.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=$(ASYN_PORT)") +$(LOAD_TEST_PVS=#) $(LOAD_TEST_PVS) dbLoadRecords("$(counterbox_DB)counterbox_v2_test.db", "P=$(PREFIX), NAME=$(NAME), PROTO=$(PROTO), ASYN_PORT=ASYN_$(NAME)") diff --git a/test/st.cmd b/test/st.cmd index d31206e..5d59f9a 100755 --- a/test/st.cmd +++ b/test/st.cmd @@ -9,6 +9,6 @@ epicsEnvSet("PREFIX","SQ:TEST") epicsEnvSet("NAME","CB_TEST") epicsEnvSet("SET_SIM_MODE","") # Run Counterbox Simulation Instead of Actual Box -runScript "$(counterbox_DIR)counterbox_v2.cmd" "ASYN_PORT=CBOXV2, CNTBOX_IP=localhost, CNTBOX_PORT=2000" +runScript "$(counterbox_DIR)counterbox_v2.cmd" "CNTBOX_IP=localhost, CNTBOX_PORT=2000" iocInit() diff --git a/test/test.py b/test/test.py index 2f54f6d..42717ff 100755 --- a/test/test.py +++ b/test/test.py @@ -96,7 +96,7 @@ def test(prefix, name): line = stdqueue.get() print(line) - if line == 'iocRun: All initialization complete': + if 'iocRun: All initialization complete' in line: break # IOC is now running testCanCount(prefix, name)