Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017 
<== Date ==> <== Thread ==>

Subject: Multiline input to drvAscii?
From: Maren Purves <m.purves@jach.hawaii.edu>
To: EPICS Tech-Talk <tech-talk@aps.anl.gov>
Date: Tue, 01 Jun 2010 17:31:51 -1000
Hi all,

I'm currently trying to not just talk to (that part was
easy) but also get replies back from a device that responds
in a somewhat awkward way.

On an xterm it looks like this:

The command is
S
(with no <cr> or <lf>)

and the response is:
Time,1 (0.5),2 (0.7),3 (1.0),4 (2.0),5 (3.0),6 (5.0),7 (7.0),8
(10.0),Alarms,Flow(lpm),AT(C),BP(mmHg),RH(%)
176502,302,119,66,23,6,2,2,0,12,1.6,27.4,348.6,51

where the first line (which ends in RH(%)) comes
back immediately and the second line after a sampling
period that can be specified.

If I do the same from an IOC I get the following
(with drvAscii debug output included but edited to
reassemble the mixed up buffers):

drvAscii(2) => S[ a]
filename="../drvAscii.c" line number=4057
S_errno_EINTR  : [/pty/dustm.M] lost sem - recovering

filename="../drvAscii.c" line number=4074
S_errno_EINTR  : [/pty/dustm.M] lost msg sync - discarding response

filename="../drvAscii.c" line number=4074
S_errno_EINTR  : [/pty/dustm.M] lost msg sync - discarding response

filename="../drvAscii.c" line number=4074
S_errno_EINTR  : [/pty/dustm.M] lost msg sync - discarding response

filename="../drvAscii.c" line number=4074
S_errno_EINTR  : [/pty/dustm.M] lost msg sync - discarding response

filename="../drvAscii.c" line number=4074
S_errno_EINTR  : [/pty/dustm.M] lost msg sync - discarding response

filename="../drvAscii.c" line number=4074
S_errno_EINTR  : [/pty/dustm.M] lost msg sync - discarding response

filename="../drvAscii.c" line number=4074
S_errno_EINTR  : [/pty/dustm.M] lost msg sync - discarding response

drvAscii(5) <= >S [ d][ a]
drvAscii(110) <=Time,1 (0.5),2 (0.7),3 (1.0),4 (2.0),5 (3.0),6 (5.0),7 (7.0),8 (10.0),Alarms,Flow(lpm),AT(C),BP(mmHg),RH(%)[ d][ a]
drvAscii(3) <= [ d][ a]
drvAscii(3) <= [ d][ a]
drvAscii(51) <= >183771,213,72,28,7,2,1,1,1,12,1.6,28.6,343.2,45[ d][ a]
drvAscii(2) => Q[ a]
drvAscii(4) <= Q[ d][ a]
drvAscii(4) <= >[ d][ a]
drvAscii(3) <= [ d][ a]


I tried the %nT (suggested by somebody in the office) format but never
managed to get past the line that's too long.

This is on EPICS 3.13.8 and I think we're using drvAscii 2.3.


Thanks in advance, Maren

Replies:
Re: Multiline input to drvAscii? Maren Purves

Navigate by Date:
Prev: Re: state machine programming Pete R. Jemian
Next: streamDevice trick for in with or without value emmanuel_mayssat
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017 
Navigate by Thread:
Prev: RE: ask for help Mark Rivers
Next: Re: Multiline input to drvAscii? Maren Purves
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·