However I am confused why the .HIHI and other fields seems to be processed even if the PP attribute is missing.
And according to the IOC owner, the value from $P$R:FB_ProcHiValue is propagated to "$P$R:MeasValue.HIGH
But again, if it is instead field(OUTA, "$P$R:MeasValue.VAL") without the PP, as you wrote, the record is not processed as expected...
Anyway, since it is not harmful to put the PP attribute, we will update that kind of records adding it in the OUTA
______________________
Alfio Rizzo
PhD / Automation Section Leader / ICS HW&I Group
European Spallation Source ERIC
P.O. Box 176, SE-221 00 Lund, Sweden
Visiting address: Partikelgatan 2, 224 84 Lund
Mobile: +46 72 179 23 42
E-mail:
alfio.rizzo at ess.eu
ess.eu

Hi Alfio!
To make matters clear, the issue isn't pvmonitor vs camonitor, it's your OUT link. You should be using "myaipv PP" as the output link, to tell the record to process after it receives the write. Even if "pvget myaipv" showed the
updated value, any other database or device support connections wouldn't have been updated (the same way the monitor command didn't receive any changes), since the record itself wasn't processed. Most of the time, OUT links should include PP. This is documented
in [1].
IIRC writing into RVAL doesn't work correctly, but I'd welcome someone clearing that up.
HIHI is quite different from VAL, regarding the field definition:
field(VAL,DBF_DOUBLE) {
prompt("Current EGU Value")
promptgroup("40 - Input")
asl(ASL0)
pp(TRUE)
}
field(HIHI,DBF_DOUBLE) {
prompt("Hihi Alarm Limit")
promptgroup("70 - Alarm")
pp(TRUE)
interest(1)
prop(YES) # get_alarm_double
}
It's possible either interest(1) or prop(YES) cause HIHI changes to be propagated to monitors (probably prop(YES), given the get_alarm_double comment). However, from my quick testing, it doesn't actually cause the record to be
processed, so you still need PP to cause processing.
[1] https:// docs.epics-controls.org/en/latest/appdevguide/lockScanProcess.html#process-passive
Cheers,
Érico
On 3/17/26 07:27, Alfio Rizzo via Tech-talk wrote:
Hej
I noticed that the pvmonitor of a record value does not update when the .VAL is changed from the OUT field of another record,
E.g. Using this simple db
record(ai, "myaipv"){
field(PINI, "YES")
field(VAL, 100)
}
record(ao, "myaopv") {
field(PINI, "YES")
field(VAL, 30)
field(OUT, "myaipv")
}
If I do pvput myaovpv 1000, the myaipv.VAL is updated correctly (pvget myaipv gives back the updated value)
But this change is not shown in the pvmonitor STDOUT
According to what I heard this is the intended behavior, but why apparently it applies only to the .VAL field ?
I have tested the OUT with other fields like the alarm fields, or .RVAL , etc (i.e. OUT, "myaipv.HIHI") (OUT, "myaipv.RVAL")
Then if I do pvmonitor myaipv.HIHI for instance, everytime the myaopv value changes,
The pvmonitor reacts as well showing the updated .HIHI field value
Can someone give some more explanation about ?
I am using EPICS 7.0.9/6.0.0
Thanks
Best
Alfio
______________________
Alfio Rizzo
PhD / Automation Section Leader / ICS HW&I Group
European Spallation Source ERIC
P.O. Box 176, SE-221 00 Lund, Sweden
Visiting address: Partikelgatan 2, 224 84 Lund
Mobile: +46 72 179 23 42
E-mail:
alfio.rizzo at ess.eu
ess.eu

Aviso Legal: Esta mensagem e seus anexos podem conter informações confidenciais e/ou de uso restrito. Observe atentamente seu conteúdo e considere eventual consulta
ao remetente antes de copiá-la, divulgá-la ou distribuí-la. Se você recebeu esta mensagem por engano, por favor avise o remetente e apague-a imediatamente.
Disclaimer: This email and its attachments may contain confidential and/or privileged information. Observe its content carefully and consider possible querying
to the sender before copying, disclosing or distributing it. If you have received this email by mistake, please notify the sender and delete it immediately.