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  <2025 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  <2025
<== Date ==> <== Thread ==>

Subject: Re: Areadetector Plugin Enable/Disable Issue and Design Question
From: Mark Rivers via Tech-talk <tech-talk at aps.anl.gov>
To: Edmund Blomley <edmund.blomley at kit.edu>
Cc: "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>
Date: Sat, 22 Mar 2025 15:57:13 +0000
Hi Eddy, 
> 
> Thanks for that and sorry for overlooking that part in the common plugins file.

First want to check that setting callbackSetQueueSize(5000) does indeed fix the problem with incorrect RBV callback values? Is that true?
> 
> 1. Is there a direct way to get the current background image into a StdArray, so I can display it on the panel?
> 2. The profile PVs from the stats module contain the Y information for the plot, is there also an array which I can use for the x pv? (so an array from 0:DimX/Y)
> 3. And connected to 2.: does one of the plugins provide the option to scale the pixel/dimensions to mm, so also all cacluclated stats etc are in mm?

I will look into those questions when I’m back at the lab on Tuesday.

Sent from my iPhone

> On Mar 21, 2025, at 10:08 PM, Blomley, Edmund (IBPT) <edmund.blomley at kit.edu> wrote:
> 
> Hey Mark,
> 
> Thanks for that and sorry for overlooking that part in the common plugins file.
> 
> Three small follow-up questions regarding the plugins:
> 
> 1. Is there a direct way to get the current background image into a StdArray, so I can display it on the panel?
> 2. The profile PVs from the stats module contain the Y information for the plot, is there also an array which I can use for the x pv? (so an array from 0:DimX/Y)
> 3. And connected to 2.: does one of the plugins provide the option to scale the pixel/dimensions to mm, so also all cacluclated stats etc are in mm?
> 
> Cheers
> eddy
> 
> -----Ursprüngliche Nachricht-----
> Von: Mark Rivers <rivers at cars.uchicago.edu>
> Gesendet: Freitag, 21. März 2025 16:55
> An: Blomley, Edmund (IBPT) <edmund.blomley at kit.edu>; tech-talk at aps.anl.gov
> Betreff: RE: Areadetector Plugin Enable/Disable Issue and Design Question
> 
> Hi Eddy,
> 
> I am quite sure that the weird _RBV behavior is due to these errors you see after iocInit:
> 
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> 
> You can eliminate those by adding this line before iocInit.  It is already present at the end of commonPlugins.cmd if you use that.
> 
> # Set the callback queue size to 5000, up from default of 2000 in base.
> # This can be needed to avoid errors "callbackRequest: cbLow ring buffer full".
> callbackSetQueueSize(5000)
> 
> Mark
> 
> -----Original Message-----
> From: Blomley, Edmund (IBPT) <edmund.blomley at kit.edu>
> Sent: Friday, March 21, 2025 9:55 AM
> To: Mark Rivers <rivers at cars.uchicago.edu>; tech-talk at aps.anl.gov
> Subject: AW: Areadetector Plugin Enable/Disable Issue and Design Question
> 
> Hey Mark,
> 
>    That should definitely not be happening, I have never heard of that issue before.
> 
>    Just to be sure it is not a problem with the GUI please test it as follows:
>    • In one terminal window run the following camonitor command where the * is replaced by your actual prefix
>               camonitor *:Proc1:EnableCallbacks *:Proc1:EnableCallbacks_RBV
>    • In a second terminal window run caput
>               caput *:Proc1:EnableCallbacks 1
>          caput *:Proc1:EnableCallbacks 0
> 
> So here is the terminal 1 (fresh after IOC restart):
> 
> $ caput *:Proc1:EnableCallbacks 1
> Old : *:Proc1:EnableCallbacks Disable
> New : *:Proc1:EnableCallbacks Enable
> $caput *:EnableCallbacks 0
> Old : *:Proc1:EnableCallbacks Enable
> New : *:Proc1:EnableCallbacks Disable
> $ caput *:Proc1:EnableCallbacks 1
> Old : *:Proc1:EnableCallbacks Disable
> New : *:Proc1:EnableCallbacks Enable
> $ caput *:Proc1:EnableCallbacks 0
> Old : *:Proc1:EnableCallbacks Enable
> New : *:Proc1:EnableCallbacks Disable
> 
> And terminal 2 (first two lines are before the first caput after IOC init):
> 
> *:Proc1:EnableCallbacks 2025-03-21 15:37:01.331762 Disable *:Proc1:EnableCallbacks_RBV <undefined> Disable UDF INVALID *:Proc1:EnableCallbacks 2025-03-21 15:37:20.323116 Enable *:Proc1:EnableCallbacks_RBV 2025-03-21 15:37:20.323176 Disable *:Proc1:EnableCallbacks 2025-03-21 15:37:24.247508 Disable *:Proc1:EnableCallbacks_RBV 2025-03-21 15:37:24.247585 Enable STATE MINOR *:Proc1:EnableCallbacks 2025-03-21 15:37:29.191775 Enable *:Proc1:EnableCallbacks_RBV 2025-03-21 15:37:29.191858 Disable *:Proc1:EnableCallbacks 2025-03-21 15:37:35.575135 Disable *:Proc1:EnableCallbacks_RBV 2025-03-21 15:37:35.575210 Enable STATE MINOR
> 
> The plugin "works"/ is enabled as long as the *:Proc1:EnableCallbacks is 1.
> 
> The last few lines during IOC init:
> 
> cas warning: Configured TCP port was unavailable.
> cas warning: Using dynamically assigned TCP port 41665, cas warning: but now two or more servers share the same UDP port.
> cas warning: Depending on your IP kernel this server may not be cas warning: reachable with UDP unicast (a host's IP in EPICS_CA_ADDR_LIST)
> iocRun: All initialization complete
> 2025-03-21T15:37:01.336 Using dynamically assigned TCP port 43249.
> # Create autosave files for IOCStats
> makeAutosaveFileFromDbInfo("iocStats_settings_kara_slm", "autosaveFields_pass0") create_monitor_set("auto_settings_kara_slm.req", 60) create_monitor_set("iocStats_settings_kara_slm.req", 60)
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> callbackRequest: cbLow ring buffer full
> epics> iocStats_settings_kara_slm.sav: 63 of 63 PV's connected
> auto_settings_kara_slm.sav: 360 of 360 PV's connected
> epics>
> 
> but there are no new errors once initialized. But looking at the logs I wonder if this might be an issue, because our camera server has two network connections, one dedicated to the cameras and one to the rest of the accelerator network, but I am not sure if that explains the inverted behaviour for the set and readback value? We use this setup for years, but maybe now with the plugins and callbacks this creates issues which did not manifest beforehand?
> 
> Cheers
> eddy

Replies:
AW: Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) via Tech-talk
References:
Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) via Tech-talk
Re: Areadetector Plugin Enable/Disable Issue and Design Question Mark Rivers via Tech-talk
AW: Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) via Tech-talk
RE: Areadetector Plugin Enable/Disable Issue and Design Question Mark Rivers via Tech-talk
AW: Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) via Tech-talk

Navigate by Date:
Prev: AW: Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) via Tech-talk
Next: AW: Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) 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  <2025
Navigate by Thread:
Prev: AW: Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) via Tech-talk
Next: AW: Areadetector Plugin Enable/Disable Issue and Design Question Blomley, Edmund (IBPT) 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  <2025
ANJ, 24 Mar 2025 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions ·
· Download · Search · IRMIS · Talk · Documents · Links · Licensing ·