FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: chrizz1001 am 15 November 2018, 10:17:47

Titel: [Gelöst] Bluetooth LE Thermostat notify desiredTemperature Syntax
Beitrag von: chrizz1001 am 15 November 2018, 10:17:47
Hallo zusammen,

ich starte gerade meine ersten Gehversuche mit fhem und habe vor, Heizungsthermostate (mit dem Modul eq3bt) zu steuern. Das klappt soweit auch ganz gut. Räume sind eingerichtet, structure je Raum für die Thermostate, das läuft alles.
Ich versuche jetzt die Thermostate je Raum zu "Synchroniseren". Ich will also, das wenn ich an einem Thermostat manuell die desiredTemperature ändere, diese Info an die anderen Thermostate im Raum weitergegeben wird.
Die Thermostate heißen:
bm.valve1
bm.valve2
bm.valve3
usw...

Ich habe schon diverse Syntax probiert, komme aber nicht weiter. Ein Fehler im Event Monitor wird nicht ausgegeben.

defmod BmVale1Notify notify bm.valve1:(desiredTemperature:).* set bm.valve.* $EVENT

defmod BmVale1Notify notify bm.valve1:desiredTemperature set bm.valve.* $EVENT

defmod BmVale1Notify notify bm.valve1:desiredTemperature:.* set bm.valve.* $EVENT

defmod BmVale1Notify notify bm.valve1:desiredTemperature.* set bm.valve.* $EVENT


Das Event im Event Manager, wenn ich die Temperatur (an valve1) manuell ändere:

2018-11-14 18:30:24 EQ3BT bm.valve1 desiredTemperature: 17.0

Vielen Dank schon mal und beste Grüße aus Mainz

Chris
Titel: Antw:Bluetooth LE Thermostat notify desiredTemperature Syntax
Beitrag von: binford6000 am 15 November 2018, 11:11:13
defmod BmVale1Notify notify bm.valve1:desiredTemperature:.* set bm.valve.* $EVENT

Mit $EVENT aufgelöst würde sowas daraus:

defmod BmVale1Notify notify bm.valve1:desiredTemperature:.* set bm.valve.* bm.valve1 desiredTemperature: 17.0

Das würde dann wahrscheinlich im Log als Fehler auftrauchen (und nicht im Eventmonitor)  ;)
Eher so:

defmod BmVale1Notify notify bm.valve1:desiredTemperature:.* set bm.valve.* $EVTPART1

In der commandref steht noch mehr über die Variablen in notify...
Und du solltest in den Thermostaten das Attribut event-on-change einstellen., falls noch nicht geschehen.
VG Sebastian
Titel: Antw:Bluetooth LE Thermostat notify desiredTemperature Syntax
Beitrag von: Otto123 am 15 November 2018, 11:43:55
Hallo Chris,

wie lautet denn der exakte Befehl um einen Thermostaten zu setzen?
So ? Oder anders?
set bm.valve1 desiredTemperature 17.0

Die Gefahr die ich sehe. Mit set bm.valve.* wird auch der auslösenden Thermo wieder gesetzt. Das könnte eine böse Schleife geben ...

Deswegen: rantasten und erstmal so in der Art probieren!
defmod BmVale1Notify notify bm.valve1:desiredTemperature:.* set bm.valve2 desiredTemperature $EVTPART1

Gruß Otto
Titel: Antw:Bluetooth LE Thermostat notify desiredTemperature Syntax
Beitrag von: chrizz1001 am 15 November 2018, 16:06:22
Hallo nochmal,

ich danke euch! Hab es mit euren Infos hinbekommen. Es schaut jetzt so aus und tut wie geheißen (wie Otto angekündigt hat mit "böser schleife" wegen Wildcard .*), also Achtung hierbei ;)

defmod BmVale1Notify notify bm.valve1:desiredTemperature:.* set bm.valve.* desiredTemperature $EVTPART1

Offensichtlich ist die Syntax beim kommenden befehl etwas anders als beim Befehl der von fhem gesendet wird. Er mag beim senden den Doppelpunkt hinter desiredTemperature nicht, daher ging es nicht mir der $EVENT bzw. $EVTPART0 Variable. Befehl ausgeschrieben und es klappt!

Vielen Dank für die Hilfe!
Chris
Titel: Antw:[Gelöst] Bluetooth LE Thermostat notify desiredTemperature Syntax
Beitrag von: Otto123 am 15 November 2018, 16:38:12
Hallo Chris,

der set Befehl und der Event - das ist sozusagen wie Sommerschuhe und Winterschuhe :)

Hat eigentlich nichts mit einander zu tun - kann aber gleich sein  ;D

Gruß Otto
Titel: Antw:[Gelöst] Bluetooth LE Thermostat notify desiredTemperature Syntax
Beitrag von: chrizz1001 am 15 November 2018, 17:16:50
Hallo Otto,

danke für die Info, das ist gut zu wissen! Dann werd ich in Zukunft die "Befehle" lieber direkt angeben und mit nicht auf die Syntax der Events verlassen. Da Hätte ich mir viel Zeit und Kopfzerbrechen sparen können ;D

Gruß
Chris
Titel: Antw:[Gelöst] Bluetooth LE Thermostat notify desiredTemperature Syntax
Beitrag von: Otto123 am 15 November 2018, 17:36:57
Die Befehle siehst Du in der Doku und in der Weboberfläche des Gerätes.
Die Events siehst Du im Eventmonitor - Dein Kopf kannst Du schonen und musst ihn nicht zerbrechen  ;D

Gruß Otto