Sorry for the long answering delay. Somehow the forum software still does not issue notification mails to me - and I was busy these days with a complicated project so not checking the forum manually all the time.
Regarding any kind of polling - one caveat before going into details: one needs to be careful with adding too many regular pollings to a small system like the P44-xx. These can add up and at some point the performance will suffer.
But basically, you can create polling evaluators by using the testlater()
or every()
functions (see p44script short reference.
So an evaluator that should check something every 5 minutes would have an ON condition like:
every(0:05) & something
In this, every()
gets true once every 5 minutes and causes evaluation. When something
is also true at that moment, it will trigger the evaluator. (testlater
is similar, but more specialized and was added to the evaluator engine much earlier, when the more generic every()
would not have been possible yet).
However, to get notified when a sensor turns to the invalid state, all this is not needed, because the value change from a real value to "invalid" state triggers an evaluation anyway.
So an Evaluator with just the following ON condition should do the trick already:
!isvalid(sensor)
Hope this helps!
PS: note that there's an underlying problem in dS itself, as it still does not handle the "invalid" state separately for binary inputs, but treats it as 0. This is the main cause for unexpected results with sensors/inputs in the invalid state.