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  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020 
<== Date ==> <== Thread ==>

Subject: asynPortDriver, I/O INTR and missing updates
From: Jimmy Johnson <jjohnson@keck.hawaii.edu>
To: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Sat, 7 Apr 2012 00:58:47 +0000

We have recently built a number of drivers using asynPortDriver. The process has been extremely easy and the results good. We did run into one problem recently which I’d like to get input on.  What we found was that we were missing updates from one driver when using “I/O INTR”. When we looked into it we discovered it was because the setDouble member of paramList checks to see whether the value being passed to it is different from the current parameter value before if updates its flag for inclusion as part of callCallbacks. About 1% of the time the data our driver retrived matched the previous value.

 

In our case we need the “I/O INTR” records to process regardless of whether the value differs or not (in addition to providing the currrent value it is triggering our servo processing). For now we just modified the asynPortDriver source but this is not how we want to proceed. Would it be possible to modify the setXXXParam calls to take a third defaulted parameter, e.g.  setDoubleParam(int index, double value, bool ignorevaluecheck = false), offer  an overloaded set of setXXXParam calls or is there a way to use the current class such that callbacks occur regardless of the value?

 

Thanks

Jimmy Johnson

 


Replies:
RE: asynPortDriver, I/O INTR and missing updates Mark Rivers
Re: asynPortDriver, I/O INTR and missing updates Eric Norum

Navigate by Date:
Prev: Re: [db] simple command ? Benjamin Franksen
Next: RE: asynPortDriver, I/O INTR and missing updates Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020 
Navigate by Thread:
Prev: RE: a question about sequencer Mark Rivers
Next: RE: asynPortDriver, I/O INTR and missing updates Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·