Hi Dirk,
My test application now works after the new file you provided was installed. Thanks a million, I am happy now. I will now add all the @init calls to my full size application and hopefully all will work just as well. Thanks again,
Zen
-----Original Message-----
From: Dirk Zimoch [mailto:[email protected]]
Sent: Wednesday, November 07, 2007 4:50 AM
To: Szalata, Zenon M.
Cc: Mark Rivers; EPICS tech-talk
Subject: Re: Stream device
Hello Zenon,
please try the attached version of AsynDriverInterface.cc with StreamDevice version 2.3.
I changed the location of the asynCommon->connect call. For me, that helped.
Dirk
Szalata, Zenon M. wrote:
> Hi Mark, Dirk,
> I built my test application (btest) against SLAC/LCLS EPICS R3.14.8.2, asyn 4.7, and streamdevice 2.2. Still get the following even with asynSetTraceMask( "L0",8,0):
>
> -----------------------------
> #!../../bin/linux-x86/atest
> < envPaths
> epicsEnvSet(ARCH,"linux-x86")
> epicsEnvSet(IOC,"iocbtest")
> epicsEnvSet(TOP,"/afs/slac.stanford.edu/g/esa/ilc/epics/iocTop/btest")
> epicsEnvSet(EPICS_SITE_TOP,"/nfs/slac/g/lcls/build/epics")
> epicsEnvSet(ASYN,"/nfs/slac/g/lcls/build/epics/modules/asyn/asyn-R4-7-
> 1-lcls2")
> epicsEnvSet(STRM,"/nfs/slac/g/lcls/build/epics/modules/streamdevice/st
> reamdevice
> -R2-2-lcls2")
> epicsEnvSet(EPICS_BASE,"/nfs/slac/g/lcls/build/epics/base/base-R3-14-8
> -2-lcls2") epicsEnvSet( "STREAM_PROTOCOL_PATH","../../btestApp/Db:.")
> cd /afs/slac.stanford.edu/g/esa/ilc/epics/iocTop/btest
> dbLoadDatabase("dbd/btest.dbd",0,0)
> btest_registerRecordDeviceDriver(pdbbase)
> vxi11Configure( "L0","134.79.64.25",0,0.0,"gpib0",0,0)
> #asynSetTraceMask( "L0",0,255)
> asynSetTraceMask( "L0",8,0)
> dbLoadRecords("db/btest.db","P=AG:,L=0,A=8")
> cd
> /afs/slac.stanford.edu/g/esa/ilc/epics/iocTop/btest/iocBoot/iocbtest
> iocInit()
> Starting iocInit
> ######################################################################
> ###### ### EPICS IOC CORE built on Oct 30 2007 ### EPICS
> R3.14.8.2-LCLS_2 $R3-14-8-2$ $2006/01/06 15:55:13$
> ######################################################################
> ######
> 2007/11/06 20:06:48.372 AG:WFreq: asynError in write: L0 port is not
> connected
>
> 2007/11/06 20:06:48.372 AG:WFreq: @init handler failed
> 2007/11/06 20:06:48.372 AG:WFreq: Record initialization failed Bad
> init_rec return value PV: AG:WFreq ao: init_record
> iocInit: All initialization complete
> epics> exit
> zms@esaux1 $
> ---------------------------------
> So, it is not my installation of these three software packages. What is it? I also ran btest with the asynSetTraceMask commented out and got exactly the same errors.
> Any help is greatly appreciated. Thanks, Zen
>
> -----Original Message-----
> From: Mark Rivers [mailto:[email protected]]
> Sent: Monday, November 05, 2007 10:38 AM
> To: Szalata, Zenon M.; Dirk Zimoch
> Cc: EPICS tech-talk
> Subject: RE: Stream device
>
> Dirk wrote:
>
>> I tried to do some debugging with the asynTrace facility and found
> that the problem
>> disappears as soon as I call asynSetTraceMask, even with a 0 mask!
>
> That is because the asynSetTraceMask causes a call to
> asynCommon->connect. I had suggested this earlier to Zen. However, I
> see that you used an asyn "address" of 8, while I was suggesting 0.
> Zen, are you sure you tried adding the asynSetTraceMask with the subaddress that your @init device is actually using?
>
> Mark
>
>
>> -----Original Message-----
>> From: [email protected]
>> [mailto:[email protected]] On Behalf Of Szalata, Zenon M.
>> Sent: Monday, November 05, 2007 12:11 PM
>> To: Dirk Zimoch
>> Cc: EPICS tech-talk
>> Subject: RE: Stream device
>>
>> Hi Dirk,
>> Unfortunately this does not solve my problem. I am using epics
>> R3.14.9 and asyn 4-9. This is the output I get with my simple test
>> soft IOC:
>>
>> -------------------------------------
>> zms@esaux1 $ ../../bin/linux-x86/atest st.cmd
>> #!../../bin/linux-x86/atest < envPaths
>> epicsEnvSet(ARCH,"linux-x86")
>> epicsEnvSet(IOC,"iocagwfg")
>> epicsEnvSet(TOP,"/afs/slac.stanford.edu/g/esa/ilc/epics/iocTop/atest"
>> )
>> epicsEnvSet(ASYN,"/afs/slac/g/esa/ilc/epics/modules/asyn/4-9")
>> epicsEnvSet(STRM,"/afs/slac/g/esa/ilc/epics/modules/streamdevice-2-3"
>> )
>> epicsEnvSet(EPICS_BASE,"/afs/slac/g/esa/ilc/epics/base/R3-14-9-ilc1")
>> epicsEnvSet( "STREAM_PROTOCOL_PATH","../../atestApp/Db:.")
>> cd /afs/slac.stanford.edu/g/esa/ilc/epics/iocTop/atest
>> dbLoadDatabase("dbd/atest.dbd",0,0)
>> atest_registerRecordDeviceDriver(pdbbase)
>> vxi11Configure( "L0","134.79.64.25",0,0.0,"gpib0",0,0)
>> #asynSetTraceMask( "L0",0,255)
>> asynSetTraceMask( "L0",8,0)
>> dbLoadRecords("db/atest.db","P=AG:")
>> cd
>> /afs/slac.stanford.edu/g/esa/ilc/epics/iocTop/atest/iocBoot/iocagwfg
>> iocInit()
>> Starting iocInit
>> ##############################################################
>> ##############
>> ## EPICS R3.14.9-lcls1 $R3-14-9$ $2007/02/05 16:31:45$ ## EPICS Base
>> built Oct 2 2007
>> ##############################################################
>> ##############
>> 2007/11/05 09:51:13.140 AG:WFreq: asynError in write: L0 port is not
>> connected
>>
>> 2007/11/05 09:51:13.141 AG:WFreq: @init handler failed
>> 2007/11/05 09:51:13.141 AG:WFreq: Record initialization failed Bad
>> init_rec return value PV: AG:WFreq ao: init_record
>> iocInit: All initialization complete
>> epics> 2007/11/05 09:51:23.143 AG:RFreq: asynError in write:
>> L0 port is not conn
>> ected
>>
>> exit
>> zms@esaux1 $
>> ---------------------------------------
>>
>> Here are my atest.db and atest.proto files:
>> ---------------------------------------
>> record( ai,"$(P)RFreq"){
>> field( DESC, "read frequency")
>> field( DTYP, "stream")
>> field( SCAN, "10 second")
>> field( PREC, "2")
>> field( EGU, "Hz")
>> field( INP, "@atest.proto rFreq L0 8") } record( ao,"$(P)WFreq"){
>> field( DESC, "write frequency")
>> field( DTYP, "stream")
>> field( SCAN, "Passive")
>> field( PREC, "2")
>> field( EGU, "Hz")
>> field( OUT, "@atest.proto wFreq L0 8") }
>>
>> # file: atest.proto
>>
>> Terminator=LF;
>>
>> rFreq{ out "FREQ?"; in "%f";}
>> wFreq{ out "FREQ %f"; @init{ rFreq;}}
>> ---------------------------------------------
>>
>> Here is the tail end of constructed atest.dbd file:
>> ---------------------------
>> device(waveform,INST_IO,asynFloat64ArrayWfOut,"asynFloat64ArrayOut")
>> device(asyn,INST_IO,asynRecordDevice,"asynRecordDevice")
>> driver(stream)
>> driver(drvAsyn)
>> registrar(asSub)
>> registrar(streamRegistrar)
>> registrar(asynRegister)
>> registrar(asynInterposeFlushRegister)
>> registrar(asynInterposeEosRegister)
>> registrar(vxi11RegisterCommands)
>> registrar(drvAsynIPPortRegisterCommands)
>> registrar(drvAsynSerialPortRegisterCommands)
>> variable(asCaDebug,int)
>> variable(dbRecordsOnceOnly,int)
>> variable(dbBptNotMonotonic,int)
>> variable(streamDebug,int)
>> ----------------------------------
>>
>> And finally, her is atestApp/src/Makefile:
>> -----------------------------------
>> TOP=../..
>>
>> include $(TOP)/configure/CONFIG
>>
>> PROD_IOC = atest
>>
>> DBD += atest.dbd
>> atest_DBD += base.dbd
>> atest_DBD += stream.dbd
>> atest_DBD += asyn.dbd
>> atest_DBD += drvVxi11.dbd
>> atest_DBD += atestSup.dbd
>>
>> # <name>_registerRecordDeviceDriver.cpp will be created from
>> <name>.dbd atest_SRCS += atest_registerRecordDeviceDriver.cpp
>> atest_SRCS_DEFAULT += atestMain.cpp
>> atest_SRCS_vxWorks += -nil-
>>
>> #The following adds support from base/src/vxWorks atest_OBJS_vxWorks
>> += $(EPICS_BASE_BIN)/vxComLibrary
>>
>> #add a definition for each support application used by this
>> application atest_LIBS += stream atest_LIBS += asyn
>>
>> atest_LIBS += $(EPICS_BASE_IOC_LIBS)
>>
>> include $(TOP)/configure/RULES
>> ---------------------------------
>>
>> Are you using earlier versions of Epics or asyn? If you are using
>> the same version of these two packages, am I missing something in my
>> Makefile or some other files?
>> Thanks for helping,
>> Zen
>>
>> -----Original Message-----
>> From: Dirk Zimoch [mailto:[email protected]]
>> Sent: Monday, November 05, 2007 5:59 AM
>> To: Szalata, Zenon M.
>> Subject: Re: Stream device
>>
>> Hello Zen,
>>
>> I tested @init handlers with several devices today. I found that TCP
>> ports as well as serial ports work as expected. The problem only
>> occurs with vxi11 ports.
>>
>> However, I got different error messages:
>>
>> --------------------------------------------------------------
>> 2007/11/05 13:57:32.057 gpib0,8 vxiCreateDeviceLink RPC error
>> : RPC: Timed out
>>
>> 2007/11/05 13:57:32.058 L0 vxiCreateDevLink failed for addr 8
>> 2007/11/05 13:57:32.058 asynManager::asynConnectCallback, port L0
>> error calling
>> asynCommon->connect
>> 2007/11/05 13:57:36.067 L0 vxi11 clientCall errno 0 clnt_stat
>> 5 L0 vxiBusStatus RPC error : RPC: Timed out
>>
>> 2007/11/05 13:57:36.067 L0 asynGpib:srqPoll srqStatus error timeout
>> 2007/11/05 13:57:40.077 L0 vxi11 clientIoCall errno 0 clnt_stat 5
>> 2007/11/05 13:57:40.077 DZ:cmd: asynError in write: L0 RPC failed
>>
>> 2007/11/05 13:57:40.078 DZ:cmd: @init handler failed
>> 2007/11/05 13:57:40.078 DZ:cmd: Record initialization failed
>> ----------------------------------------------------------------
>>
>> StreamDevice error messages start with "asynError in write:
>> L0 RPC failed". All above is drvVxi11 or asynManager.
>>
>> I tried to do some debugging with the asynTrace facility and found
>> that the problem disappears as soon as I call asynSetTraceMask, even
>> with a 0 mask!
>>
>> Thus try this in your startup script:
>>
>> ...
>> vxi11Configure( "L0","134.79.64.25",0,0.0,"gpib0",0,0)
>> asynSetTraceMask ("L0",8,0)
>> ...
>>
>> However, I still have not the slightest idea what goes wrong in the
>> vxi11 driver.
>>
>>
>> I Hope this helps.
>>
>> Dirk
>>
>>
>
--
Dr. Dirk Zimoch
Paul Scherrer Institut, WBGB/006
5232 Villigen PSI, Switzerland
Phone +41 56 310 5182
- Replies:
- Re: Stream device Dirk Zimoch
- References:
- RE: Stream device Szalata, Zenon M.
- RE: Stream device Mark Rivers
- RE: Stream device Szalata, Zenon M.
- Re: Stream device Dirk Zimoch
- Navigate by Date:
- Prev:
RE: synchronizing data to an event Jeff Hill
- Next:
Re: synchronizing data to an event Till Straumann
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
<2007>
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: Stream device Dirk Zimoch
- Next:
Re: Stream device Dirk Zimoch
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
<2007>
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|