> However, when I run phoebus (the new version of CSS) I can display that PV fine even without setting EPICS_PVA_ADDR_LIST.
Just to clarify, I mean phoebus running on Windows finds the PV fine on either Windows or Linux IOCs without setting EPICS_PVA_ADDR_LIST.
Kay just pointed out the following:
> The Java and C++ implementation of the PVA client must differ in that way.
I think he is probably correct.
Mark
________________________________
From: [email protected] <[email protected]> on behalf of Mark Rivers <[email protected]>
Sent: Tuesday, November 13, 2018 8:32 AM
To: tech-talk
Subject: Questions about EPICS_PVA_ADDR_LIST
I was under the impression that no environment variables should need to be set in order for pvAccess to find PVs on the local subnet. However, this does not seem to be working with base 7.0.x (master as of a few months ago).
By default on both my Linux and Windows systems no EPICS_PVA_* environment variables are set.
If I run the IOC on Linux then this is what I see with pvinfo from Windows:
C:\phoebus-0.0.1-win\phoebus-0.0.1>h:\epics\base\bin\windows-x64-static\pvinfo 13SIM1:Pva1:Image
2018-11-13T08:12:23.358 No broadcast addresses found or specified - empty address list!
[13SIM1:Pva1:Image] failed to get channel introspection data
If I set EPICS_PVA_ADDR_LIST to the broadcast address of the subnet it works:
C:\phoebus-0.0.1-win\phoebus-0.0.1>set EPICS_PVA_ADDR_LIST=164.54.160.255
C:\phoebus-0.0.1-win\phoebus-0.0.1>h:\epics\base\bin\windows-x64-static\pvinfo 13SIM1:Pva1:Image
CHANNEL : 13SIM1:Pva1:Image
STATE : CONNECTED
ADDRESS : 164.54.160.82:59335
epics:nt/NTNDArray:1.0
union value
boolean[] booleanValue
byte[] byteValue
short[] shortValue
int[] intValue
long[] longValue
ubyte[] ubyteValue
ushort[] ushortValue
uint[] uintValue
ulong[] ulongValue
float[] floatValue
double[] doubleValue
If I run pvinfo on Linux where the IOC is running then it works without setting EPICS_PVA_ADDR_LIST. Thus it at least finds PVs on localhost.
corvette:~/devel/areaDetector/ADSupport>printenv | grep EPICS_PVA
corvette:~/devel/areaDetector/ADSupport>/usr/local/epics/base-7.0.1/bin/linux-x86_64/pvinfo 13SIM1:Pva1:Image
CHANNEL : 13SIM1:Pva1:Image
STATE : CONNECTED
ADDRESS : 164.54.160.82:59335
epics:nt/NTNDArray:1.0
union value
boolean[] booleanValue
byte[] byteValue
short[] shortValue
int[] intValue
long[] longValue
ubyte[] ubyteValue
ushort[] ushortValue
uint[] uintValue
ulong[] ulongValue
float[] floatValue
double[] doubleValue
Now I run the IOC on Windows.
Running pvinfo on the local Windows machine:
If I undefine EPICS_PVA_ADDR_LIST it does not work. Thus it does not even find PVs on localhost.
C:\phoebus-0.0.1-win\phoebus-0.0.1>set EPICS_PVA_ADDR_LIST=
C:\phoebus-0.0.1-win\phoebus-0.0.1>h:\epics\base\bin\windows-x64-static\pvinfo 13SIM1:Pva1:Image
2018-11-13T08:20:24.858 No broadcast addresses found or specified - empty address list!
[13SIM1:Pva1:Image] failed to get channel introspection data
If I define EPICS_PVA_ADDR_LIST it works fine.
C:\phoebus-0.0.1-win\phoebus-0.0.1>set EPICS_PVA_ADDR_LIST=164.54.160.255
C:\phoebus-0.0.1-win\phoebus-0.0.1>h:\epics\base\bin\windows-x64-static\pvinfo 13SIM1:Pva1:Image
CHANNEL : 13SIM1:Pva1:Image
STATE : CONNECTED
ADDRESS : 164.54.160.15:5075
epics:nt/NTNDArray:1.0
union value
boolean[] booleanValue
byte[] byteValue
short[] shortValue
int[] intValue
long[] longValue
ubyte[] ubyteValue
ushort[] ushortValue
uint[] uintValue
ulong[] ulongValue
float[] floatValue
double[] doubleValue
Running pvinfo on Linux it works fine without defining EPICS_PVA_ADDR_LIST.
corvette:~/devel/areaDetector/ADSupport>printenv | grep EPICS_PVA
corvette:~/devel/areaDetector/ADSupport>/usr/local/epics/base-7.0.1/bin/linux-x86_64/pvinfo 13SIM1:Pva1:Image
CHANNEL : 13SIM1:Pva1:Image
STATE : CONNECTED
ADDRESS : 164.54.160.15:5075
epics:nt/NTNDArray:1.0
union value
boolean[] booleanValue
byte[] byteValue
short[] shortValue
int[] intValue
long[] longValue
ubyte[] ubyteValue
ushort[] ushortValue
uint[] uintValue
ulong[] ulongValue
float[] floatValue
double[] doubleValue
So it appears that I need to set EPICS_PVA_ADDR_LIST on Windows for pvinfo or pvget to work.
However, when I run phoebus (the new version of CSS) I can display that PV fine even without setting EPICS_PVA_ADDR_LIST.
Mark
- Replies:
- Re: Questions about EPICS_PVA_ADDR_LIST Michael Davidsaver
- References:
- Questions about EPICS_PVA_ADDR_LIST Mark Rivers
- Navigate by Date:
- Prev:
Questions about EPICS_PVA_ADDR_LIST Mark Rivers
- Next:
streamDevice redirection-to-records & PVs that start with a number Peterson, Kevin M. 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
- Navigate by Thread:
- Prev:
Questions about EPICS_PVA_ADDR_LIST Mark Rivers
- Next:
Re: Questions about EPICS_PVA_ADDR_LIST Michael Davidsaver
- 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
|