Hallo zusammen,
ich suche eine Lösung, um die Eval-Logik eines Items während des Init-Vorgangs nicht auszuführen.
Der Eval-Ausdruck baut auf ein Item, das vom KNX gelesen wird. Während der Initialisierungsphase, in der das KNX-Item noch nicht vom Bus gelesen wurde, darf der Eval-Ausdruck nicht ausgewertet werden. Ansonsten wird ein falscher Wert berechnet.
Ich möchte ungern den Wert des KNX-Items cachen oder gar in die DB schreiben, nur um während der Initialisierung bereits einen Wert zur Verfügung zu haben. Das Lesen vom Bus wäre eigentlich schnell genug.
Gibt es eine Möglichkeit, meinen Wunsch mit sh.py umzusetzen?
[meter]]
[[gas]]
type = num
visu_acl = ro
knx_dpt = 12
knx_listen = 5/1/100
knx_init = 5/1/100
[[[reading]]]
type = num
visu_acl = ro
eval = (sh.meter.gas() * 0.01) + 1405.95
eval_trigger = meter.gas
sqlite = init
ich suche eine Lösung, um die Eval-Logik eines Items während des Init-Vorgangs nicht auszuführen.
Der Eval-Ausdruck baut auf ein Item, das vom KNX gelesen wird. Während der Initialisierungsphase, in der das KNX-Item noch nicht vom Bus gelesen wurde, darf der Eval-Ausdruck nicht ausgewertet werden. Ansonsten wird ein falscher Wert berechnet.
Ich möchte ungern den Wert des KNX-Items cachen oder gar in die DB schreiben, nur um während der Initialisierung bereits einen Wert zur Verfügung zu haben. Das Lesen vom Bus wäre eigentlich schnell genug.
Gibt es eine Möglichkeit, meinen Wunsch mit sh.py umzusetzen?
[meter]]
[[gas]]
type = num
visu_acl = ro
knx_dpt = 12
knx_listen = 5/1/100
knx_init = 5/1/100
[[[reading]]]
type = num
visu_acl = ro
eval = (sh.meter.gas() * 0.01) + 1405.95
eval_trigger = meter.gas
sqlite = init
Kommentar