HM-CC-TC im Cent Modus ohne hinterlegte Zeiten

Begonnen von ThorstenH, 07 Dezember 2013, 13:17:03

Vorheriges Thema - Nächstes Thema

ThorstenH

Hallo,

ich möchte meinen TC im Cent Modus betreiben, allerdings ohne Zeiten für die Temperaturumschaltungen zu programmieren.

Im Wiki steht zum Cent Modus:
ZitatIm Modus Cent steuert eine HomeMatic-Zentrale (CCU) oder eben ein FHEM-Server mit z.B. HMLAN Konfigurator zu den in der FHEM-Config hinterlegten Zeiten und mit den dort festgelegten Temperaturen. Fällt also die HM-Zentrale aus, erfolgt keine Steuerung der Thermostaten bzw. Heizungsventile mehr.
http://www.fhemwiki.de/wiki/HM-CC-TC_Funk-Wandthermostat#Cent-Modus

Dazu habe ich zwei Fragen:

  • Wo werden die Zeiten im Cent Modus in fhem denn hinterlegt? Was bedeutet dort FHEM-config genau?
  • Steuert fhem im cent Modus tatsächlich die VDs? Ich hätte gedacht, das im Falle des Ausfalls von fhem der TC den VD auf der letzten Temperatur weiterregelt

martinp876

Hallo Thorsten,

im cent mode werden die soll-temperaturen dem TC von der Zentrale mitgeteilt. Wenn du hier ein temp-profil hinterlegen willst musst du dir timer deiner wahl mit "at" bauen. Das ist dann nicht mehr Sachen von CUL_HM, FHEM bietet hier eben diese timer an.

Die VDs werden nicht von FHEM gesteuert, immer von einem TC. FHEM kann den TC steuernund überwachen, den VD nur überwachen.

Gruss Martin

ThorstenH

Ich stelle immer alles per Drehrad, Tag/Nacht Button oder fhem WebInterface ein. Im Manu Modus gab es ja diese dumme Problem, dass der TC nach gewisser Zeit immer auf die letzte per Drehrad eingestellte Temperatur zurückstellt. Ich will das jetzt im Cent Modus probieren.

Also: ohne hinterlegte Zeiten und "at"s ==> keine Automatik im Cent Modus durch fhem? Das wäre genau das, was ich will.

LuckyDay

ZitatAlso: ohne hinterlegte Zeiten und "at"s ==> keine Automatik im Cent Modus durch fhem? Das wäre genau das, was ich will.

Ich verstehe nicht was du sagen willst :(

Im Centmodus gibt die Zenrale die Desired-temp vor! und nur Die!

das heißt , du kannst drehen am Rad bis zu jüngsten Tag. oder die Tag/Nachttaste und den Tc interresiert es nicht.

ThorstenH

#4
Was ich letztlich erreichen möchte ist:


  • den TC am Gerät mit dem Drehrad umstellen können
  • den TC am Gerät mit Nacht/Tag umstellen können
  • den TC über fhem umstellen können

Und das alles, ohne dass aus *irgendeinem* anderen Grund die Temperatur wieder zurückgestellt wird. Kein Wochenprogramm, keine eigenwillige Einmischung des TCs, keine Fensterkontakte.

Das mit dem Cent Modus klappt nicht, aus dem Grund, den fhem-hm-knecht beschrieben hat.

martinp876

das geht nur vollständig im manuell mode. Wenn dieser ein Problem hat, ist es ein Problem. Das darf nicht sein... das ist sonst ein Bug des TC.
Ändern dürfen nur die Fensterkontakte oder der party-mode.
Im Cent mode kannst du ein notify schreiben, dass die geänderte Temp vom Handrad in den TC kopiert - von der Zentrale aus. Eine allgemeine Funktion ist es nicht.

ThorstenH

#6
Selbst im Manu Modus dürften Fensterkontakte keinen Einfluss habe:
ZitatDie Funktion des Reglers im Handbetrieb (Manu) entspricht der eines konventionellen Thermostaten. Im Handbetrieb bleibt der Regler dauerhaft auf der eingestellten Temperatur. Ein automatischer zeitgesteuerter Wechsel erfolgt nicht. Ebenso wenig wird auf Sensoren reagiert, die ein offenes Fenster anzeigen.
Handbuch HM-CC-TC
Obwohl ich das schon anders gesehen habe. Zu dem notify im Cent: wie erkenne ich denn eine Änderung am TC per Handrad bzw. Tag/Nacht Taste, wenn kein desired-temp-manu kommt (weil im Cent)? Ich will keine Rekursion einbauen.  :-\

EDIT:
Wenn ich am TC die Temperatur verändere kommt:
2013-12-08_17:09:43 thermostat_wohnzimmer desired-temp: 21.5
2013-12-08_17:09:43 thermostat_wohnzimmer battery: ok
2013-12-08_17:09:43 thermostat_wohnzimmer_climate desired-temp: 21.5


Wenn ich die Temperatur aus dem WebInterface ändere kommt:
2013-12-08_17:10:17 thermostat_wohnzimmer_climate desired-temp-cent: 23.0
2013-12-08_17:10:17 thermostat_wohnzimmer set_desired-temp 23.0


Dann löse ich keine Rekursion aus, wenn ich im Cent Modus die desired-temp ändere? Weil kein "thermostat_wohnzimmer_climate desired-temp:" kommt sondern immer nur ein "thermostat_wohnzimmer_climate desired-temp-cent:"?

martinp876

Zitatwie erkenne ich...
Am einfachsten immer erst einmal probieren.
setze "inform on" und dann mache die Aktion (also temp ändern)
Dann sollte ein Reading kommen "desired-temp".
Sinnvoll (nicht nur hier) ist,
attr <name> event-on-change-reading 1
zu setzen. Dann kommen nur Änderungen durch.

Daraus lässt sich ein notify basteln - so komplex wie die magst: Entweder immer setzen, oder nur wenn du im Cent mode bist,...
Du kannst ein einziges Notify für alle Thermostate basteln - frage einfach nicht den Modulnamen ab sondern nur auf "desired-temp".

Eine recursion kommt nicht, weil wahrscheinlich even-on-change-readings schon gesetzt ist.

Gruss Martin

ThorstenH

Ich habe mein erstes Perlchen geschrieben: (yippiiieh!)
sub AcceptManualDesiredTempInCentMode($)
{
    use Data::Dumper;
    my ($tc) = @_;
    my ($controlMode) = ReadingsVal($tc, "controlMode", "");
    $controlMode =~ s/^\s+|\s+$//g;
    if ($controlMode ne "central")
    {
        Log(1,"*** AcceptManualDesiredTempInCentMode: ".$tc." is not in central mode");
        return;
    }

    my ($climate) = InternalVal($tc, "channel_02", "");
    $climate =~ s/^\s+|\s+$//g;
    if ($climate eq "")
    {
        Log(1,"*** AcceptManualDesiredTempInCentMode: ".$tc." has no channel_02");
        return;
    }
   
    my ($desiredTempManu) = ReadingsVal($climate, "desired-temp-manu", "");
    $desiredTempManu =~ s/^\s+|\s+$//g;
    if ($desiredTempManu eq "")
    {
        Log(1,"*** AcceptManualDesiredTempInCentMode: ".$climate." has no desired-temp-manu set");
        return;
    }
   
    Log (1, "*** set ".$tc." desired-Temp ".$desiredTempManu);
}


Das in einer 99_My_HM_CC_TC.pm gespeichert und per notify aufgerufen. Parameter ist der TC. Bisher macht die Methode nur Logausgaben, aber wenn ich am Ende das log weglasse und "fhem (..." davorschreibe, sollte es gehen, oder?

Ich habe das notify an einem Button hängen, jetzt muss ich das wahrscheinlich an den TC hängen in der Art:


define accept_desired_temp_manu_in_cent_notify notify thermostat_.*_desired-temp:.* {
  AcceptManualDesiredTempInCentMode("thermostat_wohnzimmer");
}


Mit dem "thermostat_.*_desired-temp:.*" pattern bin ich mir noch nicht so sicher. Ich will ja nur, auf desired-temp aller devices reagieren, die mit "thermostat_" anfangen und nicht mit "_climate" enden. Denn die desired-temp Meldungen, deren Device auf "_climate" enden (also die climate channels) sind Meldungen, die aus einer Änderung aus dem WebInterface resultieren (wie bereits im Post von oben beschrieben).

Müsste das so gehen? Oder eignet sich ein anderes Pattern besser?

martinp876

Hi,

nicht schlecht.

Ich würde nicht den TC abfragen sondern den Climate channel. Hier - ungetestet - hoffentlich ohne tipfehler

sub AcceptManualDesiredTempInCentMode($$)
{
    use Data::Dumper;
    my ($tc,$temp) = @_;
    my $controlMode = ReadingsVal($tc, "R-controlMode", "");
    if ($controlMode !~ m/central/)
    {
        Log(1,"*** AcceptManualDesiredTempInCentMode: ".$tc." is not in central mode");
        return;
    }
    Log (1, "*** set ".$tc." desired-Temp ".$temp);
}


mit notify
define accept_desired_temp_manu_in_cent_notify notify .*_Climate:.*desired-temp:.* {\
  AcceptManualDesiredTempInCentMode($NAME,$EVTPART1);\
}



oder nur notify, ohne code und check auf central mode. :

define accept_desired_temp_manu_in_cent_notify notify .*_Climate:.*desired-temp:.* set $name desired-temp $EVTPART1


Als Anregung, was noch so gehen könnte.

Das mit der Abfrage auf desired-temp-manu wird schief gehen. Das ist eben nicht die desired-temp wenn du im central mode bist.

Gruss Martin


ThorstenH

Ich habe jetzt das eigentliche "set" mit aufgenommen, weil das mit den Logs jetzt super funktioniert hat.

Zitatsub AcceptManualDesiredTempInCentMode($$)
{
    my ($tc_climate,$temp) = @_;
    my $controlMode = ReadingsVal($tc_climate, "R-controlMode", "");
    if ($controlMode !~ m/central/)
    {
        Log(1,"*** AcceptManualDesiredTempInCentMode: ".$tc_climate." is not in central mode");
        return;
    }
    fhem("set ".$tc_climate." desired-Temp ".$temp);
    Log (1, "*** set ".$tc_climate." desired-Temp ".$temp);
}

Beim notify musste ich nur das grosse C durch ein kleines ersetzen (bei mir klein..):
Zitatdefine accept_desired_temp_manu_in_cent_notify notify .*_climate:.*desired-temp:.* {
  AcceptManualDesiredTempInCentMode($NAME,$EVTPART1);
}

Dazu mal eine Frage: das notify wollte ich über das telnet interface erzeugen, hat aber nicht funktioniert: unknown command...
Woran liegt das? Irgendwie habe ich es dann über das WebIf hingekriegt.

Das Problem ist nur: ich bekomme zwar die Logmeldung
2013.12.08 21:26:44.926 1: *** set thermostat_wohnzimmer_climate desired-Temp 21.0

Aber ansonsten bleibt es bei:
2013-12-08_21:26:44 thermostat_wohnzimmer desired-temp: 21.0
2013-12-08_21:26:44 thermostat_wohnzimmer battery: ok
2013-12-08_21:26:44 thermostat_wohnzimmer_climate desired-temp: 21.0


Müsste da nicht noch folgendes auftauchen:
2013-12-08_17:10:17 thermostat_wohnzimmer_climate desired-temp-cent: 23.0
2013-12-08_17:10:17 thermostat_wohnzimmer set_desired-temp 23.0

??

Das attr event-on-change-reading habe ich (noch) nicht gesetzt.

Die Raw Messages nach dem Logeintrag:
2013.12.08 21:26:47.262 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:0563138E d:FF r:FFAD     m:11 A258 1CE123 1C494E 0019
2013.12.08 21:26:47.398 0: HMLAN_Parse: HMLAN1 R:E1C494E   stat:0000 t:05631413 d:FF r:FFBA     m:11 8202 1C494E 1CE123 0101140038
2013.12.08 21:26:59.003 0: HMLAN_Send:  HMLAN1 I:K
2013.12.08 21:26:59.006 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:05634175 IDcnt:000F
2013.12.08 21:27:24.017 0: HMLAN_Send:  HMLAN1 I:K
2013.12.08 21:27:24.020 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:0563A32E IDcnt:000F
2013.12.08 21:27:49.027 0: HMLAN_Send:  HMLAN1 I:K
2013.12.08 21:27:49.030 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:056404E4 IDcnt:000F
2013.12.08 21:27:53.911 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:056417F0 d:FF r:FFC9     m:B8 8670 1BF932 000000 00E437
2013.12.08 21:28:04.916 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:056442F0 d:FF r:FFC9     m:6D 8670 1CE75F 000000 00B43F
2013.12.08 21:28:08.792 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:05645214 d:FF r:FFCC     m:6A 8670 1CDFBA 000000 00B73B
2013.12.08 21:28:13.911 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:05646614 d:FF r:FFC9     m:B8 A258 1BF932 1C0ABF 0300
2013.12.08 21:28:14.028 0: HMLAN_Send:  HMLAN1 I:K
2013.12.08 21:28:14.031 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:05646691 IDcnt:000F
2013.12.08 21:28:14.046 0: HMLAN_Parse: HMLAN1 R:E1C0ABF   stat:0000 t:05646699 d:FF r:FFBC     m:B8 8202 1C0ABF 1BF932 0101082033
2013.12.08 21:28:24.918 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:05649114 d:FF r:FFC9     m:6D A258 1CE75F 1CED2A 001F

martinp876

Hallo Thorsten
Zitatdas notify wollte ich über das telnet interface erzeugen

sollte funktionieren - muss aber in einer Zeile stehen.
Wenn du es im telent in mehrere Zeilen schreibst musst du am Ende ein Fortsetzungszeichen setzen.  Ausserin der letzten.

define accept_desired_temp_manu_in_cent_notify notify .*_climate:.*desired-temp:.* {\
  AcceptManualDesiredTempInCentMode($NAME,$EVTPART1);\
}

desired-temp-cent wird nur gesetzt, wenn der tc in cent UND die Zentrale desired-temp setzt
desired-temp-manu wird nur gesetzt, wenn der tc in manu UND das Rad desired-temp setzt

Die Werte merkt sich FHEM sich einfach so - die Werte kommen IM TC vor.
Wenn du die temp änderst und dann den Mode verdrehst ohne explizite temp änderung wird der TC die jeweilige Temp einstellen - ganz von alleine.

Gruss Martin



ThorstenH

Hallo Martin,

Zitat von: Martinp876desired-temp-cent wird nur gesetzt, wenn der tc in cent UND die Zentrale desired-temp setzt
desired-temp-manu wird nur gesetzt, wenn der tc in manu UND das Rad desired-temp setzt

Die Werte merkt sich FHEM sich einfach so - die Werte kommen IM TC vor.
Wenn du die temp änderst und dann den Mode verdrehst ohne explizite temp änderung wird der TC die jeweilige Temp einstellen - ganz von alleine.

Habe ich verstanden. Aber ich arbeite ja jetzt gar nicht mehr mit der desired-temp-manu und bin immer im Cent Modus. Und im Cent Modus kam nach Einstellen der desired-temp über das WebIf immer diese Meldung:
2013-12-08_17:10:17 thermostat_wohnzimmer_climate desired-temp-cent: 23.0
2013-12-08_17:10:17 thermostat_wohnzimmer set_desired-temp 23.0


Das "sub AcceptManualDesiredTempInCentMode($$)" wird zwar bis zum Ende ausgeführt, aber die Logmeldung von oben fehlt. Daher vermute ich, dass die Zeile:
fhem("set ".$tc_climate." desired-Temp ".$temp);
nicht funktioniert hat. Ich habe das auch schon ausprobiert, und tatsächlich ist der TC anch runterstellen am Drehrad nach kurzer Zeit wieder auf die alte Temperatur zurückgesprungen.

Ich hoffe, ich habe mich dieses Mal etwas klarer ausgedrückt  :-[

Viele Grüße
Thorsten

martinp876

Hallo Thorsten

wenn ich ein
set tc_Climate desired-temp 15
oder
set tc desired-temp 15


mache bekomme ich

tc_Climate desired-temp-cent: 15.0
tc_Climate set_desired-temp 15.0
tc desired-temp: 15.0
tc_Climate desired-temp: 15.0


Das Reading desired-temp wird eigentlich im tc_Climate und aus historischen Gründen auch im tc geschreiben.
Es wird NICHT geschrieben, wenn
a) die temp schon den wert hat
und
b) event-on-change-readings gesetzt ist

dann macht es aber auch keinen Sinn - die temp müsste ja schon stimmen.

Ich empfehle (muss man nicht...)
I) den Climate-channel auszuwerten und zum setzen zu nutzen - das ist eigentlich der Steuer-Kanal
II) desired-temp zu nutzen, keine der beiden anderen (-cent oder -manu). Die haben anderes Verhalten.

Kommt das dann hin? Wenn nicht - wie verhalten sich die readings desired-temp in den beiden entites, wenn sie keinen trigger auslösen? Kannst du dies beschreiben

Gruss Martin

ThorstenH

Ich mache doch bereits alles über den climate channel, wie du es mir empfohlen hast. Nichts mehr über den TC selbst.

Wenn fhem mitkriegt, dass sich die desired-temp am TC durch Drehrad verändert hat und schliesslich das notify bzw. die Perl Methode aufruft, dann wird doch in der Perl Methode ganz zum Schluss das gemacht, was du in deinem letzten Post (und ich vroher auch schon mal) von Hand gemacht hast:
    fhem("set ".$tc_climate." desired-Temp ".$temp);

Also dem Climate Channel eine neue desired-temp übergeben, nämlich genau die, die fhem durch die Drehradveränderung am Gerät mitgeteilt bekommen hat. Nur fehlen die Logmeldungen, die ich im Gegensatz zum manuellen Auslösen per WebIf bekomme.

Vielleicht, weil die desired-temp ja bereits aktiv ist bzw. mit dem aktuellen Wert im TC übereinstimmt. Fakt ist aber, dass der TC irgendwann auf die "alte" Temperatur vor der Drehradveränderung zurückspringt. Und gerade das will ich vermeiden, indem ich die Temperatur durch die Drehradveränderung nochmal von der Zentrale dem TC anweise. Damit eben nicht zurückgestellt wird.

Ich habe nochmal aufgezeichnet. Ich drehe am Rad auf 21.5°C. Nach einiger Zeit schaltet der TC zurück auf 22.0°C.

2013-12-09_16:42:09 thermostat_wohnzimmer desired-temp: 21.5
2013-12-09_16:42:09 thermostat_wohnzimmer battery: ok
2013-12-09_16:42:09 thermostat_wohnzimmer_climate desired-temp: 21.5
...
2013-12-09_16:50:05 thermostat_wohnzimmer desired-temp: 22.0
2013-12-09_16:50:05 thermostat_wohnzimmer battery: ok
2013-12-09_16:50:05 thermostat_wohnzimmer_climate desired-temp: 22.0


Die Raw Messages dazu:

2013.12.09 16:42:05.049 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:42:05.052 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:0984EF18 IDcnt:000F
2013.12.09 16:42:09.035 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:0984FEA2 d:FF r:FFC0     m:82 A410 1BF932 DE7474 06022B00000000

2013.12.09 16:42:09.048 1: *** set thermostat_wohnzimmer_climate desired-Temp 21.5

2013.12.09 16:42:13.184 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:09850ED8 d:FF r:FFBD     m:DA 8670 1CE123 000000 00B740
2013.12.09 16:42:30.063 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:42:30.066 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098550D2 IDcnt:000F
2013.12.09 16:42:33.184 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:09855CFB d:FF r:FFBE     m:DA A258 1CE123 1CF1E3 0200
2013.12.09 16:42:33.319 0: HMLAN_Parse: HMLAN1 R:E1CF1E3   stat:0000 t:09855D80 d:FF r:FFAF     m:DA 8202 1CF1E3 1CE123 010100002F
2013.12.09 16:42:55.080 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:42:55.083 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:0985B28E IDcnt:000F
2013.12.09 16:43:00.955 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:0985C97A d:FF r:FFCD     m:35 8670 1CE75F 000000 00983E
2013.12.09 16:43:19.131 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:0986107C d:FF r:FFC9     m:32 8670 1CDFBA 000000 008D3C
2013.12.09 16:43:19.534 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:0986120F d:FF r:FFCA     m:7F 8670 1BF932 000000 00C93B
2013.12.09 16:43:20.082 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:43:20.085 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:0986143C IDcnt:000F
2013.12.09 16:43:20.955 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:0986179D d:FF r:FFCD     m:35 A258 1CE75F 1CED2A 0200
2013.12.09 16:43:21.088 0: HMLAN_Parse: HMLAN1 R:E1CED2A   stat:0000 t:09861820 d:FF r:FFC4     m:35 8202 1CED2A 1CE75F 010100003D
2013.12.09 16:43:39.131 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:09865E9F d:FF r:FFC9     m:32 A258 1CDFBA 1CF1FC 0200
2013.12.09 16:43:39.266 0: HMLAN_Parse: HMLAN1 R:E1CF1FC   stat:0000 t:09865F24 d:FF r:FFC6     m:32 8202 1CF1FC 1CDFBA 0101000038
2013.12.09 16:43:39.534 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:09866032 d:FF r:FFCA     m:7F A258 1BF932 1C4DD3 0095
2013.12.09 16:43:39.666 0: HMLAN_Parse: HMLAN1 R:E1C4DD3   stat:0000 t:098660B4 d:FF r:FFC5     m:7F 8202 1C4DD3 1BF932 010100002F
2013.12.09 16:43:45.089 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:43:45.092 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098675EE IDcnt:000F
2013.12.09 16:45:25.144 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:45:25.147 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:0987FCD4 IDcnt:000F
2013.12.09 16:45:33.710 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:09881E43 d:FF r:FFCD     m:36 8670 1CE75F 000000 00983E
2013.12.09 16:45:50.156 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:45:50.159 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:09885E8B IDcnt:000F
2013.12.09 16:45:53.710 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:09886C66 d:FF r:FFCD     m:36 A258 1CE75F 1CED2A 0200
2013.12.09 16:45:53.843 0: HMLAN_Parse: HMLAN1 R:E1CED2A   stat:0000 t:09886CE8 d:FF r:FFC4     m:36 8202 1CED2A 1CE75F 010100003D
2013.12.09 16:46:01.387 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:09888A64 d:FF r:FFC9     m:33 8670 1CDFBA 000000 008E3C
2013.12.09 16:46:05.290 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:098899A3 d:FF r:FFCA     m:80 8670 1BF932 000000 00CA3A
2013.12.09 16:46:15.168 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:46:15.171 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:0988C043 IDcnt:000F
2013.12.09 16:46:21.388 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:0988D887 d:FF r:FFC9     m:33 A258 1CDFBA 1CF1FC 0200
2013.12.09 16:46:21.521 0: HMLAN_Parse: HMLAN1 R:E1CF1FC   stat:0000 t:0988D90A d:FF r:FFC6     m:33 8202 1CF1FC 1CDFBA 0101000038
2013.12.09 16:46:25.290 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:0988E7C6 d:FF r:FFCA     m:80 A258 1BF932 1C0ABF 0095
2013.12.09 16:46:25.425 0: HMLAN_Parse: HMLAN1 R:E1C0ABF   stat:0000 t:0988E84B d:FF r:FFBE     m:80 8202 1C0ABF 1BF932 010174003D
2013.12.09 16:46:40.170 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:46:40.173 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098921F0 IDcnt:000F
2013.12.09 16:46:48.945 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:09894430 d:FF r:FFBE     m:DC 8670 1CE123 000000 00B73F
2013.12.09 16:47:05.187 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:47:05.190 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098983AD IDcnt:000F
2013.12.09 16:47:08.945 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:09899253 d:FF r:FFBE     m:DC A258 1CE123 1CF1E3 0200
2013.12.09 16:47:09.080 0: HMLAN_Parse: HMLAN1 R:E1CF1E3   stat:0000 t:098992D8 d:FF r:FFB0     m:DC 8202 1CF1E3 1CE123 010100002E
2013.12.09 16:47:30.201 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:47:30.204 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:0989E567 IDcnt:000F
2013.12.09 16:47:52.215 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:098A3B5F d:FF r:FFCD     m:37 8670 1CE75F 000000 00983E
2013.12.09 16:47:55.206 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:47:55.209 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098A4717 IDcnt:000F
2013.12.09 16:48:12.215 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:098A8982 d:FF r:FFCC     m:37 A258 1CE75F 1CED2A 0200
2013.12.09 16:48:12.348 0: HMLAN_Parse: HMLAN1 R:E1CED2A   stat:0000 t:098A8A05 d:FF r:FFC4     m:37 8202 1CED2A 1CE75F 010100003D
2013.12.09 16:48:20.215 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:48:20.218 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098AA8CC IDcnt:000F
2013.12.09 16:48:29.392 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:098ACC9E d:FF r:FFC9     m:34 8670 1CDFBA 000000 008E3C
2013.12.09 16:48:36.546 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:098AE891 d:FF r:FFCA     m:81 8670 1BF932 000000 00CA39
2013.12.09 16:48:45.223 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:48:45.226 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098B0A7F IDcnt:000F
2013.12.09 16:48:49.392 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:098B1AC1 d:FF r:FFC9     m:34 A258 1CDFBA 1CF1FC 0200
2013.12.09 16:48:49.527 0: HMLAN_Parse: HMLAN1 R:E1CF1FC   stat:0000 t:098B1B45 d:FF r:FFC6     m:34 8202 1CF1FC 1CDFBA 0101000038
2013.12.09 16:48:56.545 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:098B36B3 d:FF r:FFCA     m:81 A258 1BF932 1BFC15 0095
2013.12.09 16:48:56.681 0: HMLAN_Parse: HMLAN1 R:E1BFC15   stat:0000 t:098B3738 d:FF r:FFC2     m:81 8202 1BFC15 1BF932 0101740034
2013.12.09 16:49:10.237 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:49:10.240 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098B6C39 IDcnt:000F
2013.12.09 16:49:35.246 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:49:35.249 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098BCDED IDcnt:000F
2013.12.09 16:49:49.201 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:098C046A d:FF r:FFBE     m:DD 8670 1CE123 000000 00B73F
2013.12.09 16:49:56.219 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:098C1FD5 d:FF r:FFCC     m:38 8670 1CE75F 000000 00983E
2013.12.09 16:50:00.251 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:50:00.254 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098C2F9E IDcnt:000F
2013.12.09 16:50:05.304 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:098C4353 d:FF r:FFCB     m:82 A410 1BF932 DE7474 06022C00000000

2013.12.09 16:50:05.317 1: *** set thermostat_wohnzimmer_climate desired-Temp 22.0

2013.12.09 16:50:09.201 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:098C528D d:FF r:FFBD     m:DD A258 1CE123 1C494E 0200
2013.12.09 16:50:09.335 0: HMLAN_Parse: HMLAN1 R:E1C494E   stat:0000 t:098C5311 d:FF r:FFAB     m:DD 8202 1C494E 1CE123 0101000036
2013.12.09 16:50:16.219 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:098C6DF8 d:FF r:FFCD     m:38 A258 1CE75F 1CED2A 0200
2013.12.09 16:50:16.351 0: HMLAN_Parse: HMLAN1 R:E1CED2A   stat:0000 t:098C6E7A d:FF r:FFC4     m:38 8202 1CED2A 1CE75F 010100003D
2013.12.09 16:50:25.262 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:50:25.265 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098C9154 IDcnt:000F
2013.12.09 16:50:42.897 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:098CD632 d:FF r:FFC9     m:35 8670 1CDFBA 000000 008E3C
2013.12.09 16:50:50.270 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:50:50.273 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098CF308 IDcnt:000F
2013.12.09 16:50:53.300 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:098CFED7 d:FF r:FFCA     m:82 8670 1BF932 000000 00CA38
2013.12.09 16:51:02.897 0: HMLAN_Parse: HMLAN1 R:E1CDFBA   stat:0000 t:098D2456 d:FF r:FFC9     m:35 A258 1CDFBA 1CF1FC 0200
2013.12.09 16:51:03.032 0: HMLAN_Parse: HMLAN1 R:E1CF1FC   stat:0000 t:098D24DA d:FF r:FFC6     m:35 8202 1CF1FC 1CDFBA 0101000038
2013.12.09 16:51:13.301 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:098D4CFB d:FF r:FFCA     m:82 A258 1BF932 1C4DD3 0095
2013.12.09 16:51:13.433 0: HMLAN_Parse: HMLAN1 R:E1C4DD3   stat:0000 t:098D4D7D d:FF r:FFC5     m:82 8202 1C4DD3 1BF932 010174002F
2013.12.09 16:51:15.273 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:51:15.276 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098D54B8 IDcnt:000F
2013.12.09 16:51:40.276 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:51:40.279 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098DB666 IDcnt:000F
2013.12.09 16:52:05.301 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:52:05.304 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098E182B IDcnt:000F
2013.12.09 16:52:30.315 0: HMLAN_Send:  HMLAN1 I:K
2013.12.09 16:52:30.318 0: HMLAN_Parse: HMLAN1 V:03C1 sNo:IEQ0061959 d:139779 O:DE7474 t:098E79E4 IDcnt:000F
2013.12.09 16:52:34.957 0: HMLAN_Parse: HMLAN1 R:E1CE123   stat:0000 t:098E8BFF d:FF r:FFBE     m:DE 8670 1CE123 000000 00B740
2013.12.09 16:52:49.725 0: HMLAN_Parse: HMLAN1 R:E1CE75F   stat:0000 t:098EC5B1 d:FF r:FFCC     m:39 8670 1CE75F 000000 00983E
2013.12.09 16:52:52.060 0: HMLAN_Parse: HMLAN1 R:E1BF932   stat:0000 t:098ECED0 d:FF r:FFBE     m:83 A410 1BF932 DE7474 06022F00000000


event-on-change-reading ist (noch) nicht gesetzt.

Zitat von: martinp876Es wird NICHT geschrieben, wenn
a) die temp schon den wert hat
Woher weiss fhem, dass desired-temp schon den Wert hat? Ich meine allgemein. Denn meiner Meinung nach sieht fhem immer nur den letzten Wert, den der TC geschickt hat. Und genau genommen ist das nicht der aktuelle Wert. In der Praxis hatte ich schon oft den Fall, dass der TC eine andere desired-temp eingestellt hatte, als in fhem angezeigt. Meiner Meinung sollte auch in diesen Fällen (Übereinstimmung der zuletzt bekannten desired-temp und der neuen einzustellenden desired-temp) ein Telegramm geschickt werden.

Was meinst du?

Zitat von: Martinp876wie verhalten sich die readings desired-temp in den beiden entites, wenn sie keinen trigger auslösen?
Die trigger (notify) kommen, die Perl sub wird auch ausgeführt, das sieht man ja im Log an der Logmeldung, die ich immer noch ausgebe.