EPICS Home

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  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Multiline input to drvAscii?
From: Maren Purves <[email protected]>
To: EPICS Tech-Talk <[email protected]>
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  2018  2019  2020  2021  2022  2023  2024 
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  2018  2019  2020  2021  2022  2023  2024