I think the error is coming from here in asynRecord.c (or an equivalent call to getOutputEos
status = pasynRecPvt->pasynOctet->getInputEos(
pasynRecPvt->asynOctetPvt,pasynUser,
saveEosBuf,sizeof saveEosBuf,&saveEosLen);
if (status != asynSuccess) {
reportError(pasynRec, status, "EOS TOO LONG");
return;
}
Note that it prints an error about EOS TOO LONG on any error return. It may be getting some other error from that call.
I wonder if this could be a side-effect of removing the readRaw and writeRaw functions from asyn, which was done between R4.9 and R4.10.
Can you send your st.cmd script that configures that port? I suspect you don't have EOS processing enabled, and so getInputEos is returning an (expected) failure because of that (the default implementation in asynOctetBase returns an error). If so this error should be ignorred in the asynRecord.
One workaround should be to enable EOS processing when you create the port, but leave the input and output EOS as the default zero-length strings.
Mark
________________________________
From: [email protected] on behalf of Szalata, Zenon M.
Sent: Sat 12/5/2009 11:38 PM
To: Eric Norum
Cc: TECHTALK Tech-Talk
Subject: RE: asyn R4.10, R4.11, R4.12
I am not aware of explicitly specifying the EOS string. I thought that
EOS string was not used and only the EOI was. That is, the KS3988 GPIB
CAMAC crate controller does not require nor accepts an EOS string. I
maybe wrong on this. Perhaps, somehow unwittingly I am sending some EOS
string? How can I verify that?
Actually, in my original message I told a lie, I am not using
streamdevice, just asyn.
Why does it work with asyn R4.9 and not with the newer versions? Is it
possible that starting with R4.10 default behavior changed? Could it
be, that starting with R4.10 I have to explicitly say no EOS?
Zen
-----Original Message-----
From: Eric Norum [mailto:[email protected]]
Sent: Saturday, December 05, 2009 9:01 PM
To: Szalata, Zenon M.
Cc: TECHTALK Tech-Talk
Subject: Re: asyn R4.10, R4.11, R4.12
The E5810A allows only a single EOS character. Are you trying to use a
longer end-of-string?
On Dec 5, 2009, at 8:51 PM, Szalata, Zenon M. wrote:
> Hi Eric,
> I am using Agilent E5810A.
>
> Here is a line from the st.cmd file:
>
> vxi11Configure( "L0","134.79.64.25",0,0.0,"gpib0",0,0)
>
> Thank you,
> Zen
>
>
> -----Original Message-----
> From: Eric Norum [mailto:[email protected]]
> Sent: Saturday, December 05, 2009 8:35 PM
> To: Szalata, Zenon M.
> Subject: Re: asyn R4.10, R4.11, R4.12
>
> What GPIB controller are you using?
>
> On Dec 5, 2009, at 5:42 PM, Szalata, Zenon M. wrote:
>
>> I have a simple soft IOC which uses asyn and streamdevice. It does
IO
>> with KS3988 GPIB CAMAC crate controller. The IOC works correctly
with
>> asyn R4.9. I have installed asyn R4.12 and my IOC does not work with
>> asyn R4.12. I get the following message: "EOS TOO LONG". I also
> tried
>> asyn R4.11 and R4.10 I see the same message with these the two
> versions
>> of asyn as I see with the latest.
>>
>> How do I overcome this difficulty? Do these newer versions of asyn
>> require that I make some change to my IOC? Can someone help me with
>> this, please?
>>
>> For now I am forced to stay with asyn R4.9.
>>
>> Thanks,
>> Zen
>>
>
> --
> Eric Norum
> [email protected]
>
>
>
>
--
Eric Norum
[email protected]
- References:
- asyn R4.10, R4.11, R4.12 Szalata, Zenon M.
- Re: asyn R4.10, R4.11, R4.12 Eric Norum
- RE: asyn R4.10, R4.11, R4.12 Szalata, Zenon M.
- Navigate by Date:
- Prev:
RE: asyn R4.10, R4.11, R4.12 Mark Rivers
- Next:
RE: asyn R4.10, R4.11, R4.12 Szalata, Zenon M.
- 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: asyn R4.10, R4.11, R4.12 Mark Rivers
- Next:
RE: asyn R4.10, R4.11, R4.12 Mark Rivers
- 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
|