Dummy und event-on-change-reading

Begonnen von blueberry63, 17 Februar 2014, 09:13:05

Vorheriges Thema - Nächstes Thema

blueberry63



Hallo,

ich habe bei einem Dummy das Attribut "event-on-change-reading" gesetzt, aber es werden immer noch diesselben Readings-Werte mehrfach ins DbLog geschrieben:

Zitat
"TIMESTAMP";"DEVICE";"TYPE";"EVENT";"READING";"VALUE";"UNIT"
2014-02-16 21:59:10;"HZ_TempAussen";"DUMMY";"Temperatur: 6.10";"Temperatur";"6.10";
2014-02-16 21:49:10;"HZ_TempAussen";"DUMMY";"Temperatur: 6.10";"Temperatur";"6.10";
2014-02-16 21:39:13;"HZ_TempAussen";"DUMMY";"Temperatur: 6.10";"Temperatur";"6.10";
2014-02-16 21:29:10;"HZ_TempAussen";"DUMMY";"Temperatur: 5.90";"Temperatur";"5.90";
2014-02-16 21:19:09;"HZ_TempAussen";"DUMMY";"Temperatur: 5.90";"Temperatur";"5.90";
2014-02-16 21:09:16;"HZ_TempAussen";"DUMMY";"Temperatur: 5.90";"Temperatur";"5.90";
2014-02-16 20:59:10;"HZ_TempAussen";"DUMMY";"Temperatur: 6.10";"Temperatur";"6.10";
2014-02-16 20:49:09;"HZ_TempAussen";"DUMMY";"Temperatur: 6.10";"Temperatur";"6.10";
2014-02-16 20:39:12;"HZ_TempAussen";"DUMMY";"Temperatur: 6.10";"Temperatur";"6.10";

Habe ich etwas falsch verstanden oder gibt es hier einen Bug?

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

ph1959de

Lies Dir doch bitte in der commandref noch mal die Abhängigkeiten zwischen event-on-change-reading und event-on-update-reading durch.

Gruß, Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

blueberry63

Ich habe mir die commandref durchgelesen. Da ich aber bei diesem Gerät nur EIN reading habe ("Temperatur"), müßte ich doch mit "event-on-change-reading" richtig liegen? Was verstehe ich hier falsch?

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

betateilchen

mach mal bitte ein "list HZ_TempAussen" und poste die gesamte Ausgabe hier.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

blueberry63

Zitat
Internals:
   CFGFN      incl_heizung.cfg
   NAME       HZ_TempAussen
   NR         111
   STATE      3.40
   TYPE       dummy
   CHANGETIME:
   Helper:
     Dblog:
       Temperatur:
         Mydb:
           TIME       1392629350.5284
           VALUE      3.40
Attributes:
   event-on-change-reading Temperatur
   fp_Keller  30,780,1,Temp
   icon       icoTemp
   room       Heizung
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

betateilchen

genau das dachte ich mir... Du setzt ein event-on-change-reading für ein reading, das überhaupt nicht existiert.

Oder siehst Du in Deinem Listing irgendwo einen Eintrag "Readings"? Da gibt es nur Internals und Attributes.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

blueberry63

Hallo Betateilchen,

da hast Du natürlich Recht, es ist kein Reading zu sehen. Darüber hatte ich mir auch noch keine Gedanken gemacht, weil ich davon ausgegangen bin, daß es immer automatisch ein "Reading" gibt. Das "dummy" habe ich folgendermassen angelegt:

Zitat
define HZ_TempAussen dummy
attr HZ_TempAussen fp_Keller 30,780,1,Temp
attr HZ_TempAussen icon icoTemp
attr HZ_TempAussen room Heizung
attr HZ_TempAussen event-on-update-reading Temperatur

define at_HZ_TempAussen at +*00:10:00 {\
my $a = ReadHeizung('TempAussen');;\
if (($a) >= -25 &&  ($a) < 45) {\
fhem "setstate HZ_TempAussen $a";;\
fhem "trigger HZ_TempAussen Temperatur: $a";;\
}\
}

Was muß ich anders machen?

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

betateilchen

Doku lesen.

fhem "setstate

da steht doch setstate also wird da STATE gesetzt (und das funktioniert bei Dir ja auch perfekt)

Kleiner Tipp: such doch mal nach setreading ;)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

blueberry63

...und das funktioniert bei einem Dummy, wo doch gar kein Reading definiert ist? Ich werde es gleich probieren.

Vielen Dank für die Hlife.

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

blueberry63

FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

blueberry63

Zu früh gefreut  >:(

Das Reading wird zwar jetzt beschrieben:
Zitat
Internals:
   CFGFN      incl_heizung.cfg
   NAME       HZ_TempAussen
   NR         111
   STATE      8.20
   TYPE       dummy
   CHANGETIME:
   Helper:
     Dblog:
       Temperatur:
         Mydb:
           TIME       1392650766.68369
           VALUE      8.20
   Readings:
     2014-02-17 16:26:05   Temperatur      8.20
Attributes:
   event-on-change-reading Temperatur
   event-on-update-reading Temperatur
   fp_Keller  30,780,1,Temp
   icon       icoTemp
   room       Heizung

Aber die Messwerte werden immer noch in die DB geschrieben, obwohl sie sich von einem Zeitpunkt zum nächsten nicht ändern. Was mache ich falsch?

Hier noch meine Definition des Dummys:
Zitat
define HZ_TempAussen dummy
attr HZ_TempAussen fp_Keller 30,780,1,Temp
attr HZ_TempAussen icon icoTemp
attr HZ_TempAussen room Heizung
attr HZ_TempAussen event-on-change-reading Temperatur
attr HZ_TempAussen event-on-update-reading Temperatur

#attr HZ_TempAussen webCmd state

define at_HZ_TempAussen at +*00:10:00 {\
my $a = ReadHeizung('TempAussen');;\
if (($a) >= -25 &&  ($a) < 45) {\
fhem "setstate HZ_TempAussen $a";;\
fhem "setreading HZ_TempAussen Temperatur $a";;\
fhem "trigger HZ_TempAussen Temperatur: $a";;\
}\
}
attr at_HZ_TempAussen room Heizung

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Puschel74

Hallo,

ich weiß ja nicht aber kann ein Dummy überhaupt event-on-change-reading?

Bei den FHTTK musste das ja auch erst "nachgerüstet" werden.
Ich kann mich aber auch täuschen und da ist noch irgendwo ein Fehler.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

betateilchen

nachdenken... da kommst du selber drauf.
Wann willst Du einen Event? bei einem Change oder bei einem Update?
Und wenn Du das beantwortet hast, schau Dir die Attribute an.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

blueberry63

Sorry, es war ein Fehler von mir, beide "event-on..." Attribute einzutragen. Das kommt vom vielen Testen; eine Zeile sollte eigentllich immer auskommentiert sein. Ich werde jetzt nochmal mit "event-on-change-reading" testen (Event also nur, wenn sich der Temperaturwert im Vergleich zum letzten ändert). und dann berichten.

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower