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  2021  2022  2023  2024  <20252026  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  2021  2022  2023  2024  <20252026 
<== Date ==> <== Thread ==>

Subject: Re: synchronizing the value of a read/write record
From: Mark Rivers via Tech-talk <[email protected]>
To: "[email protected] Talk" <[email protected]>, "Thomas, Patrick" <[email protected]>
Date: Wed, 13 Aug 2025 12:48:16 +0000
Hi Patrick,

As Ralph said, if your driver is written using asyn then you can use the info(asyn:READBACK) tag on your output record.



I'm not sure what you mean here.  I think the EPICS record locking an asyn port locking will guarantee that all EPICS writes get sent to the hardware atomically, and that all callbacks from the driver that update the output record will be atomic.  However, once EPICS writes the value to the hardware, the next poll of the hardware could quickly change the output record.  Maybe I am not understanding your question.

Mark




From: Tech-talk <[email protected]> on behalf of Thomas, Patrick via Tech-talk <[email protected]>
Sent: Tuesday, August 12, 2025 7:41 PM
To: [email protected] Talk <[email protected]>
Subject: synchronizing the value of a read/write record
 
Hello,

I'm attempting to write device support to handle the scenario where changes to the value of a hardware device can be made from both EPICS and another source. I would like the value of the hardware to be changed if I write a value to the record through channel access, and also to continuously monitor the hardware device for changes made from the other source and update the value of the record to match. One approach I have considered is to use separate output and input records, where the output records write values set from channel access to the hardware and the input records periodically scan the hardware and update their values accordingly. I am wondering however if there is a way to do this with the val field of just an output record. Is there any way to synchronize things so that write requests coming from channel access are always written to the hardware and not overridden by periodic updates from reading the hardware?

Thank you,
Patrick


Replies:
Re: synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
References:
synchronizing the value of a read/write record Thomas, Patrick via Tech-talk

Navigate by Date:
Prev: Re: synchronizing the value of a read/write record Ralph Lange via Tech-talk
Next: Modbus asyn issue with RS485 connection (maybe hardware related) Heinz Junkes (FHI) 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  2021  2022  2023  2024  <20252026 
Navigate by Thread:
Prev: Re: synchronizing the value of a read/write record Thomas, Patrick via Tech-talk
Next: Re: synchronizing the value of a read/write record Thomas, Patrick 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  2021  2022  2023  2024  <20252026 
ANJ, 19 Mar 2026 · Home · News · About · Talk · Base · Modules · Extensions ·
· Distributions · Download · Documents · Links · Licensing ·