hallo,
ich möchte mit folgenden notify's meine Heizkörper durch den wandthermostaten steuern.
klappt aber leider nicht.
in fhem werden zwar die boost taste oder die Temperatur des Thermostaten erkannt, aber leider nicht an die Heizkörper weitergeleitet.
define hk.essen.desired_temp notify wohnen__fb_Climate.desired-temp:.* set essen_Climate desired-temp $EVTPART1
define hk.essen.controlMode notify wohnen__fb_Climate.controlMode:.* set essen_Climate controlMode $EVTPART1
define hk.wohnen.desired_temp notify wohnen__fb_Climate.desired-temp:.* set wohnen_Climate desired-temp $EVTPART1
define hk.wohnen.controlMode notify wohnen__fb_Climate.controlMode:.* set wohnen_Climate controlMode $EVTPART1
wisst ihr was ich da falsch mache?
grüße horst
Ich würde die Komponenten an deiner Stelle jeweils direkt miteinander peeren (bzw. die geeigneten Kanäle dieser). Dann funktioniert deine Heizung auch noch, wenn FHEM mal ausgefallen ist und du benötigst dann auch keine notifys.
Falls du das nicht möchtest (einen Grund kann ich mir nicht vorstellen), schau mal, wie die Events wirklich aussehen (Eventmonitor).
hallo Marvin,
ich hatte die Komponenten auch gepeert, aber dann bekomme ich keine temperatur-ist-werte mehr von den Heizkörpern, die werden dann dann vom wandthermostat überschrieben.
meiner Meinung nach sollten die Heizkörper aber noch in jedem fall, durch das in ihnen eingeschriebene temperaturprogramm, auch bei ausfall von fhem weiterlaufen.
im Event Monitor kommen nur die Infos vom Thermostaten an. von einem notify ist nix zu sehen; und das vertehe ich eben nicht.
Zitatim Event Monitor kommen nur die Infos vom Thermostaten an. von einem notify ist nix zu sehen; und das vertehe ich eben nicht.
wir sehen noch viel weniger. ;)
wenn du desired-temp von fhem setzen lassen willst, muss der rt im controlmode cent sein, sonst wird die temp, mindestens im auto mode, wieder vom tempprogram überschrieben.
Zitat von: 3dmanipulator am 24 September 2015, 15:38:40
...ich hatte die Komponenten auch gepeert, aber dann bekomme ich keine temperatur-ist-werte mehr von den Heizkörpern, die werden dann dann vom wandthermostat überschrieben...
Der Wandthermostat ist dann ja auch der externer IST-Wert-Fühler; also measured-temp vom Wandthermostat = measured-temp Heizkörperthermostat.
Das ist IMHO auch viel besser so, weil das Ding auch nur dann vernünftig regelt. :P
schau dir mal diesen Link (http://www.meintechblog.de/2014/02/heizungssteuerung-deluxe-neue-homematic-wandthermostate-fuer-einbaurahmen/#more-4147/) durch.
Genau mit diesen beiden Geräte kämpfe ich auch. Lt. wiki wird beim peeren des Weather channel die aktuelle Temperatur Übertragen und bei Peeren des Climate channel die vorgewählte Temperatur. Leider wird aber schon durch den Climate channel auch die gemessene Temperatur Übertragen. das will ich aber nicht, da ich mit einem TC die Temperatur im Erdgeschoss für Wohnzimmer, Küchen und Essecke vorgeben will. Und damit jeder der drei RT selber die aktuelle Raumtemperatur messen und entsprechend regeln soll. Hier meine Frage, kann man beim peeren des Climate channel die Übertragung der gemessenen Temperatur verhindern, oder muss ich die Vorgabe der Temperatur über ein notify vornehmen?
Zitat von: klausph am 28 September 2015, 23:01:43
...Lt. wiki wird beim peeren des Weather channel die aktuelle Temperatur Übertragen und bei Peeren des Climate channel die vorgewählte Temperatur. Leider wird aber schon durch den Climate channel auch die gemessene Temperatur Übertragen...
Das ist etwas unglücklich formuliert.
Am besten man guckt sich mal die Inhalte der Kanäle an, die man peeren will.
Dann erkennst Du, dass beim Wandthermostat der Weather-Kanal NUR die gemessene Temperatur beinhaltet, der Climate-Kanal dagegen measured- UND desired-temp.
Zitat...kann man beim peeren des Climate channel die Übertragung der gemessenen Temperatur verhindern, oder muss ich die Vorgabe der Temperatur über ein notify vornehmen?
Wenn Du aus räumlichen Gründen nicht die IST-Temp vom Wandthermostat haben willst, vermute ich mal, dass das dann nur per notify geht !?!
so, nach einigem rumprobieren habe ich jetzt die lösung für mein Problem selbst gefunden. anstatt notify benutze ich dummy und DOIF.
insgesamt brauche ich 4 DOIFs und ein dummy.
die RTs werden bei mir nicht mit der fhem zentrale verbunden natürlich sind sie gepairt, aber controlMode ist nicht cent. dadurch ist sichergestellt dass bei Störungen die RTs ihre eigenen Programme weiter abspulen können.
hiermit wird die Temperatur gesteuert:
Internals:
DEF ([wohnen__fb_Climate:desired-temp] != [va.wohnen__fb_Climate:state]) ## vergleich neuer wunsch mit altem wunsch
(set va.wohnen__fb_Climate [wohnen__fb_Climate:desired-temp]) ## wunsch aktualisieren
(set (essen|buero|wohnen)_Clima desired-temp [va.wohnen__fb_Climate:state]) ## temperaturwunsch übermitteln
(set (essen|buero|wohnen)_Clima burstXmit) ## sofort
NAME do.wohnen__fb_Climate.temp
NR 149
NTFY_ORDER 50-do.wohnen__fb_Climate.temp
STATE cmd_1
TYPE DOIF
Readings:
2015-09-29 14:24:11 Device wohnen__fb_Climate
2015-09-29 14:14:19 cmd_event wohnen__fb_Climate
2015-09-29 14:14:19 cmd_nr 1
2015-09-29 14:14:19 cmd_seqnr 3
2015-09-29 14:14:19 e_va.wohnen__fb_Climate_state 19.0
2015-09-29 14:24:11 e_wohnen__fb_Climate_desired-temp 19.0
2015-09-29 14:14:19 state cmd_1
Condition:
0 ReadingValDoIf('wohnen__fb_Climate','desired-temp','') != ReadingValDoIf('va.wohnen__fb_Climate','state','')
Devices:
0 wohnen__fb_Climate va.wohnen__fb_Climate
all wohnen__fb_Climate va.wohnen__fb_Climate
Do:
0:
0 set va.wohnen__fb_Climate [wohnen__fb_Climate:desired-temp]
1 set (essen|buero|wohnen)_Clima desired-temp [va.wohnen__fb_Climate:state]
2 set (essen|buero|wohnen)_Clima burstXmit
1:
Helper:
globalinit 1
last_timer 0
sleeptimer -1
Internals:
Itimer:
Readings:
0 wohnen__fb_Climate:desired-temp va.wohnen__fb_Climate:state
all wohnen__fb_Climate:desired-temp va.wohnen__fb_Climate:state
State:
Timerfunc:
Trigger:
Attributes:
do always
room Doif
burstXmit ist nicht unbedingt notwendig, wurde aber von meinem Freund so gewünscht.
so sieht der dummy aus:
Internals:
NAME va.wohnen__fb_Climate
NR 148
STATE 19.0
TYPE dummy
Readings:
2015-09-29 14:14:19 state 19.0
Attributes:
room Doif
...und so die zwei mode umschalter:
Internals:
DEF ([wohnen__fb_Climate:controlMode]eq "auto") ## Modus
((set (essen|buero|wohnen)_Clima controlMode auto) ##modus übermitteln
(set (essen|buero|wohnen)_Clima burstXmit) ###sofort
)
NAME do.wohnen__fb_Climate.auto
NR 145
NTFY_ORDER 50-do.wohnen__fb_Climate.auto
STATE cmd_2
TYPE DOIF
Readings:
2015-09-29 14:27:02 Device wohnen__fb_Climate
2015-09-29 14:13:13 cmd_event wohnen__fb_Climate
2015-09-29 14:13:13 cmd_nr 2
2015-09-29 14:27:02 e_wohnen__fb_Climate_controlMode manual
2015-09-29 14:13:13 state cmd_2
Condition:
0 ReadingValDoIf('wohnen__fb_Climate','controlMode','')eq "auto"
Devices:
0 wohnen__fb_Climate
all wohnen__fb_Climate
Do:
0:
0 (set (essen|buero|wohnen)_Clima controlMode auto) (set (essen|buero|wohnen)_Clima burstXmit)
1:
Helper:
globalinit 1
last_timer 0
sleeptimer -1
Internals:
Itimer:
Readings:
0 wohnen__fb_Climate:controlMode
all wohnen__fb_Climate:controlMode
State:
Timerfunc:
Trigger:
Attributes:
room Doif
Internals:
DEF ([wohnen__fb_Climate:controlMode]eq "manual") ## modus
(
(set (essen|buero|wohnen)_Clima controlManu [va.wohnen__fb_Climate:state]) ##modus übermitteln
(set (essen|buero|wohnen)_Clima burstXmit) ###sofort
)
NAME do.wohnen__fb_Climate.manual
NR 146
NTFY_ORDER 50-do.wohnen__fb_Climate.manual
STATE cmd_1
TYPE DOIF
Readings:
2015-09-29 14:27:02 Device wohnen__fb_Climate
2015-09-29 14:13:59 cmd_event wohnen__fb_Climate
2015-09-29 14:13:59 cmd_nr 1
2015-09-29 14:27:02 e_wohnen__fb_Climate_controlMode manual
2015-09-29 14:13:59 state cmd_1
Condition:
0 ReadingValDoIf('wohnen__fb_Climate','controlMode','')eq "manual"
Devices:
0 wohnen__fb_Climate
all wohnen__fb_Climate
Do:
0:
0 (set (essen|buero|wohnen)_Clima controlManu [va.wohnen__fb_Climate:state]) (set essen_Clima burstXmit)
Helper:
globalinit 1
last_timer 0
sleeptimer -1
Internals:
Itimer:
Readings:
0 wohnen__fb_Climate:controlMode
all wohnen__fb_Climate:controlMode
State:
Timerfunc:
Trigger:
Attributes:
room Doif
...und zu guter letzt boost:
Internals:
DEF ([wohnen__fb_Climate:controlMode]eq "boost") ## modus
((set (essen|buero|wohnen)_Clima controlMode boost) ##modus übermitteln
(set (essen|buero|wohnen)_Clima burstXmit) ###sofort
)
NAME do.wohnen__fb_Climate.boost
NR 147
NTFY_ORDER 50-do.wohnen__fb_Climate.boost
STATE cmd_2
TYPE DOIF
Readings:
2015-09-29 14:29:38 Device wohnen__fb_Climate
2015-09-29 14:09:33 cmd_event wohnen__fb_Climate
2015-09-29 14:09:33 cmd_nr 2
2015-09-29 14:29:38 e_wohnen__fb_Climate_controlMode manual
2015-09-29 14:09:33 state cmd_2
Condition:
0 ReadingValDoIf('wohnen__fb_Climate','controlMode','')eq "boost"
Devices:
0 wohnen__fb_Climate
all wohnen__fb_Climate
Do:
0:
0 (set (essen|buero|wohnen)_Clima controlMode boost) (set (essen|buero|wohnen)_Clima burstXmit)
1:
Helper:
globalinit 1
last_timer 0
sleeptimer -1
Internals:
Itimer:
Readings:
0 wohnen__fb_Climate:controlMode
all wohnen__fb_Climate:controlMode
State:
Timerfunc:
Trigger:
Attributes:
room Doif
das ganze macht halt sinn, wenn es sich um große räume oder um mehrere räume handelt, bei denen auch die Temperatur beim RT ausgelesen werden soll.
zusätzlich kann noch jeder RT vollkommen individuell programmiert werden.
grüße horst
Zitatdie RTs werden bei mir nicht mit der fhem zentrale verbunden.
was meinst du damit?
gepaired müssen sie ja sein, sonst könnten deine doif keine temps setzen.
das war etwas unglücklich ausgedrückt.
natürlich sind sie gepairt, aber controlMode ist nicht cent.