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: Long String support in phoebus |
From: | "Nonn, Patrick via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "Johnson, Andrew N." <anj at anl.gov> |
Cc: | tech-talk <tech-talk at aps.anl.gov> |
Date: | Tue, 14 Jul 2020 09:39:40 +0200 (CEST) |
On Jul 13, 2020, at 11:25 AM, Johnson, Andrew N. via Tech-talk <tech-talk at aps.anl.gov> wrote:
Hi Patrick,
On Jul 13, 2020, at 4:08 AM, Nonn, Patrick via Tech-talk <tech-talk at aps.anl.gov> wrote:
I would like to clarify, that you have to address the VAL field of a PV specifically and add a $ to that. "caput -S <pv_name>$" will not work. (Because caput addresses <pv_name>$.VAL, that way.) The same is true for CSS, incl. phoebus. I'm mentioning that, because I actually found some old tech-talk entry before I started this thread, where it was also mentioned that you have to add a $ to the pv name, which did not work for that reason.
You can omit the VAL field name, but you must still include the dot which marks the end of the record name and tells the name lookup code that whatever follows is a field modifier. If there’s no field name after that modifier will apply to the default field (which is VAL at the moment but might not always be with new record types in future releases of EPICS). Thus “caget -S <pv_name>.$” will work for the lsi and lso record types.
- Andrew
Let me summarize, what to do, if your lso/lsi won't hold more than 40 characters:
- check the field SIZV, it defaults to 41 (=40 characters)
- check the environment variables EPICS_CA_MAX_ARRAY_BYTES and EPICS_CA_AUTO_ARRAY_BYTES
For more information, check: https://epics.anl.gov/base/R3-16/1-docs/RELEASE_NOTES.html
- for caput/caget: make sure you use the -S option
- for caput/caget and CSS: Address the pv as <pv_name>.VAL$
- for CSS, incl. Phoebus: check the "max_array_bytes"-setting
- for CSS Phoebus: make sure to set the format property to "String"
Have I forgotten something?
--Complexity comes for free, simplicity you have to work for.