EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: problem in communicating to the GPIB device with ASYN4-6
From: Emmanuel Mayssat <[email protected]>
To: Eric Norum <[email protected]>
Cc: zhangdemin99 <[email protected]>, tech-talk <[email protected]>
Date: Thu, 02 Aug 2007 10:26:18 -0700
> > I have declared the command array as follows:
> > {&DSET_SO,GPIBWRITE,IB_Q_LOW,0,"DISPlay:TEXT \"%S""EOSNL, 
> > 0,200,0,0,0,0,0,EOSNL},
> 1) You need to use a lower-case character for the format string.
> 2) As mentioned above, it is better to set the end-of-string values  
> elsewhere.  With these changes the command table entry becomes:
> {&DSET_SO,GPIBWRITE,IB_Q_LOW,NULL,"DISP:TEXT \"%s"",0,200,NULL, 
> 0,0,NULL,NULL,NULL}

Not so long ago, I faced a similar issue.
The serial version of my driver worked well, but that same version using
serial over Ethernet didn't. The problem was traced back to the
terminators...

My understanding is that you have 2 purposes for terminators.
Indeed you really have 2 terminators.
The first one, the output eos, is for the device. That is, you need to
send a correctly formatted command.
Second, the input eos, which is used by asyn to match complete replies.
If the input terminator is never matched by asyn, asyn will keep on
waiting for chars and never forward anything to upper layers (devGpib).
So although you *may think* that the eos are set correctly in your
command table, asyn may never match or pass along any received messages.
Tough!

So if just like me, you want to avoid this one-two punch, from now on
always set the terminators where they are used, i.e. at the asyn level. 

Best of luck with your mental wrestling...

--
E


References:
problem in communicating to the GPIB device with ASYN4-6 zhangdemin99
Re: problem in communicating to the GPIB device with ASYN4-6 Eric Norum

Navigate by Date:
Prev: Web page, Re: EPICS Meeting in conjunction with ICALEPCS Kay-Uwe Kasemir
Next: "invalid UDP request" during boot Laznovsky, Michael
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: problem in communicating to the GPIB device with ASYN4-6 Eric Norum
Next: Channel Archiver | Matlab Eric Berryman
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  <20072008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Nov 2011 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·