David,
I suspect the problem could be hinted at in these messages:
save_restore: connect failed for channel 'XMAP_med1:EnableClientWait'
save_restore: connect failed for channel 'XMAP_med1:mca1.CALO'
errlog = 611 messages were discarded
save_restore: connect failed for channel 'XMAP_med1:mca4.R3HI'
save_restore: connect failed for channel 'XMAP_med1:mca4.R3IP'
save_restore: connect failed for channel 'XMAP_med1:mca4.R3NM'
save_restore: connect failed for channel 'XMAP_med1:mca4.R4LO'
save_restore: connect failed for channel 'XMAP_med1:mca4.R4HI'
save_restore: connect failed for channel 'XMAP_med1:mca4.R4IP'
It looks like maybe your 8element.template file, which is not included
in your message, is using a different PV prefix than the save/restore is
expected, and perhaps different from what your medm screens are
expecting.
I wrote that dxp software, so I can probably help figure it out. Are
you at the APS? If so I can come down and take a look.
Mark
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of David Ehle
Sent: Tuesday, March 16, 2010 3:18 PM
To: [email protected]
Subject: Help Request: Setting up NIXI-1042/NI-MXI-4/DXP-XMAP
withdxpStandalone_2-10
Hello,
I'm trying to make 2 DXP-XMAP "cards" available via Epics.
I have mostly duplicated an almost identical setup that Nino
configured for us that was using 1 DXP-XMP.
Everything seems to be set up correctly, but I can't see the PV's via
caget or an medm interface.
Below is the output of running the batchfile sets up the environment
and starts cygwin-x86\dxpApp.exe 8element.cmd Any ideas would be very
much appreciated.
The biggest oddity I'm seeing is that it seems like there are no
values for most of the PVs when its restoring from last saved state.
Do I need to set these from scratch or are there default values?
Please send any responses to [email protected] as well as the list as I am
not a regular subscriber.
Output Follows:
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM Tell
medm where to look for .adl files. Edit the follow
ing line, or comment it
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM out if
the environment variable is already set
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>set
EPICS_DISPLAY_PATH=D:\dxp_adls;D:\epics\dxpStandalone_2-
10\dxp\2-10\dxpApp\op\adl;D:\epics\dxpStandalone_2-10\autosave\4-5\asApp
\op\adl;D:\epics\dxpStandalone_2-10\mca\6-11\mca
App\op\adl;D:\epics\dxpStandalone_2-10\sscan\2-6-3\sscanApp\op\adl;D:\dx
p_adls
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM Set up
environment form Mingwin
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM
DISPLAY=localhost:0.0
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM
XKEYSYMDB=C:\Program Files\Xming\XKeysymDB
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM
XLOCALEDIR=C:\Program Files\Xming\locale
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM Start X
Server
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM
C:\Program Files\Xming\Xming.exe :0 -clipboard -multiwin
dow
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM Note
that we must use the Windows "start" command or med
m won't find X11 dlls
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM start
medm -x -macro "P=XMAP_med1:, D=dxp, M=mca" 8eleme
nt_dxp.adl
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM Put
Cygwin in the path so the EPICS application can find
cygwin1.dll
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>PATH=c:\cygw
in\bin;
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>REM
..\..\bin\cygwin-x86\dxpApp.exe 4element.cmd
D:\epics\dxpStandalone_2-10\dxp\2-10\iocBoot\iocXMAPid_med1>..\..\bin\cy
gwin-x86\dxpApp.exe
8element.cmd
< envPaths
epicsEnvSet("ARCH","cygwin-x86")
epicsEnvSet("IOC","iocXMAPid_med1")
epicsEnvSet("TOP","D:\epics\dxpStandalone_2-10\dxp\2-10")
epicsEnvSet("SNCSEQ","/cygdrive/d/epics/dxpStandalone_2-10/seq/2-0-12")
#epicsEnvSet("EPICS_BASE","/corvette/usr/local/epics/base-3.14.10")
epicsEnvSet("ASYN","/cygdrive/d/epics/dxpStandalone_2-10/asyn/4-11beta")
epicsEnvSet("MCA","/cygdrive/d/epics/dxpStandalone_2-10/mca/6-11")
epicsEnvSet("CAMAC","/cygdrive/d/epics/dxpStandalone_2-10/camac/2-5")
epicsEnvSet("DXP","/cygdrive/d/epics/dxpStandalone_2-10/dxp/2-10")
epicsEnvSet("CALC","/cygdrive/d/epics/dxpStandalone_2-10/calc/2-7")
epicsEnvSet("SSCAN","/cygdrive/d/epics/dxpStandalone_2-10/sscan/2-6-3")
epicsEnvSet("BUSY","/cygdrive/d/epics/dxpStandalone_2-10/busy/1-2")
epicsEnvSet("AUTOSAVE","/cygdrive/d/epics/dxpStandalone_2-10/autosave/4-
5")
# Tell EPICS all about the record types, device-support modules,
drivers,
# etc. in this build from dxpApp
dbLoadDatabase("/cygdrive/d/epics/dxpStandalone_2-10/dxp/2-10/dbd/dxp.db
d")
dxp_registerRecordDeviceDriver(pdbbase)
# Setup for save_restore
< ../save_restore.cmd
### save_restore setup
#
# The rest this file does not require modification for standard use,
but...
# If you want save_restore to manage its own NFS mount, specify the name
and
# IP address of the file server to which save files should be written.
# This currently is supported only on vxWorks.
#save_restoreSet_NFSHost("oxygen", "164.54.52.4")
# status-PV prefix
#save_restoreSet_status_prefix("xxx:")
# Debug-output level
save_restoreSet_Debug(0)
# 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)
# specify where save files should be
set_savefile_path("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")
#set_pass0_restoreFile("auto_settings.sav")
#set_pass1_restoreFile("auto_settings.sav")
# load general-purpose interpolation tables with local, user-editable
file
# (if interp_settings.req is included in auto_settings.req, the next
line
# will overwrite those restored values)
#set_pass1_restoreFile("interp.sav")
###
# specify directories in which to to search for included request files
set_requestfile_path("./")
set_requestfile_path("/cygdrive/d/epics/dxpStandalone_2-10/autosave/4-5"
,
"asApp/Db")
set_requestfile_path("/cygdrive/d/epics/dxpStandalone_2-10/calc/2-7",
"calcApp/Db")
set_requestfile_path("/cygdrive/d/epics/dxpStandalone_2-10/camac/2-5",
"camacApp/Db")
set_requestfile_path("/cygdrive/d/epics/dxpStandalone_2-10/dxp/2-10",
"dxpApp/Db")
set_requestfile_path("/cygdrive/d/epics/dxpStandalone_2-10/mca/6-11",
"mcaApp/Db")
set_requestfile_path("/cygdrive/d/epics/dxpStandalone_2-10/sscan/2-6-3",
"sscanApp/Db")
#dbLoadRecords("$(AUTOSAVE)/asApp/Db/save_restoreStatus.db", "P=xxx:")
save_restoreSet_status_prefix("XMAP_med1:")
dbLoadRecords("/cygdrive/d/epics/dxpStandalone_2-10/autosave/4-5/asApp/D
b/save_restoreStatus.db",
"P=XMAP_med1:")
set_pass0_restoreFile("auto_settings8.sav")
set_pass1_restoreFile("auto_settings8.sav")
# Set logging level (1=ERROR, 2=WARNING, 3=XXX, 4=DEBUG)
xiaSetLogLevel(2)
xiaInit("xmap8.ini")
xiaStartSystem
# DXPConfig(serverName, ndetectors, ngroups, pollFrequency)
DXPConfig("DXP1", 8, 1, 100)
dbLoadTemplate("8element.template")
#xiaSetLogLevel(4)
#asynSetTraceMask DXP1 0 255
#asynSetTraceIOMask DXP1 0 2
#var dxpRecordDebug 10
### 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("/cygdrive/d/epics/dxpStandalone_2-10/sscan/2-6-3/sscanApp
/Db/scan.db","P=XMAP_med1:,MAXPTS1=2000,MAXPTS2=
1000,MAXPTS3=10,MAXPTS4=10,MAXPTSH=2048")
iocInit
Starting iocInit
########################################################################
####
## EPICS R3.14.10 $$Name: R3-14-10 $$ $$Date: 2008/10/27 19:39:04 $$
## EPICS Base built Apr 29 2009
########################################################################
####
reboot_restore: entry for file 'auto_settings8.sav'
reboot_restore (v4.11): entry for file 'auto_settings8.sav'
reboot_restore: Found filename 'auto_settings8.sav' in restoreFileList.
*** restoring from 'autosave/auto_settings8.sav' at initHookState 5
(before record/device init) ***
1569 PVs had no saved value.
reboot_restore: done with file 'auto_settings8.sav'
Registered for notification of PCI DMA channel 0: HANDLE 0x564
2010/03/16 15:07:31.901 drvDxp::drvUserCreate, unknown command=ACQUIRING
dxpXMAP1:ReadCallback devAsynInt32::initCommon drvUserCreate
recDynLinkOut: waiting for CA context
reboot_restore: entry for file 'auto_settings8.sav'
recDynLinkOut: got CA context
reboot_restore (v4.11): entry for file 'auto_settings8.sav'
reboot_restore: Found filename 'auto_settings8.sav' in restoreFileList.
*** restoring from 'autosave/auto_settings8.sav' at initHookState 6
(after record/device init) ***
1569 PVs had no saved value.
reboot_restore: done with file 'auto_settings8.sav'
iocRun: All initialization complete
seq dxpMED, "P=XMAP_med1:, DXP=dxp, MCA=mca, N_DETECTORS=8"
SEQ Version 2.0.12: Mon Feb 2 14:57:27 2009
Spawning state program "dxpMED", thread 0x10432b10: "dxpMED"
### Start up the autosave task and tell it what to do.
# Save settings every thirty seconds
create_monitor_set("auto_settings8.req", 30, "P=XMAP_med1:")
### Start the saveData task.
saveData_Init("saveData.req", "P=XMAP_med1:")
saveData: message queue created
saveData: Can't connect to some or all retry PVs
saveData: section [basename] not found
CAS: UDP recv error (errno=Interrupted system call)
epics> Registered for notification of PCI DMA channel 0: HANDLE 0x568
save_restore:connect_list: not all searches successful
save_restore: connect failed for channel 'XMAP_med1:PresetReal'
save_restore: connect failed for channel 'XMAP_med1:PresetLive'
save_restore: connect failed for channel 'XMAP_med1:StatusAll.SCAN'
save_restore: connect failed for channel 'XMAP_med1:ReadAll.SCAN'
save_restore: connect failed for channel 'XMAP_med1:ReadDXPs.SCAN'
save_restore: connect failed for channel
'XMAP_med1:ReadDXPBaselines.SCAN'
save_restore: connect failed for channel
'XMAP_med1:BaselineHistoryTimes'
save_restore: connect failed for channel 'XMAP_med1:TraceWaits'
save_restore: connect failed for channel 'XMAP_med1:EnableClientWait'
save_restore: connect failed for channel 'XMAP_med1:mca1.CALO'
errlog = 611 messages were discarded
save_restore: connect failed for channel 'XMAP_med1:mca4.R3HI'
save_restore: connect failed for channel 'XMAP_med1:mca4.R3IP'
save_restore: connect failed for channel 'XMAP_med1:mca4.R3NM'
save_restore: connect failed for channel 'XMAP_med1:mca4.R4LO'
save_restore: connect failed for channel 'XMAP_med1:mca4.R4HI'
save_restore: connect failed for channel 'XMAP_med1:mca4.R4IP'
save_restore: connect failed for channel 'XMAP_med1:mca4.R4NM'
save_restore: connect failed for channel 'XMAP_med1:mca4.R5LO'
save_restore: connect failed for channel 'XMAP_med1:mca4.R5HI'
save_restore: connect failed for channel 'XMAP_med1:mca4.R5IP'
save_restore: connect failed for channel 'XMAP_med1:mca4.R5NM'
save_restore: connect failed for channel 'XMAP_med1:mca4.R6LO'
CAS: UDP recv error (errno=Interrupted system call)
CAS: Client accept error was "Interrupted system call"
eAS: Client accept error was "Interrupted system call"
CAS: UDP recv error (errno=Interrupted system call)
Thanks in advance!
David.