Ich möchte aus einem 1 wire counter DS2423 das reading Energie und Power in zwei neues device readingsProxy schreiben oder wenn das nicht geht in einen dummy aber ich kriege beides nicht zum laufen.
leider ergab die Suche keine zufriedenstellenden Treffer.
Ich habe im device:
Zahler_Kuche
reading:
Energy-Kuhlschrank
Power-Kuhlschrank
Energy-Herd
Power-Herd
und möchte aber zwei device:
Kuhlschrank und Herd
mit jeweils den readings energie und power
Ich habe es mit dummy und readingsProxy probiert aber leider werden die readings nicht befüllt
die readings kann ich zwar mit Hand anlegen bleiben aber trotzdem lehr
auch scheint das reading state und STATE kein userreading zu zünden
define Kuhlschrank readingsProxy Zahler_Kuche:power-Kuhlschrank
attr Kuhlschrank room Energie
# erzeugt ein device aber der wert steht im state und STATE
das klapt alles nicht
attr Kuhlschrank valueFn {ReadingsVal(power,$VALUE,0)}
attr Herd valueFn {'power',$VALUE}
attr Kuhlschrank userReadings energie:Energy-Kuhlschrank {ReadingsVal(Kuhlschrank,"energie",0)}
setreading Kuehschrank power 5
setreading Kuehschrank $VALUE
Gruß Markus
ZitatPower-Kuhlschrank
Zitatdefine Kuhlschrank readingsProxy Zahler_Kuche:power-Kuhlschrank
wie jetzt griß oder klein geschrieben ;)
readingProxy ist genau dazu da aus einem bestimmten reding eines devices ein neues device zu machen bei dem dieses reading als state verwendet wird.
du kannst aber einfach in der setFn zusätzlich noch ein setreading einbauen zusätzlich zu state auch noch ein anderes reading anzulegen.
Zitatattr Kuhlschrank valueFn {ReadingsVal(power,$VALUE,0)}
Zitatattr Herd valueFn {'power',$VALUE}
falsche Syntax
Zitatattr Kuhlschrank userReadings energie:Energy-Kuhlschrank {ReadingsVal(Kuhlschrank,"energie",0)}
du schreibst den wert von energie per user reading wieder in energie. das macht keinen sinn.
Zitatsetreading Kuehschrank power 5
das setz das reading power für das device Kuehschrank auf 5. da kann nicht wirklich etwas schief gehen wenn es das device gibt
Zitatsetreading Kuehschrank $VALUE
falsche syntax. da fehlt der name des reading das du setzen willst.
warum möchtest du die vorhanden readings denn überhaupt in einem neuen device haben? wenn es dir nur im die anzeige geht schau dir readingGroup an.
gruss
andre
gruss
andre
nein es geht mir nicht nur um die Anzeige es gibt jetzt ein Modul EMonitor das den verbrauch zusammenzählt und da sollten es zwei device sein.
das es Falsch ist hab ich gemerkt sonst würde es ja Funktionniren hast du einen tipp für mich? In der commandref gibt es auch keine beispiele
http://forum.fhem.de/index.php/topic,30055.msg227275.html#msg227275 (http://forum.fhem.de/index.php/topic,30055.msg227275.html#msg227275)
define Kuhlschrank readingsProxy Zahler_Kuche:Power-Kuhlschrank
mein Fehler Gross,hab es jetzt frei geschriebem hätte doch alles koppieren sollen aber im code war es richtig geschrieben das ergebnis landet aber im state und mit
attr Herd valueFn {'power',$VALUE}
heisst der state dann power 12.34
Gruß Markus
es gibt im wiki beispiele für readingsProxy.
bei dir sollte es so gehen:attr Kuhlschrank valueFn { fhem("setreading $name power $VALUE"); return $VALUE; }
gruss
andre
Danke andre das Funktioniert ;D
Weist du auch wie ich beide readings beschreibe?
{ fhem("setreading $name power $VALUE && setreading $name energie $VALUE" ); return $VALUE; }
oder
attr Kuhlschrank valueFn { fhem("setreading $name power $VALUE"); return $VALUE; }{ fhem("setreading $name energie $VALUE"); return $VALUE; }
das Funktioniert nicht
Leider verstehe ich die syntex nicht wirklich und weis nicht recht was ich ändern muss...
im wiki hab ich nur das gefunden aber hier werden nur schalter beschrieben
http://www.fhemwiki.de/wiki/ReadingsProxy (http://www.fhemwiki.de/wiki/ReadingsProxy)
OK Danke Andre es hat sich erledigt ich brauche nur ein reading zur Berechnung und das Funktioniert jetzt
Gruß Markus
falls noch jemand drüber stolpert...
so:{ fhem("setreading $name power $VALUE; setreading $name energie $VALUE"); return $VALUE; }
oder so:{ fhem("setreading $name power $VALUE"); fhem("setreading $name energie $VALUE"); return $VALUE; }
gruss
andre