Hallo,
ich wollte mir die Temperaturen im Haus mit readingsGroup anzeigen lassen.
Leider habe ich mit der Subroutine valveOfDevice Probleme.
Das Thermostat heißt:KellerThermostat
Das Ventil: KellerVentil
Meine Definition der readingsGroup
define Temperaturen readingsGroup <Raum>,<Tist>,<Tsoll>,<Hum>,<BatTC>,<Vist>,<Vsoll>,<Verr>,<BatVD>
.*.Thermostat:measured-temp,desired-temp,humidity,battery,ValvePosition@{$DEVICE=~s/Thermostat/Ventil/;$DEVICE;},ValveDesired@{valveOfDevice($DEVICE)},R-valveErrorPos@{valveOfDevice($DEVICE)},battery@{valveOfDevice($DEVICE)}
TYPE=CUL_TCM97001:temperature,<>,humidity
Mit der "Hardcodierung" geht es,
die Ventilstellung bekomme ich mit ValvePosition@{$DEVICE=~s/Thermostat/Ventil/;$DEVICE;} angezeigt
Mit der Version via Subroutine bleiben die Felder leer.
ValveDesired@{valveOfDevice($DEVICE)},R-valveErrorPos@{valveOfDevice($DEVICE)},battery@{valveOfDevice($DEVICE)}
Es ändert sich nichts, wenn ich die Zeile
TYPE=CUL_TCM97001:temperature,<>,humidity
weglasse.
Temperaturen_Bild1 zeigt das Ergebnis.
Die valveOfDevice Funktion habe ich 1 zu 1 aus dem Wiki übernommen.