Run a 'converter' to scalars or array of ushorts would be the best choice.
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Heinz Junkes via Tech-talk <tech-talk at aps.anl.gov>
Sent: Saturday, May 9, 2026 6:14:31 AM
To: EPICS Tech-Talk <tech-talk at aps.anl.gov>
Subject: Re: PVA custom structs
Hi,
Here’s some more information on that from the Archiver Appliance’s log file.
Are these the main pieces of information to the issue?
2026-05-09 11:59:19,580 ERROR [JCA Command Thread] pv.EPICS_V4_PV (EPICS_V4_PV.java:240) - Cannot determine the timestamp bitset for PV FHIFEL:llpg_1. This means we may not save any data at all for this PV.
java.lang.NullPointerException: Cannot invoke "org.epics.pva.data.PVAStructure.get(String)" because "timeStampPVStructure" is null
2026-05-09 11:53:19,635 ERROR [Engine scheduler for misc tasks.] metadata.MetaGet (MetaGet.java:225) - Cannot determine DBR type for pv FHIFEL:llpg_1
2026-05-09 11:58:36,583 INFO [http-nio-17666-exec-4] engine.BPLServlet (BPLServlet.java:102) - Beginning request into Engine servlet /getVersion
2026-05-09 11:58:36,583 INFO [http-nio-17666-exec-4] common.BasicDispatcher (BasicDispatcher.java:44) - Servicing /getVersion
2026-05-09 11:59:19,450 INFO [Event bus] pv.EPICS_V4_PV (EPICS_V4_PV.java:338) - Connecting to PV FHIFEL:llpg_1
2026-05-09 11:59:19,478 INFO [JCA Command Thread] pv.EPICS_V4_PV (EPICS_V4_PV.java:221) - channelStateChanged:SEARCHING FHIFEL:llpg_1
2026-05-09 11:59:19,479 INFO [UDP4-receiver /0.0.0.0:59609] pv.EPICS_V4_PV (EPICS_V4_PV.java:221) - channelStateChanged:FOUND FHIFEL:llpg_1
2026-05-09 11:59:19,481 INFO [TCP receiver /141.14.135.0:37864] pv.EPICS_V4_PV (EPICS_V4_PV.java:221) - channelStateChanged:CONNECTED FHIFEL:llpg_1
2026-05-09 11:59:19,580 INFO [JCA Command Thread] pv.EPICS_V4_PV (EPICS_V4_PV.java:235) - Construct the fieldValuesCache for PV FHIFEL:llpg_1
2026-05-09 11:59:19,580 ERROR [JCA Command Thread] pv.EPICS_V4_PV (EPICS_V4_PV.java:240) - Cannot determine the timestamp bitset for PV FHIFEL:llpg_1. This means we may not save any data at all for this PV.
2026-05-09 11:59:19,580 INFO [JCA Command Thread] pv.EPICS_V4_PV (EPICS_V4_PV.java:248) - Type from structure in monitorConnect is structure
ushort Ch1_Width
ushort Ch2_Width
ushort Ch1_Delay
ushort Ch2_Delay
ushort Ch1_ExtraDly
ushort Ch2_ExtraDly
ushort Ch1_Atten
ushort Ch2_Atten
2026-05-09 11:59:19,580 INFO [JCA Command Thread] pv.EPICS_V4_PV (EPICS_V4_PV.java:259) - Determined ArchDBRTypes for FHIFEL:llpg_1 as DBR_V4_GENERIC_BYTES
2026-05-09 11:59:19,580 ERROR [JCA Command Thread] pv.EPICS_V4_PV (EPICS_V4_PV.java:431) - exception when reading pv
java.lang.reflect.InvocationTargetException: null
at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:72) ~[?:?]
at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
at org.epics.archiverappliance.engine.pv.EPICS_V4_PV.fromStructure(EPICS_V4_PV.java:277) ~[classes/:?]
at org.epics.archiverappliance.engine.pv.EPICS_V4_PV.subscribe(EPICS_V4_PV.java:427) ~[classes/:?]
at org.epics.archiverappliance.engine.pv.EPICS_V4_PV.handleConnected(EPICS_V4_PV.java:388) ~[classes/:?]
at org.epics.archiverappliance.engine.pv.JCACommandThread.run(JCACommandThread.java:189) [classes/:?]
Caused by: java.lang.NullPointerException: Cannot invoke "org.epics.pva.data.PVAStructure.get(String)" because "timeStampPVStructure" is null
at org.epics.archiverappliance.common.TimeUtils.convertFromPVTimeStamp(TimeUtils.java:533) ~[classes/:?]
at edu.stanford.slac.archiverappliance.PB.data.PBV4GenericBytes.<init>(PBV4GenericBytes.java:68) ~[classes/:?]
at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
... 6 more
Danke, Heinz
> On 8. May 2026, at 17:10, Heinz Junkes (FHI) via Tech-talk <tech-talk at aps.anl.gov> wrote:
>
> Hi,
> I am running a P4P server on an embedded system and offer the following structure:
>
> epics@felpvagate:~$ pvinfo FHIFEL:llpg_1
> FHIFEL:llpg_1
> Server: 10.0.0.87:5075
> Type:
> structure
> ushort Ch1_Width
> ushort Ch2_Width
> ushort Ch1_Delay
> ushort Ch2_Delay
> ushort Ch1_ExtraDly
> ushort Ch2_ExtraDly
> ushort Ch1_Atten
> ushort Ch2_Atten
>
> Unfortunately, the archiverAppliance cannot monitor/archive these.
>
> Was ist der beste Weg um diese Werte zu archivieren?
>
> 1.) Should the 8 values be made available as ‘individual’ scalar PVs on the embedded system as well?
>
> 2.) Run a ‘converter’ on another system that maps the custom struct to scalar PVs?
>
> 3.) Another idea ?
>
> Danke Heinz
> ------------------------------------------------------------------------------
> Fritz-Haber-Institut | Phone: (+49 30) 8413-4270
> Heinz Junkes | VC:
https://zoom.fhi.berlin/junkes
> Faradayweg 4-6 | Visitors: Hittorfstrasse 29 (Bld S (Slough House) )
> D - 14195 Berlin
> ------------------------------------------------------------------------------
> “Sorry I’m a bit late, had a terrible time…
> All sort of things cropping up at the last moment. Uh, how are we for time?”
> —Zarquon's address to Milliways
>