Hi,
I met some question when I use the motor.
I use LAN to control the motor, A router connect the computer(192.168.1.100) and controller(192.168.1.120), and the pc ping controller is ok.
Here is the output of my st.cmd.
The quesiton is "asyn connection error on port = L0, address = 0 ",
Could you tell me how to solve it?
--------------------------------------------
[root@localhost iocLinux]# ../../bin/linux-x86_64/xxx st.cmd
# Linux startup script
< envPaths
epicsEnvSet("ARCH","linux-x86_64")
epicsEnvSet("IOC","iocLinux")
epicsEnvSet("TOP","/opt/synApps_5_8/support/xxx-5-8-3")
epicsEnvSet("SUPPORT","/opt/synApps_5_8/support")
epicsEnvSet("EPICS_BASE","/opt/epics/base-3.14.12.5")
epicsEnvSet("ALIVE","/opt/synApps_5_8/support/alive-1-0")
epicsEnvSet("ALLEN_BRADLEY","/opt/synApps_5_8/support/allenBradley-2-3")
epicsEnvSet("AREA_DETECTOR","/opt/synApps_5_8/support/areaDetector-R2-0")
epicsEnvSet("ADCORE","/opt/synApps_5_8/support/areaDetector-R2-0/ADCore-R2-2")
epicsEnvSet("ADBINARIES","/opt/synApps_5_8/support/areaDetector-R2-0/ADBinaries-R2-2")
epicsEnvSet("ASYN","/opt/synApps_5_8/support/asyn-4-26")
epicsEnvSet("AUTOSAVE","/opt/synApps_5_8/support/autosave-5-6-1")
epicsEnvSet("BUSY","/opt/synApps_5_8/support/busy-1-6-1")
epicsEnvSet("CALC","/opt/synApps_5_8/support/calc-3-4-2-1")
epicsEnvSet("CAMAC","/opt/synApps_5_8/support/camac-2-7")
epicsEnvSet("CAPUTRECORDER","/opt/synApps_5_8/support/caputRecorder-1-4-2")
epicsEnvSet("DAC128V","/opt/synApps_5_8/support/dac128V-2-8")
epicsEnvSet("DELAYGEN","/opt/synApps_5_8/support/delaygen-1-1-1")
epicsEnvSet("DEVIOCSTATS","/opt/synApps_5_8/support/devIocStats-3-1-13")
epicsEnvSet("DXP","/opt/synApps_5_8/support/dxp-3-4")
epicsEnvSet("IP","/opt/synApps_5_8/support/ip-2-17")
epicsEnvSet("IP330","/opt/synApps_5_8/support/ip330-2-8")
epicsEnvSet("IPAC","/opt/synApps_5_8/support/ipac-2-13")
epicsEnvSet("IPUNIDIG","/opt/synApps_5_8/support/ipUnidig-2-10")
epicsEnvSet("LOVE","/opt/synApps_5_8/support/love-3-2-5")
epicsEnvSet("MCA","/opt/synApps_5_8/support/mca-7-6")
epicsEnvSet("MEASCOMP","/opt/synApps_5_8/support/measComp-1-1")
epicsEnvSet("MODBUS","/opt/synApps_5_8/support/modbus-2-7")
epicsEnvSet("MOTOR","/opt/synApps_5_8/support/motor-6-9")
epicsEnvSet("OPTICS","/opt/synApps_5_8/support/optics-2-9-3")
epicsEnvSet("QUADEM","/opt/synApps_5_8/support/quadEM-5-0")
epicsEnvSet("SNCSEQ","/opt/synApps_5_8/support/seq-2-2-3")
epicsEnvSet("SOFTGLUE","/opt/synApps_5_8/support/softGlue-2-4-3")
epicsEnvSet("SSCAN","/opt/synApps_5_8/support/sscan-2-10-1")
epicsEnvSet("STD","/opt/synApps_5_8/support/std-3-4")
epicsEnvSet("STREAM","/opt/synApps_5_8/support/stream-2-6a")
epicsEnvSet("VAC","/opt/synApps_5_8/support/vac-1-5-1")
epicsEnvSet("VME","/opt/synApps_5_8/support/vme-2-8-2")
epicsEnvSet("XXX","/opt/synApps_5_8/support/xxx-5-8-3")
# For devIocStats
epicsEnvSet("GROUP","group")
epicsEnvSet("STREAM_PROTOCOL_PATH","/opt/synApps_5_8/support/xxx-5-8-3")
# save_restore.cmd needs the full path to the startup directory, which
# envPaths currently does not provide
epicsEnvSet(STARTUP,/opt/synApps_5_8/support/xxx-5-8-3/iocBoot/iocLinux)
# Increase size of buffer for error logging from default 1256
errlogInit(20000)
# Specify largest array CA will transport
# Note for N doubles, need N*8 bytes+some overhead
epicsEnvSet EPICS_CA_MAX_ARRAY_BYTES 64010
################################################################################
# Tell EPICS all about the record types, device-support modules, drivers,
# etc. in the software we just loaded (xxx.munch)
dbLoadDatabase("../../dbd/iocxxxLinux.dbd")
iocxxxLinux_registerRecordDeviceDriver(pdbbase)
### save_restore setup
< save_restore.cmd
# BEGIN save_restore.cmd ------------------------------------------------------
### save_restore setup
# status PVs
#save_restoreSet_UseStatusPVs(1)
save_restoreSet_status_prefix("xxx:")
dbLoadRecords("/opt/synApps_5_8/support/autosave-5-6-1/asApp/Db/save_restoreStatus.db", "P=xxx:, DEAD_SECONDS=5")
# Ok to save/restore save sets with missing values (no CA connection to PV)?
save_restoreSet_IncompleteSetsOk(1)
# Save dated backup files?
save_restoreSet_DatedBackupFiles(1)
# Number of sequenced backup files to write
save_restoreSet_NumSeqFiles(3)
# Time interval between sequenced backups
save_restoreSet_SeqPeriodInSeconds(300)
# Ok to retry connecting to PVs whose initial connection attempt failed?
save_restoreSet_CAReconnect(1)
# Time interval in seconds between forced save-file writes. (-1 means forever).
# This is intended to get save files written even if the normal trigger mechanism is broken.
save_restoreSet_CallbackTimeout(-1)
# specify where save files should be
set_savefile_path("/opt/synApps_5_8/support/xxx-5-8-3/iocBoot/iocLinux", "autosave")
###
# specify what save files should be restored. Note these files must be
# in the directory specified in set_savefile_path(), or, if that function
# has not been called, from the directory current when iocInit is invoked
set_pass0_restoreFile("auto_positions.sav", "P=xxx:")
# Save positions every five seconds
doAfterIocInit("create_monitor_set('auto_positions.req',5,'P=xxx:')")
set_pass0_restoreFile("auto_settings.sav", "P=xxx:")
set_pass1_restoreFile("auto_settings.sav", "P=xxx:")
# save settings every thirty seconds
doAfterIocInit("create_monitor_set('auto_settings.req',30,'P=xxx:')")
# Note that you can reload these sets after creating them: e.g.,
# reload_monitor_set("auto_settings.req",30,"P=xxx:")
# Note that you can restore a .sav file without also autosaving to it.
#set_pass0_restoreFile("myInitData.sav")
#set_pass1_restoreFile("myInitData.sav")
# Also, you can restore a .sav file that contains macros. (autosave R5-4-2)
#set_pass0_restoreFile("myGenericData.sav", "P=xxx:")
#set_pass1_restoreFile("myGenericData.sav", "P=xxx:")
###
# specify directories in which to to search for included request files
set_requestfile_path("/opt/synApps_5_8/support/xxx-5-8-3/iocBoot/iocLinux", "")
set_requestfile_path("/opt/synApps_5_8/support/xxx-5-8-3/iocBoot/iocLinux", "autosave")
set_requestfile_path("/opt/synApps_5_8/support/areaDetector-R2-0", "ADApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/areaDetector-R2-0/ADCore-R2-2", "ADApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/autosave-5-6-1", "asApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/busy-1-6-1", "busyApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/calc-3-4-2-1", "calcApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/camac-2-7", "camacApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/caputRecorder-1-4-2", "caputRecorderApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/dac128V-2-8", "dac128VApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/delaygen-1-1-1", "delaygenApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/dxp-3-4", "dxpApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/ip-2-17", "ipApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/ip330-2-8", "ip330App/Db")
set_requestfile_path("/opt/synApps_5_8/support/ipUnidig-2-10", "ipUnidigApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/love-3-2-5", "loveApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/mca-7-6", "mcaApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/measComp-1-1", "measCompApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/modbus-2-7", "modbusApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/motor-6-9", "motorApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/optics-2-9-3", "opticsApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/quadEM-5-0", "quadEMApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/sscan-2-10-1", "sscanApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/softGlue-2-4-3", "softGlueApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/std-3-4", "stdApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/vac-1-5-1", "vacApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/vme-2-8-2", "vmeApp/Db")
set_requestfile_path("/opt/synApps_5_8/support/xxx-5-8-3", "xxxApp/Db")
# Debug-output level
save_restoreSet_Debug(0)
# Tell autosave to automatically build built_settings.req and
# built_positions.req from databases and macros supplied to dbLoadRecords()
# (and dbLoadTemplate(), which calls dbLoadRecords()).
epicsEnvSet("BUILT_SETTINGS", "built_settings.req")
epicsEnvSet("BUILT_POSITIONS", "built_positions.req")
autosaveBuild("built_settings.req", "_settings.req", 1)
pretending to register a dbLoadRecords hook
autosaveBuild("built_positions.req", "_positions.req", 1)
# END save_restore.cmd --------------------------------------------------------
### caputRecorder
# if you have hdf5 and szip, you can use this
#< areaDetector.cmd
# soft scaler for testing
#< softScaler.cmd
# serial support
#< serial.cmd
# Motors
dbLoadTemplate("motorARIES.substitutions")
# motorUtil (allstop & alldone)
dbLoadRecords("/opt/synApps_5_8/support/motor-6-9/db/motorUtil.db", "P=xxx:")
drvAsynIPPortConfigure("L0","192.168.1.120",0,0,0)
drvAsynIPPortConfigure: "192.168.1.120" is not of the form "<host>:<port>[:localPort] [protocol]"
ARIESSetup(2,5)
ARIESConfig(0,"L0",0)
var drvARIESdebug 4
### 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("/opt/synApps_5_8/support/sscan-2-10-1/sscanApp/Db/standardScans.db","P=xxx:,MAXPTS1=1000,MAXPTS2=1000,MAXPTS3=1000,MAXPTS4=1000,MAXPTSH=1000")
dbLoadRecords("/opt/synApps_5_8/support/sscan-2-10-1/sscanApp/Db/saveData.db","P=xxx:")
dbLoadRecords("/opt/synApps_5_8/support/sscan-2-10-1/sscanApp/Db/scanProgress.db","P=xxx:scanProgress:")
# configMenu example.
dbLoadRecords("/opt/synApps_5_8/support/autosave-5-6-1/asApp/Db/configMenu.db","P=xxx:,CONFIG=scan1")
# Note that the request file MUST be named $(CONFIG)Menu.req
# If the macro CONFIGMENU is defined with any value, backup (".savB") and
# sequence files (".savN") will not be written. We don't want these for configMenu.
# A set of scan parameters for each positioner. This is a convenience
# for the user. It can contain an entry for each scannable thing in the
# crate.
dbLoadTemplate("scanParms.substitutions")
### Monochromator support ###
# Kohzu and PSL monochromators: Bragg and theta/Y/Z motors
# standard geometry (geometry 1)
dbLoadRecords("/opt/synApps_5_8/support/optics-2-9-3/opticsApp/Db/kohzuSeq.db","P=xxx:,M_THETA=m1,M_Y=m2,M_Z=m3,yOffLo=17.4999,yOffHi=17.5001")
# Run this after iocInit:
#doAfterIocInit("seq &kohzuCtl, 'P=xxx:, M_THETA=m1, M_Y=m2, M_Z=m3, GEOM=1, logfile=kohzuCtl.log'")
# modified geometry (geometry 2)
#dbLoadRecords("$(OPTICS)/opticsApp/Db/kohzuSeq.db","P=xxx:,M_THETA=m1,M_Y=m2,M_Z=m2,yOffLo=4,yOffHi=36")
# Run this after iocInit:
#doAfterIocInit("seq &kohzuCtl, 'P=xxx:, M_THETA=m1, M_Y=m2, M_Z=m3, GEOM=2, logfile=kohzuCtl.log'")
# Spherical grating monochromator
#dbLoadRecords("$(OPTICS)/opticsApp/Db/SGM.db","P=xxx:,N=1,M_x=m7,M_rIn=m6,M_rOut=m8,M_g=m9")
# 4-bounce high-resolution monochromator
dbLoadRecords("/opt/synApps_5_8/support/optics-2-9-3/opticsApp/Db/hrSeq.db","P=xxx:,N=1,M_PHI1=m4,M_PHI2=m5")
# Run this after iocInit:
#doAfterIocInit("seq &hrCtl, 'P=xxx:, N=1, M_PHI1=m4, M_PHI2=m5, logfile=hrCtl.log'")
### Orientation matrix, four-circle diffractometer (see seq program 'orient' below)
#dbLoadRecords("$(OPTICS)/opticsApp/Db/orient.db", "P=xxx:,O=1,PREC=4")
#dbLoadTemplate("orient_xtals.substitutions")
# Run this after iocInit:
#doAfterIocInit("seq &orient, 'P=xxx:orient1:,PM=xxx:,mTTH=m9,mTH=m10,mCHI=m11,mPHI=m12'")
# 4-step measurement
#dbLoadRecords("$(STD)/stdApp/Db/4step.db", "P=xxx:,Q=4step:")
###############################################################################
iocInit
Starting iocInit
############################################################################
## EPICS R3.14.12.5 $Date: Tue 2015-03-24 09:57:35 -0500$
## EPICS Base built Dec 27 2016
############################################################################
drvARIES.cc:motor_init() *** asyn connection error on port = L0, address = 0 ***
reboot_restore: entry for file 'auto_positions.sav'
reboot_restore: Found filename 'auto_positions.sav' in restoreFileList.
*** restoring from '/opt/synApps_5_8/support/xxx-5-8-3/iocBoot/iocLinux/autosave/auto_positions.sav' at initHookState 6 (before record/device init) ***
reboot_restore: done with file 'auto_positions.sav'
reboot_restore: entry for file 'auto_settings.sav'
reboot_restore: Found filename 'auto_settings.sav' in restoreFileList.
*** restoring from '/opt/synApps_5_8/support/xxx-5-8-3/iocBoot/iocLinux/autosave/auto_settings.sav' at initHookState 6 (before record/device init) ***
reboot_restore: done with file 'auto_settings.sav'
Illegal field value recDynLinkOut: waiting for CA context
PV: xxx:m1 motor_init_record_com(): card does not exist!
Illegal field value PV: xxx:m2 motor_init_record_com(): card does not exist!
Illegal field value PV: xxx:m3 motor_init_record_com(): card does not exist!
Illegal field value PV: xxx:m4 motor_init_record_com(): card does not exist!
Illegal field value PV: xxx:m5 motor_init_record_com(): card does not exist!
Illegal field value PV: xxx:m6 motor_init_record_com(): card does not exist!
Illegal field value PV: xxx:m7 motor_init_record_com(): card does not exist!
reboot_restore: entry for file 'auto_settings.sav'
reboot_restore: Found filename 'auto_settings.sav' in restoreFileList.
*** restoring from '/opt/synApps_5_8/support/xxx-5-8-3/iocBoot/iocLinux/autosave/auto_settings.sav' at initHookState 7 (after record/device init) ***
reboot_restore: done with file 'auto_settings.sav'
recDynLinkOut: got CA context
iocRun: All initialization complete
create_monitor_set('auto_positions.req',5,'P=xxx:')
create_monitor_set('auto_settings.req',30,'P=xxx:')
auto_positions.sav: 0 of 0 PV's connected
###############################################################################
#asynSetTraceIOMask("L0",-1,0x9)
motorUtilInit("xxx:")
auto_settings.sav: 0 of 0 PV's connected
saveData_Init(saveData.req, "P=xxx:")
saveData: message queue created
saveData:maxAllowedRetries = 10
saveData:retryWaitInSecs = 15
seq &scanProgress, "S=xxx:, P=xxx:scanProgress:"
sevr=info Sequencer release 2.2.3, compiled Mon Jan 23 14:24:27 2017
sevr=info Spawning sequencer program "scanProgress", thread 0x9e2040: "scanProgress"
seq &hrCtl, "P=xxx:, N=1, M_PHI1=m2, M_PHI2=m5, logfile=hrCtl.log"
sevr=info Sequencer release 2.2.3, compiled Mon Jan 23 14:24:27 2017
sevr=info Spawning sequencer program "hrCtl", thread 0x9ebb90: "hrCtl"
creat_manual_set("scan1Menu.req", "P=xxx:, CONFIG=scan1, CONFIGMENU=1")
st.cmd line 110: Command creat_manual_set not found.
# write all the PV names to a local file
dbl > dbl-all.txt
sevr=info scanProgress[0]: all channels connected & received 1st monitor
sevr=info hrCtl[0]: all channels connected & received 1st monitor
# Report states of database CA links
dbcar(*,1)
CA links in all records
Total 126 CA links; 126 connected, 0 not connected.
0 can't read, 0 can't write. (0 disconnects, 0 writes prohibited)
# print the time our boot was finished
date
2017/02/07 10:45:36.961549
epics>