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  <20172018  2019  2020  2021  2022  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  <20172018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: same value updates after initialization in pcaspy 0.7.0
From: Jameson Graef Rollins <[email protected]>
To: Wang Xiaoqiang <[email protected]>, EPICS tech-talk <[email protected]>
Date: Fri, 29 Dec 2017 14:36:10 -0800
Hi, Xiaoqiang.  Where you not able to verify this problem?  This should
be independent from the other issue I reported.

I still see the same problem with the head of master (1f0a509).  I'm
using EPICS 3.15.5.

jamie.


On Wed, Dec 27 2017, Jameson Graef Rollins <[email protected]> wrote:
> Hi, Xiaoqiang et. al.  I'm seeing some behavior in pcaspy 0.7.0 that I'm
> not understanding, and I'm hoping you can help me figure out what's
> going on.
>
> I have a trivial test pcaspy IOC (code attached) serving a single
> channel "TEST:A".  After starting the IOC I run camonitor on the
> channel:
>
> $ camonitor TEST:A
> TEST:A                         2017-12-27 19:15:42.991145 0
>
> If I then put the *same* initial value into the channel...
>
> $ caput TEST:A 0
> Old : TEST:A                         0
> New : TEST:A                         0
> $
>
> ...I see an update:
>
> guard-test> camonitor TEST:A
> TEST:A                         2017-12-27 19:15:42.991145 0  
> TEST:A                         2017-12-27 19:15:50.661466 0  
>
> Additional puts with the same value show no more spurious updates.  So
> this only happens immediately after initialization.
>
> This is contrary to the behavior that I now expect, whereby there would
> never be external updates if the value was not changing.  Can you help
> me understand what's going on?
>
> Basically I'm looking for the best way to get consistent behavior out of
> the pcaspy driver, either where puts always show updates even if the
> value is the same, or that puts of the current value do not ever show
> updates.  How can I achieve this?
>
> Thanks in advance for any help.
>
> jamie.
>
>
> #!/usr/bin/env python
>
> import sys
> import pcaspy
>
> prefix = 'TEST:'
> pvdb = {
>     'A': {
>         'prec': 0
>     },
> }
>
> class DummyDriver(pcaspy.Driver):
>     pass
>
> server = pcaspy.SimpleServer()
> server.createPV(prefix, pvdb)
> driver = DummyDriver()
>
> for k in pvdb:
>     driver.setParamStatus(k, pcaspy.Severity.NO_ALARM, pcaspy.Severity.NO_ALARM)
> driver.updatePVs()
>
> while True:
>     server.process(0.1)

Attachment: signature.asc
Description: PGP signature


References:
same value updates after initialization in pcaspy 0.7.0 Jameson Graef Rollins

Navigate by Date:
Prev: Re: usage of updatePVs in pcaspy Wang Xiaoqiang (PSI)
Next: Re: usage of updatePVs in pcaspy Jameson Graef Rollins
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: same value updates after initialization in pcaspy 0.7.0 Jameson Graef Rollins
Next: usage of updatePVs in pcaspy Jameson Graef Rollins
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
ANJ, 29 Dec 2017 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·