EPICS Controls 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  2012  2013  2014  2015  2016  2017  2018  2019  2020  <20212022  2023  2024  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  <20212022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: [EXTERNAL] calcout record processing
From: "Hu, Yong via Tech-talk" <tech-talk at aps.anl.gov>
To: "Johnson, Andrew N." <anj at anl.gov>, "Rivers, Mark L." <rivers at cars.uchicago.edu>
Cc: EPICS tech-talk <tech-talk at aps.anl.gov>
Date: Thu, 6 May 2021 19:03:31 +0000
I just did a quick test. Randall's problem is repeatable. If a record (e.g. testAsyn) has DTYP "asynInt32" but no field(INP, "@..."), its FLNKed record will not be processed after a put to testAsyn.  However, the value of  testAsyn is changed although its alarm severity is INVALID.

[yhu@sps-diaglabs-dev-ibm example]$ caput testAsyn 1
Old : testAsyn                       0
New : testAsyn                       1
[yhu@sps-diaglabs-dev-ibm example]$ caget -a testAsyn
testAsyn                       <undefined> 1 UDF INVALID

And I get a waring message related to devAsynInt32 after iocInit. Probably Randall did not pay enough attention to that kind of warning. 

Starting iocInit
############################################################################
## EPICS R7.0.5
## Rev. R7.0.5-dirty
############################################################################
testAsyn devAsynInt32::initCommon  invalid INST_IO Must be asynMask(<port> <addr> <mask> <timeout>)userParams

BTW, "PP" is not needed in the field FLNK. This seems more straightforward to me: field(FLNK, "$(P):fsCalc")

Cheers,
-- Yong 


On 5/6/21, 2:38 PM, "Tech-talk on behalf of Johnson, Andrew N. via Tech-talk" <tech-talk-bounces at aps.anl.gov on behalf of tech-talk at aps.anl.gov> wrote:


    > On May 6, 2021, at 1:05 PM, Mark Rivers via Tech-talk <tech-talk at aps.anl.gov> wrote:
    > 
    >> But fsControl is also SCAN=Passive in the example. For the FLNK or the INP CP to work, something must trigger fsControl to process.
    > 
    > Randall's original message said:
    > 
    >> If I put to fsControl, it sets but nothing happens.
    > 
    > So my understanding is that he was doing a caput to fsControl, but the FLNK was not processing fsCalc, as it should have.

    That would make sense given that DTYP was set; the asynInt32 device support will have disabled the record (leaving PACT as 1) when it didn’t see an address in the INP field. In that state a put to the ai record will not cause it to be processed.

    - Andrew


    > ________________________________
    > From: Hartman, Steven <hartmansm at ornl.gov>
    > Sent: Thursday, May 6, 2021 12:57 PM
    > To: Mark Rivers
    > Cc: Arnold, Ned D.; Randall Cayford; tech-talk at aps.anl.gov
    > Subject: Re: [EXTERNAL] calcout record processing
    > 
    > 
    > 
    > On May 6, 2021, at 1:52 PM, Mark Rivers via Tech-talk <tech-talk at aps.anl.gov<mailto:tech-talk at aps.anl.gov>> wrote:
    > 
    > He did FLNK from fsControl to fsCalc.  If that FLNK is not actually processing fsCalc than I think it may be because of the DTYP/INP mismatch.
    > 
    > 
    > But fsControl is also SCAN=Passive in the example. For the FLNK or the INP CP to work, something must trigger fsControl to process.
    > 
    > --
    > Steven Hartman
    > hartmansm at ornl.gov<mailto:hartmansm at ornl.gov>
    > 
    > 
    > 

    -- 
    Complexity comes for free, simplicity you have to work for.



References:
calcout record processing Randall Cayford via Tech-talk
Re: calcout record processing Arnold, Ned D. via Tech-talk
RE: calcout record processing Mark Rivers via Tech-talk
Re: [EXTERNAL] calcout record processing Hartman, Steven via Tech-talk
Re: [EXTERNAL] calcout record processing Mark Rivers via Tech-talk
Re: [EXTERNAL] calcout record processing Johnson, Andrew N. via Tech-talk

Navigate by Date:
Prev: Re: [EXTERNAL] calcout record processing Johnson, Andrew N. via Tech-talk
Next: Building areaDetector on Windows with MSYS2 and MINGW64 Smith, William via Tech-talk
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  <20212022  2023  2024 
Navigate by Thread:
Prev: Re: [EXTERNAL] calcout record processing Johnson, Andrew N. via Tech-talk
Next: Building areaDetector on Windows with MSYS2 and MINGW64 Smith, William via Tech-talk
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  <20212022  2023  2024 
ANJ, 07 May 2021 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·