Hi all,
I’m trying to build an IOC to talk to a MAXnet controller using synApps_6_1, motor_R7_1, motorOmsAsyn.
It booted very well and I can see EPICS IOC, when I start st.cmd file.
But the 1 problem is this IOC can’t recognize LL, LH at MAXnet.cmd. I think this problem is about can’t load omsAsyn.munch
This is the booting command:
[root@localhost iocOmsAsyn]# ./st.cmd
#!/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC/bin/linux-x86_64/omsAsyn
## The following is needed if your board support package doesn't at boot time
## automatically cd to the directory containing its startup script
#cd "/home/username/epics/iocs/omsAsynIOC/iocBoot/iocOmsAsyn"
< cdCommands
epicsEnvSet("ARCH","linux-x86_64")
epicsEnvSet("MOTOR","/usr/local/epics/synApps_6_1/support/motor-R7-1")
epicsEnvSet("SUPPORT","/usr/local/epics/synApps_6_1/support")
epicsEnvSet("ASYN","/usr/local/epics/synApps_6_1/support/asyn-R4-36")
epicsEnvSet("SNCSEQ","/usr/local/epics/synApps_6_1/support/seq-2-2-6")
epicsEnvSet("BUSY","/usr/local/epics/synApps_6_1/support/busy-R1-7-2")
epicsEnvSet("AUTOSAVE","/usr/local/epics/synApps_6_1/support/autosave-R5-10")
epicsEnvSet("OPTICS","/usr/local/epics/synApps_6_1/support/optics-R2-13-3")
epicsEnvSet("CALC","/usr/local/epics/synApps_6_1/support/calc-R3-7-3")
epicsEnvSet("EPICS_BASE","/usr/local/epics/base")
epicsEnvSet("STARUP","/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC")
epicsEnvSet("AUTOSAVE_PATH","/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC/iocBoot/iocOmsAsyn/autosave")
epicsEnvSet("AUTOSAVE_REQUEST","/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC/iocBoot/iocOmsAsyn/autosave-req")
#< ../nfsCommands
## You may have to change omsAsyn to something else
## everywhere it appears in this file
# 1) ld(0,0, "omsAsyn.munch")
-> st.cmd line 12: Command ld not found.
# 2) ld 0,0, "omsAsyn.munch"
-> st.cmd line 14: Command ld not found.
# 3) ld < omsAsyn.munch or omsAsyn
-> st.cmd line 13: Can't open "omsAsyn.munch": No such file or directory.
## Register all support components
dbLoadDatabase("/usr/local/epics/synApps_6_1/support/motor-R7-1/dbd/omsAsynSupport.dbd")
dbLoadDatabase("/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC/dbd/omsAsyn.dbd")
omsAsyn_registerRecordDeviceDriver(pdbbase)
## motorUtil (allstop & alldone)
dbLoadRecords("$(MOTOR)/db/motorUtil.db", "P=TEST:")
##
< MAXnet.cmd
# Ethernet
# Serial
drvAsynSerialPortConfigure("MAXNET1","/dev/ttyUSB0",0,0,0)
asynSetOption("MAXNET1",0,"baud","115200")
asynSetOption("MAXNET1",0,"bits","8")
asynSetOption("MAXNET1",0,"parity","none")
asynSetOption("MAXNET1",0,"crtscts","Y")
# The IEOS depends on the firmware version
asynOctetSetInputEos("MAXNET1",0,"\n\r")
asynOctetSetInputEos("MAXNET1",0,"\n")
#asynOctetSetOutputEos("MAXNET1",0,"\n")
dbLoadTemplate("MAXnet.substitutions")
# omsMAXnetConfig(
# const char *portName, /* MAXnet Motor Asyn Port name */
# int numAxes, /* Number of axes this controller supports */
# const char *serialPortName,/* MAXnet Serial Asyn Port name */
# int movingPollPeriod, /* Time to poll (msec) when an axis is in motion */
# int idlePollPeriod, /* Time to poll (msec) when an axis is idle. 0 for no polling */
# const char *initString) /* Init String sent to card */
# Example init string:
# "AX LH PSO; AY LH PSO; AZ LH PSO; AT LH PSO; AU LH PSO; AV LH PSO; AR LH PSO; AS LH PSO;"
omsMAXnetConfig("MAXnet1", 10, "MAXNET1", 200, 2000, "AX LH PSO; AY LH PSO; AZ LH PSO; AT LH PSO; AU LH PSO; AV LL PSO; AR LH PSO; AS LH PSO; AW LH PSO; AK LH PSO;")
OMS Firmware Version: MAXn-A000 ver:1.50, s/n:000487, FPGA:AAA4:02 BOOT:1.06 - Oregon Micro Systems
#### Autosave save_restore start ####
#< save_restore.cmd
# -------------------------------------------------------------------------
# Where to find the list of PVs to save
# -------------------------------------------------------------------------
#set_requestfile_path("/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC/iocBoot/iocOmsAsyn/autosave-req")
# -------------------------------------------------------------------------
# Where to write the save files that will be used to restore
# -------------------------------------------------------------------------
#set_savefile_path("/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC/iocBoot/iocOmsAsyn/autosave")
# -------------------------------------------------------------------------
# There files are the standard way to use autosave in synApps.
# -------------------------------------------------------------------------
#set_pass0_restoreFile("auto_settings2.sav")
#set_pass1_restoreFile("auto_settings2.sav")
iocInit
Starting iocInit
############################################################################
## EPICS R3.15.9
## EPICS Base built Apr 7 2022
############################################################################
iocRun: All initialization complete
# -------------------------------------------------------------------------
# Autosave monitor
# -------------------------------------------------------------------------
#create_monitor_set("auto_settings2.req",60,"")
##### Autosave End ####
# Boot complete
epics>
I set ‘ld < omsAsyn.munch’ or omsAsyn, it can't open "omsAsyn.munch": No such file or directory.
omsAsyn bin file fath is ‘/usr/local/epics/synApps_6_1/support/motor-R7-1/modules/motorOmsAsyn/iocs/omsAsynIOC/bin/linux-x86_64’ here
and authority is
[root@localhost linux-x86_64]# ll
total 52
-r-xr-xr-x. 1 root root 50232 Apr 28 09:17 omsAsyn