Thanks for the suggestion.
I read up om the BO record (I am running 3.15) using
the HIGH field for the "Push bottom" behavior.
As I understand that documentation, the record is
processed again when going low after the specified
time.
I guess that will mean that the protocol is executed
twice? Any way to avoid that?
Yes, correct. No decent way to avoid that.
Then, just don't set the HIGH field. Whatever value is
being written to the record, the protocol will be executed.
This brings back the problem that the response from the
device depends on its current state
(it is different when going from On -> Off, and from
Off -> Off).
As Dirk was asking: Do you need the response? Can't you
just ignore it?
A Simple push button that executes an protocol entry
once will be very useful for me.
Switch or buttons is a design choice.
Buttons always need a status, else you never know the
current device state.
A switch position needs to be readable from the device or
persisted (autoSaveRestore), else it might end up in the
wrong position after an IOC reboot.
Discussing with colleagues, I found some very strong,
almost religious, opinions in the underlying "trigger by
state or by pulse" question.
The EPICS database allows to implement one using the
other. Flexibility is nice!
Cheers,
~Ralph
ps. Having a record named after you is pretty cool.