diff --git a/iocBoot/iocxxx/st.cmd b/iocBoot/iocxxx/st.cmd index 977419eaaa460a3ec4aca05fba0fcaecf7b27163..ffd8addbc89c0246a1e269b2fbcac99792c4604d 100644 --- a/iocBoot/iocxxx/st.cmd +++ b/iocBoot/iocxxx/st.cmd @@ -21,9 +21,9 @@ sysCplusEnable=1 ### Load custom EPICS software from user tree and from share ld < xxx.munch -#routerInit +routerInit # talk to local IP's -#localMessageRouterStart(0) +localMessageRouterStart(0) # talk to IP's on satellite processor # (must agree with tcpMessageRouterServerStart in st_proc1.cmd) # for IP modules on stand-alone mpf server board @@ -75,7 +75,9 @@ reboot_restoreDebug=0 recDynLinkQsize = 1024 # Specify largest array CA will transport -putenv "EPICS_CA_MAX_ARRAY_BYTES=65000" +# Note for N sscanRecord data points, need (N+1)*8 bytes, else MEDM +# plot doesn't display +putenv "EPICS_CA_MAX_ARRAY_BYTES=64008" cd startup ################################################################################ @@ -186,7 +188,7 @@ dbLoadRecords("$(STD)/stdApp/Db/all_com_16.db","P=xxx:") ### Scan-support software # crate-resident scan. This executes 1D, 2D, 3D, and 4D scans, and caches # 1D data, but it doesn't store anything to disk. (See 'saveData' below for that.) -dbLoadRecords("$(STD)/stdApp/Db/scan.db","P=xxx:,MAXPTS1=2000,MAXPTS2=200,MAXPTS3=10,MAXPTS4=10,MAXPTSH=200") +dbLoadRecords("$(STD)/stdApp/Db/scan.db","P=xxx:,MAXPTS1=4000,MAXPTS2=200,MAXPTS3=10,MAXPTS4=10,MAXPTSH=4000") # Slits dbLoadRecords("$(STD)/stdApp/Db/2slit.db","P=xxx:,SLIT=Slit1V,mXp=m3,mXn=m4") @@ -232,13 +234,17 @@ dbLoadRecords("$(STD)/stdApp/Db/hrSeq.db","P=xxx:,N=1,M_PHI1=m9,M_PHI2=m10") #dbLoadRecords("$(STD)/stdApp/Db/hrSeq.db","P=xxx:,N=2,M_PHI1=m11,M_PHI2=m12") ### Canberra AIM Multichannel Analyzer ### -#mcaRecordDebug=0 -#devMcaMpfDebug=0 -#mcaAIMServerDebug=0 -#aimDebug=0 - -# AIMConfig(serverName, int etherAddr, int port, int maxChans, -# int maxSignals, int maxSequences, etherDev, queueSize) +#mcaRecordDebug=1 +#devMcaMpfDebug=1 +#mcaAIMServerDebug=1 +#aimDebug=1 +#icbDebug=1 +#icbServerDebug=1 +#icbDspDebug=1 +#icbTcaDebug=1 + +# AIMConfig(char *serverName, int etherAddr, int port, int maxChans, +# int maxSignals, int maxSequences, char *etherDev, int queueSize) # # serverName: defined here, must agree with dbLoadRecords command # etherAddr: ethernet address of AIM module @@ -251,34 +257,41 @@ dbLoadRecords("$(STD)/stdApp/Db/hrSeq.db","P=xxx:,N=1,M_PHI1=m9,M_PHI2=m10") # etherDev: vxWorks device used to communicate over the network to AIM. # Typically "ei0" for mv16x, mv17x; "dc0" for Motorola PowerPC # queueSize: size of MPF message queue for this server (100 should be plenty) -#AIMConfig("AIM1/2", 0x674, 2, 2048, 1, 1, "ei0", 100) +# +# EXAMPLE: +# AIMConfig("AIM1/2", 0x9AA, 2, 2048, 1, 1, "dc0", 100) + +AIMConfig("AIM1/2", 0x9AA, 2, 4000, 1, 1, "dc0", 100) -#dbLoadRecords("$(MCA)/mcaApp/Db/mca.db","P=xxx:,M=mca1,INP=#C0 S0 @AIM1/2,DTYPE=MPF MCA,NCHAN=2048") +dbLoadRecords("$(MCA)/mcaApp/Db/mca.db","P=xxx:,M=mca1,INP=#C0 S0 @AIM1/2,DTYPE=MPF MCA,NCHAN=4000") -# Create ICB server for ADC, amplifier and HVPS -# picbServer = icbConfig(icbServer, maxModules, icbAddress, queueSize) -# This creates the ICB server and allocates configures the first module, module 0. -# Additional modules are added to this server with icbAddModule(). -#picbServer = icbConfig("icb/1", 10, "NI674:3", 100) +# Initialize ICB software, and create a new ICB server +# icbSetup(const char *serverName, int maxModules, int queueSize) +icbSetup("icb/1", 10, 100) -# In the dbLoadRecords commands CARD=(0,1) for (local/remote), SERVER=icbServer name from -# icbConfig, ADDR=module number from icbConfig() or icbAddModule(). -#icbAddModule(picbServer, module, icbAddress) -# Note: ADDR is the module number, not the icb address. The correspondence between -# module number and icb address is made in icbConfig (for module number 0) or in -# icbAddModule. -#icbAddModule(picbServer, 1, "NI674:2") -#dbLoadRecords("$(MCA)/mcaApp/Db/icb_adc.db","P=xxx:,ADC=icbAdc1,CARD=0,SERVER=icb/1,ADDR=0") +# Configure the new ICB server +# icbConfig(const char *serverName, int module, int enetAddress, int icbAddress) +icbConfig("icb/1", 0, 0x9AA, 3) -#icbTcaConfig("icbTca/1", 1, "NI674:1", 100) -#dbLoadRecords("$(MCA)/mcaApp/Db/icb_tca.db","P=xxx:,TCA=icbTca1,MCA=mca1,CARD=0,SERVER=icb/1,ADDR=1") +# In dbLoadRecords commands for ICB devices +# CARD = (0,1) for (local/remote), +# SERVER = server name supplied as argument to icbConfig(), +# ADDR = module number supplied as argument to icbConfig() -#icbAddModule(picbServer, 2, "NI674:2") +dbLoadRecords("$(MCA)/mcaApp/Db/icb_adc.db","P=xxx:,ADC=icbAdc1,CARD=0,SERVER=icb/1,ADDR=0") + +#icbConfig("icb/1", 2, 0x9AA, 2) #dbLoadRecords("$(MCA)/mcaApp/Db/icb_hvps.db","P=xxx:,HVPS=icbHvps1,CARD=0,SERVER=icb/1,ADDR=2") -#icbAddModule(picbServer, 3, "NI674:4") +#icbConfig("icb/1", 3, 0x9AA, 4) #dbLoadRecords("$(MCA)/mcaApp/Db/icb_amp.db","P=xxx:,AMP=icbAmp1,CARD=0,SERVER=icb/1,ADDR=4") +# icbTcaSetup(char *serverName, int maxModules, int queueSize) +# icbTcaConfig(char *serverName, int module, int enetAddress, int icbAddress) + +# icbTcaSetup("icbTca/1", 3, 100) +# icbTcaConfig("icbTca/1", 0, 0x9AA, 1) +#dbLoadRecords("$(MCA)/mcaApp/Db/icb_tca.db","P=xxx:,TCA=icbTca1,MCA=mca1,CARD=0,SERVER=icbTca/1,ADDR=0") # Load 13 element detector software #< 13element.cmd @@ -458,8 +471,8 @@ iocLogDisable=1 iocInit ### startup State Notation Language programs -#seq &kohzuCtl, "P=xxx:, M_THETA=m9, M_Y=m10, M_Z=m11, GEOM=1, logfile=kohzuCtl.log" -#seq &hrCtl, "P=xxx:, N=1, M_PHI1=m9, M_PHI2=m10, logfile=hrCtl1.log" +seq &kohzuCtl, "P=xxx:, M_THETA=m9, M_Y=m10, M_Z=m11, GEOM=1, logfile=kohzuCtl.log" +seq &hrCtl, "P=xxx:, N=1, M_PHI1=m9, M_PHI2=m10, logfile=hrCtl1.log" #seq &Keithley2kDMM, "P=xxx:, Dmm=D1" # Bunch clock generator