Thermostate umstellen Heizen/Kühlen per Script

Kabellose und kabelgebundene Sender und Empfänger der Serie Homematic "classic"

Moderator: Co-Administratoren

Antworten
Pinky
Beiträge: 14
Registriert: 19.04.2017, 16:02

Thermostate umstellen Heizen/Kühlen per Script

Beitrag von Pinky » 09.06.2019, 08:53

Tag zusammen,

ich scheitere gerade an der Einrichtung von der Umschaltung meiner Thermostate.

Die Thermostate lassen sich ja von Heizen auf Kühlen umstellen. Da ich in jedem Raum einen Thermostat habe und die Temperaturen im moment recht stark von "kalt" auf "warm" schwanken, möchte ich auch die Thermostate dann entsprechend von kühlen auf heizen umstellen - am liebsten per Taster, damit ich nicht jeden Thermostat in der Web-GUI einzeln anfassen muss.

Das scheint auch zu funktionieren, zumindest wurde es hier schon verständlich beschrieben, sodass mir der Weg soweit einleuchtet: viewtopic.php?t=18843

Offenbar mache ich dennoch irgend etwas falsch, vielleicht habt ihr ja einen Tipp, was das sein könnte.

Meine Schritte bislang:
Ich habe eine Systemvariable eingerichtet "iskuehlen". Logikwert wahr-falsch.
Das TCL-Script unter: viewtopic.php?f=27&t=4259&p=34570#p34570 ist per ssh unter /usr/local/setparam.tcl hinterlegt und trägt mittlerweile 777.
Ich habe ein Programm erstellt welches die Systemvariablen ausliest und bei Aktualisierung das TCL-Script triggert. Ein weiteres, welches bei Tastendruck die Systemvariablen aktualisiert.
Zur Kontrolle ob das script auch ausgeführt wird habe lasse ich eine Lampe im Wohnzimmer mit schalten. Das script wird ausgeführt.

Dennoch ist der Thermostat nach wie vor auf "Heizen" eingestellt, wenn ich in der GUI in den Geräteeinstellungen das Dropdown kontrolliere.

Mein Script wie ich es derzeit verwende sieht so aus:

Code: Alles auswählen

string addr = dom.GetObject("WZ Thermostat").Address();
string cmd = "tclsh /usr/local/setparam.tcl "#addr#" HEATING_COOLING int "#1;
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(cmd);
So wie der Kollege aus dem Post oben habe ich das Script bereits auf das notwendigste reduziert. Ich kann hier keinen Fehler mehr erkennen. Auch die Automatische Scriptkontrolle sagt, dass das Script in Ordnung ist. Dennoch gibt mir das Log folgenden Fehler aus:

Code: Alles auswählen

Jun  9 08:32:46 homematic-ccu2 local0.err ReGaHss: Error: IseESP::ScriptRuntimeError: string addr = dom.GetObject("WZ Thermostat").Address(); string cmd = "tclsh /usr/local/setparam.tcl "#addr#" HEATING_COOLING int "#1; dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(cmd); 
Den Namen des "WZ Thermostat" habe ich bereits gegengeprüft, dieser scheint korrekt zu sein. Nun bin ich ratlos.

Hat noch jemand eine Ahnung warum der Thermostat denoch nicht umschaltet?

Gruß Pinky

Antworten

Zurück zu „HomeMatic Aktoren und Sensoren“