Den lese ich bereits aus mittels einem HM-ES-TX-WM plus optischem Sensor. Der aktuelle Gesamtverbrauch und die aktuelle Gesamterzeugung habe ich somit bereits. Wenn aber der gesamte Bezug höher ist als die erzeugte Menge (es ist nur ein kleines 600W Balkonkraftwerk), dann ist der Bezug halt um die erzeugte Menge kleiner. Nur interessehalber würde ich gern die erzeugte Menge dokumentieren.
Beiträge von Andyman
-
-
Ich habe einen digitalen Zweirichtungszähler, der Bezug und Einspeisung absolut misst. Um den Anteil der erzeugten Energie aber aus dem Verbrauch (der in der Regel größer ist als die Erzeugung) herauszuextrahieren, würde ich gern die Erzeugung separat erheben und in einer Homematic Systemvariable speichern. Gemessen wird die Erzeugung nur über einen Shelly Plug S. Ich sehe schon, da müsste man etwas in Homematic bauen, was anhand Leistung pro Zeit was errechnet...
-
Hallo nochmal,
da das ja jetzt so toll funktioniert, habe ich bereits ein bißchen weitergedacht und mir vorgestellt, in der Homematic 2 Systemvariablen zu erzeugen: 1. Verbrauch/Erzeugung aktueller Tag in [kWh] und 2. Verbrauch/Erzeugung Vortag in [kWh]. Hast Du eine Idee, wie man dies eventuell mit ins Script integrieren könnte? Lässt sich dies auch aus dem Shelly auslesen, oder müsste man in HM anfangen, zu zählen/rechnen?
Grüße Andreas
-
So, Rückmeldung: Es funktioniert jetzt!! 🥳 Vielen Dank für das Auffinden dieses zum Glück ja doch recht einfachen Fehlers!
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Was mich jetzt noch wundert: Es werden die Systemvariablen korrekt mit Daten befüllt, aber doch nicht dem Gerätekanal zugeordnet:
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Hab sie (die Systemvariablen) extra nochmal gelöscht und vom Script neu erstellen lassen, jedoch ohne Kanalzuordnung. Egal, das bekomme ich auch manuell hin.
Noch eine Frage: In einem anderen Thread habe ich gelesen, dass es Sinn macht, als Bedingung für die Scriptausführung noch eine Onlineabfrage des jeweiligen Shellys (bei mir nur der eine) mit einzubauen. Habe ich gemacht. Dummerweise hat sich heute Nacht um 23.50 Uhr der Shelly (warum auch immer) kurz vom WLAN abgemeldet. Da ja die Aktualisierung des Onlinestatus im Script stattfindet, blieb er nun offline, bis ich heute früh das Script manuell ausführte und er sich aktualisierte. Ich habe also diese Abfragebedingung vorerst wieder entfernt... Macht das so wirklich Sinn?
Danke + Grüße
Andreas
-
Verstehe ich jetzt nicht.
CUX2801004:1 hat er doch als letztes eingerichtet und so im Script zu stehen.
Ich habe den Unterschied auch erst auf den dritten Blick gesehen und verstanden 😉
-
Also muss ich vor meine CUxD-Geräte nur ein Präfix „CUxD.“ setzen? Das probiere ich gleich morgen früh mal! Danke 🤩
-
Nein, sämtliche Geräte/Kanäle/SV habe ich extra für den Shelly angelegt. Die werden ansonsten nicht doppelt verwendet.
-
Die Response im Browser lautet:
Code{"power":0.00,"overpower":0.00,"is_valid":true,"timestamp":1675963568,"counters":[0.000, 0.000, 0.000],"total":271693}
Die aktuelle Leistung ist wirklich auf 0.0W, da das Balkonkraftwerk aufgrund fehlender Sonne bereits ausgeschaltet ist. Meinen Shelly habe ich nicht mit Zugangsdaten versehen, die CCU (Raspberrymatic) aber schon. Das klappt ja auch soweit mit z.B. der Statusrückmeldung vom Shelly an die Homematic und der Aktualisierung des Online-Status.
Meine Firmwareversionen lauten:
Firmware CCU: Raspberrymatic 3.67.10.20230114 auf Raspberry Pi 3B+
CUxD-Version: 2.10.1
Firmware Shelly: 20230109-114426/v1.12.2-g32055ee
-
Nicht dass ich wüsste...
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. -
Wieso CUX18......... Gerät. Ist ein Rauchmelder.
Sollte doch ein CUX28........ sein.?
Das ist korrekt, ich glaube, Stefan hat sich nur vertippt
-
Hallo,
ich habe das CUxD-Exec-Gerät 2801005 gelöscht und gemäß deiner Anleitung ein neues erstellt, das heißt jetzt CUX2801004. Dieses habe ich auch im Script eingetragen und die alten Systemvariablen gelöscht. Das Script sieht jetzt so aus:
Code
Alles anzeigen! Skript V2.2.3 zur Einbindung Shelly PlugS mit Originalfirmware (c) 2021-2022 by 66er (alias Stefan K.) ! Alle Rechte vorbehalten! ! Publiziert und Updates auf https://shelly-forum.com/forum/index.php?board/145-homematic/ ! entwickelt und getestet auf PlugS-Firmware 1.11.8 ! jede Funktion optional aktivierbar, automatische Homematic-SV-Erstellung, Onlinestatus-Prüfung optional integriert ! Versionsdatum: 09.07.2022 ! NEU: Systemvariablen werden autom. dem CUxD-Schalter-Kanal zugeordnet ! BITTE BEACHTEN: ! Dieses Skript legt ggf. selbstständig zusätzliche Systemvariablen auf Deiner Homematic-Zentrale an! ! Das vermeidet Inkonsistenzen und eine temporäre Blockade der CCU durch das Skript. ! Ausserdem erspart es Dir das manuelle Anlegen benötigter Systemvariablen. ! Wer das nicht möchte, kann dieses Skript leider nicht nutzen! ! Die Nutzung des Skriptes erfolgt auf eigenes Risiko. ! Aus der Nutzung entsteht kein Rechtsanspruch auf Suppport oder Fehlerbeseitigung durch den Autor. ! Der Autor haftet nicht für eventuelle Folgen der Nutzung auf der Homematic-Zentrale des Nutzers. ! Das Skript ist ausführlich getestet und sollte problemlos funktionieren. ! Bezeichnung: AP BKW (kann angepasst werden, dient nur zur Orientierung) ! **** SETUP ******** SETUP ******** SETUP ******** SETUP *** ! ACHTUNG: Beim Anpassen der Adressen keine "" löschen! ! Setup Shelly PlugS var shplip = "192.168.0.27" ; ! IP des Shelly PlugS anpassen var shplname = "PlugS_BKW" ; ! Name des Shelly PlugS anpassen (daraus werden ggf. automatisch weitere Variablennamen erzeugt var shplrl = "N" ; ! Ist Restrict Login im Shelly aktiv, dann auf "J" setzen var shplbn = "DeinBenutzername" ; ! Ist Restrict login auf J, dann Benutzername anpassen var shplpw = "DeinPasswort" ; ! Ist Restrict login auf J, dann Passwort anpassen, keine Sonderzeichen ! Setup der CUxD-GERÄTE var execshpl = "CUX2801004:1" ; ! Adresse und Kanal des CUxD-Exec-Device angeben var shplcuxd = "CUX4000004:1" ; ! Adresse und Kanal des CUxD-Device für den Shelly PlugS anpassen ! Setup Online-Status var shplonl = "J" ; ! Variable für Onlinezustandsüberwachung, falls nicht gewünscht, auf "N" setzen"" ! Setup Aktualisierungsumfang var shplstat = "J" ; ! Status EIN oder AUS wird durch das Skript aktualisiert, wenn nicht gewünscht auf "N" setzen var shplvba = "J" ; ! aktuelle Verbrauchsanzeige, wenn nicht gewünscht auf "N" setzen !****ENDE SETUP ********ENDE SETUP ********ENDE SETUP ****** !*****Ab hier NICHTS MEHR ÄNDERN *************************** WriteLine("Skript startet"); ! Variable für Onlinestatus prüfen,ggf.anlegen if (shplonl == "J") { var shplonln = shplname + "_Online-Status" ; ! WriteLine(shplonln) ; string sName= ""#shplonln#""; ! Onlinestatus if (!dom.GetObject (ID_SYSTEM_VARIABLES).Get (sName)) { object svObj = dom.CreateObject(OT_VARDP,sName); svObj.DPInfo("autom. angelegt durch Skript Shelly PlugS"); svObj.ValueUnit(""); dom.GetObject (ID_SYSTEM_VARIABLES).Add(svObj); svObj.ValueType(ivtBinary); svObj.ValueSubType(istBool); svObj.ValueName0("Offline"); svObj.ValueName1("Online"); svObj.State (true);!SCNR = SHP22366R dom.RTUpdate(0); object oChan= channels.Get (""#shplname#""); object oSys=dom.GetObject (ID_SYSTEM_VARIABLES).Get (""#shplonln#""); oChan.DPs().Add (oSys); oSys.Channel (oChan.ID() ); } ! Onlineabfrage und setzen des Status string stderr; string stdout; integer Status; system.Exec("ping -c 1 '"#shplip#"'", &stdout, &stderr); Status = stdout.Find("ms"); WriteLine(Status); if (((shplonl ) == "J" ) && ((Status) == -1)) { WriteLine("Shelly1 ist offline"); dom.GetObject (""#shplonln#"").State(0); quit; ! Programmabbruch bei Shelly offline } if ((shplonl ) == "J" ) { dom.GetObject (""#shplonln#"").State(1); WriteLine("Shelly PlugS ist online"); } } !******************************************************************************* !***** Werte-Abfrage des PlugS ***** if (shplstat == "J"){ var url = "http://" + shplip + "/relay/0/status" ; WriteLine(url); if (shplrl == "J") { var url = "http://" + shplbn + ":" + shplpw + "@" +shplip + "/relay/0/status" ; WriteLine(url); } dom.GetObject(""#execshpl#".CMD_SETS").State("wget -q -O - '"#url#"'"); dom.GetObject(""#execshpl#".CMD_QUERY_RET").State(1); string Antwort = dom.GetObject(""#execshpl#".CMD_RETS").State(); dom.GetObject(""#execshpl#".CMD_SETS").State("0"); WriteLine(Antwort); string word = "ison:"; integer word_laenge = word.Length(); integer word_position = Antwort.Find(word); string daten = Antwort.Substr((word_position + word_laenge +4), 5); integer word_position = daten.Find(word); daten = daten.Substr(0, (word_position -3)); !WriteLine(daten); var zustand = dom.GetObject(""#shplcuxd#".STATE").State(); !WriteLine(zustand); if (daten == "true,") {dom.GetObject(""#shplcuxd#".SET_STATE").State(1); WriteLine("PlugS ist eingeschaltet"); } if (daten == "false") { dom.GetObject(""#shplcuxd#".SET_STATE").State(0); WriteLine("PlugS ist aus"); } } !************************************************************************* ! Leistung if (shplvba == "J") { !Variable prüfen, ggf. anlegen string shplvban; shplvban = shplname + "_Leistung" ; string sName= ""#shplvban#""; if (!dom.GetObject (ID_SYSTEM_VARIABLES).Get (sName)) { object svObj = dom.CreateObject(OT_VARDP,sName); svObj.DPInfo("autom. angelegt durch Skript Shelly PlugS"); svObj.ValueUnit("W"); dom.GetObject (ID_SYSTEM_VARIABLES).Add(svObj); svObj.ValueType(ivtFloat); svObj.ValueSubType(istGeneric); svObj.ValueMin(0); svObj.ValueMax(3500); svObj.State (0);!SCNR = SHP22366R dom.RTUpdate(0); object oChan= channels.Get (""#shplname#""); object oSys=dom.GetObject (ID_SYSTEM_VARIABLES).Get (""#shplvban#""); oChan.DPs().Add (oSys); oSys.Channel (oChan.ID() ); } var url2 = "http://" + shplip + "/meter/0?status" ; WriteLine(url2); if (shplrl == "J") { var url2 = "http://" + shplbn + ":" + shplpw + "@" +shplip + "/meter/0?status" ; WriteLine(url2); } dom.GetObject(""#execshpl#".CMD_SETS").State("wget -q -O - '"#url2#"'"); dom.GetObject(""#execshpl#".CMD_QUERY_RET").State(1); string Antwort = dom.GetObject(""#execshpl#".CMD_RETS").State(); dom.GetObject(""#execshpl#".CMD_SETS").State("0"); WriteLine(Antwort); string t; t = Antwort; !WriteLine(t); string s; foreach (s,t.Split (",")) { if (s.LTrim ("{").StartsWith ('"power"')) { string p = (s.StrValueByIndex (":",1).RTrim ("}")); WriteLine(p); } } dom.GetObject(""#shplvban#"").State(p); } WriteLine("Skript beendet !"); !Ende Skript
Leider scheint das aber dennoch nix am Output zu ändern, es werden zwar neue Systemvariablen angelegt, diese aber nicht dem Gerätekanal zugeordnet, geschweige denn die Leistung aktualisiert.
Wenn ich den Code bei "Skript testen" einfüge, erhalte ich wieder dieses Ergebnis:
CodeSkript startet 102 Shelly PlugS ist online http://192.168.0.27/relay/0/status http://192.168.0.27/meter/0?status Skript beendet !
Meine Vermutung ist, dass die Syntax der Befehlsausführung eventuell mit den " (doppelten Hochkommata) Probleme hat, bei den Schaltaktionen im Shelly musste ich diese auch durch %22 ersetzen, bis es funktionierte, siehe hier: http://Admin:PASSWORT@192.168.0.21:8181/66er.exe?Antwort=dom.GetObject(%22CUxD.CUX4000004:1.SET_STATE%22).State(0)
Könnte dies ein Grund sein?
Danke und Grüße
Andreas
-
Skript startet
102
Shelly PlugS ist online
http://192.168.0.27/relay/0/status
http://192.168.0.27/meter/0?status
Skript beendet !
-
Okay, danke. Ich habe es jetzt im Script geändert, erst auf CUX2801005:1, dann nach Erfolglosigkeit mal auf CUX2801005:10, da ich mir nicht sicher bin, ob die niedrigeren Kanäle von anderen Programmen genutzt werden. Leider ebenfalls ohne Erfolg. Was mich auch wundert, die Systemvariablen werden zwar durchs Script beim ersten Durchlauf automatisch angelegt, jedoch nicht mit dem Gerät verknüpft, dies habe ich mal manuell probiert. Auch habe ich mal das CUxD-Gerät nochmal gelöscht und neu angelegt, da es nicht wie auf deinen Screenshots aussah. Leider brachte alles keinen Erfolg. Die Leistung wird nicht übertragen
Wenn ich im Browser http://192.168.0.27/meter/0?status eingebe, erscheint als Rückmeldung
Code{"power":3.49,"overpower":0.00,"is_valid":true,"timestamp":1675771359,"counters":[3.445, 3.455, 3.464],"total":86}
Das scheint also schonmal zu gehen. Nehme ich aber in deinem Script ein paar Ausrufezeichen "Script-Leistungsbereich"- vor den WriteLines heraus, erhalte ich aber keine Ausgabe...
-
Danke für deine schnelle Antwort!
Anscheinend habe ich das Handling mit den CUxD-Geräten noch nicht so ganz verstanden... An welcher Stelle lege ich denn in CUxD / im Script fest, wo der Variablenwert reingeschrieben wird? Mir ist jetzt doch noch nicht ganz klar, welches meiner CUxD-Exec-Geräte ich hier auswählen muss...
-
Hallo zusammen,
mein erster Beitrag hier, also bitte nicht gleich verprügeln, falls ich mich irgendwie unklar ausdrücke! 😊
Ich habe mithilfe der tolle Anleitung unter Shelly Plug-S in Homematic einbinden (V2) - mit der Originalfirmware meinen Plug S in Homematic eingebunden, um damit die Leistung meines Balkonkraftwerks zu überwachen. Ich habe mich daran entlang gehangelt und fast alles zum Laufen bekommen. Allerdings funktioniert eine für mich wichtige Sache nicht, und das ist leider genau das Auslesen der aktuellen Leistung aus dem Shelly und das Schreiben in die Systemvariable. Ich kann den Plug S problemlos in HM an- und ausschalten; wenn ich das in der Shelly-Oberfläche tue, bekommt die HM davon auch mit, und auch der Online-Status wird auch korrekt in die Systemvariable geschrieben/aktualisiert. Nur die Leistung steht dauerhaft auf 0.00 Watt. Unabhängig davon, ob Strom fließt oder nicht. Das Script sieht bei mir folgendermaßen aus:
Code
Alles anzeigen! Skript V2.2.3 zur Einbindung Shelly PlugS mit Originalfirmware (c) 2021-2022 by 66er (alias Stefan K.) ! Alle Rechte vorbehalten! ! Publiziert und Updates auf https://shelly-forum.com/forum/index.php?board/145-homematic/ ! entwickelt und getestet auf PlugS-Firmware 1.11.8 ! jede Funktion optional aktivierbar, automatische Homematic-SV-Erstellung, Onlinestatus-Prüfung optional integriert ! Versionsdatum: 09.07.2022 ! NEU: Systemvariablen werden autom. dem CUxD-Schalter-Kanal zugeordnet ! BITTE BEACHTEN: ! Dieses Skript legt ggf. selbstständig zusätzliche Systemvariablen auf Deiner Homematic-Zentrale an! ! Das vermeidet Inkonsistenzen und eine temporäre Blockade der CCU durch das Skript. ! Ausserdem erspart es Dir das manuelle Anlegen benötigter Systemvariablen. ! Wer das nicht möchte, kann dieses Skript leider nicht nutzen! ! Die Nutzung des Skriptes erfolgt auf eigenes Risiko. ! Aus der Nutzung entsteht kein Rechtsanspruch auf Suppport oder Fehlerbeseitigung durch den Autor. ! Der Autor haftet nicht für eventuelle Folgen der Nutzung auf der Homematic-Zentrale des Nutzers. ! Das Skript ist ausführlich getestet und sollte problemlos funktionieren. ! Bezeichnung: AP BKW (kann angepasst werden, dient nur zur Orientierung) ! **** SETUP ******** SETUP ******** SETUP ******** SETUP *** ! ACHTUNG: Beim Anpassen der Adressen keine "" löschen! ! Setup Shelly PlugS var shplip = "192.168.0.27" ; ! IP des Shelly PlugS anpassen var shplname = "PlugS_BKW" ; ! Name des Shelly PlugS anpassen (daraus werden ggf. automatisch weitere Variablennamen erzeugt var shplrl = "N" ; ! Ist Restrict Login im Shelly aktiv, dann auf "J" setzen var shplbn = "DeinBenutzername" ; ! Ist Restrict login auf J, dann Benutzername anpassen var shplpw = "DeinPasswort" ; ! Ist Restrict login auf J, dann Passwort anpassen, keine Sonderzeichen ! Setup der CUxD-GERÄTE var execshpl = "CUxD.System.Exec:1" ; ! Adresse und Kanal des CUxD-Exec-Device angeben var shplcuxd = "CUX4000004:1" ; ! Adresse und Kanal des CUxD-Device für den Shelly PlugS anpassen ! Setup Online-Status var shplonl = "J" ; ! Variable für Onlinezustandsüberwachung, falls nicht gewünscht, auf "N" setzen"" ! Setup Aktualisierungsumfang var shplstat = "J" ; ! Status EIN oder AUS wird durch das Skript aktualisiert, wenn nicht gewünscht auf "N" setzen var shplvba = "J" ; ! aktuelle Verbrauchsanzeige, wenn nicht gewünscht auf "N" setzen !****ENDE SETUP ********ENDE SETUP ********ENDE SETUP ****** !*****Ab hier NICHTS MEHR ÄNDERN *************************** ! Variable für Onlinestatus prüfen,ggf.anlegen if (shplonl == "J") { var shplonln = shplname + "_Online-Status" ; ! WriteLine(shplonln) ; string sName= ""#shplonln#""; ! Onlinestatus if (!dom.GetObject (ID_SYSTEM_VARIABLES).Get (sName)) { object svObj = dom.CreateObject(OT_VARDP,sName); svObj.DPInfo("autom. angelegt durch Skript Shelly PlugS"); svObj.ValueUnit(""); dom.GetObject (ID_SYSTEM_VARIABLES).Add(svObj); svObj.ValueType(ivtBinary); svObj.ValueSubType(istBool); svObj.ValueName0("Offline"); svObj.ValueName1("Online"); svObj.State (true);!SCNR = SHP22366R dom.RTUpdate(0); object oChan= channels.Get (""#shplname#""); object oSys=dom.GetObject (ID_SYSTEM_VARIABLES).Get (""#shplonln#""); oChan.DPs().Add (oSys); oSys.Channel (oChan.ID() ); } ! Onlineabfrage und setzen des Status string stderr; string stdout; integer Status; system.Exec("ping -c 1 '"#shplip#"'", &stdout, &stderr); Status = stdout.Find("ms"); !WriteLine(Status); if (((shplonl ) == "J" ) && ((Status) == -1)) { WriteLine("Shelly1 ist offline"); dom.GetObject (""#shplonln#"").State(0); quit; ! Programmabbruch bei Shelly offline } if ((shplonl ) == "J" ) { dom.GetObject (""#shplonln#"").State(1); WriteLine("Shelly PlugS ist online"); } } !******************************************************************************* !***** Werte-Abfrage des PlugS ***** if (shplstat == "J"){ var url = "http://" + shplip + "/relay/0/status" ; !WriteLine(url); if (shplrl == "J") { var url = "http://" + shplbn + ":" + shplpw + "@" +shplip + "/relay/0/status" ; !WriteLine(url); } dom.GetObject(""#execshpl#".CMD_SETS").State("wget -q -O - '"#url#"'"); dom.GetObject(""#execshpl#".CMD_QUERY_RET").State(1); string Antwort = dom.GetObject(""#execshpl#".CMD_RETS").State(); dom.GetObject(""#execshpl#".CMD_SETS").State("0"); !WriteLine(Antwort); string word = "ison:"; integer word_laenge = word.Length(); integer word_position = Antwort.Find(word); string daten = Antwort.Substr((word_position + word_laenge +4), 5); integer word_position = daten.Find(word); daten = daten.Substr(0, (word_position -3)); !WriteLine(daten); var zustand = dom.GetObject(""#shplcuxd#".STATE").State(); !WriteLine(zustand); if (daten == "true,") {dom.GetObject(""#shplcuxd#".SET_STATE").State(1); !WriteLine("PlugS ist eingeschaltet"); } if (daten == "false") { dom.GetObject(""#shplcuxd#".SET_STATE").State(0); !WriteLine("PlugS ist aus"); } } !************************************************************************* ! Leistung if (shplvba == "J") { !Variable prüfen, ggf. anlegen string shplvban; shplvban = shplname + "_Leistung" ; string sName= ""#shplvban#""; if (!dom.GetObject (ID_SYSTEM_VARIABLES).Get (sName)) { object svObj = dom.CreateObject(OT_VARDP,sName); svObj.DPInfo("autom. angelegt durch Skript Shelly PlugS"); svObj.ValueUnit("W"); dom.GetObject (ID_SYSTEM_VARIABLES).Add(svObj); svObj.ValueType(ivtFloat); svObj.ValueSubType(istGeneric); svObj.ValueMin(0); svObj.ValueMax(3500); svObj.State (0);!SCNR = SHP22366R dom.RTUpdate(0); object oChan= channels.Get (""#shplname#""); object oSys=dom.GetObject (ID_SYSTEM_VARIABLES).Get (""#shplvban#""); oChan.DPs().Add (oSys); oSys.Channel (oChan.ID() ); } var url2 = "http://" + shplip + "/meter/0?status" ; !WriteLine(url2); if (shplrl == "J") { var url2 = "http://" + shplbn + ":" + shplpw + "@" +shplip + "/meter/0?status" ; WriteLine(url2); } dom.GetObject(""#execshpl#".CMD_SETS").State("wget -q -O - '"#url2#"'"); dom.GetObject(""#execshpl#".CMD_QUERY_RET").State(1); string Antwort = dom.GetObject(""#execshpl#".CMD_RETS").State(); dom.GetObject(""#execshpl#".CMD_SETS").State("0"); !WriteLine(Antwort); string t; t = Antwort; !WriteLine(t); string s; foreach (s,t.Split (",")) { if (s.LTrim ("{").StartsWith ('"power"')) { string p = (s.StrValueByIndex (":",1).RTrim ("}")); ! WriteLine(p); } } dom.GetObject(""#shplvban#"").State(p); } WriteLine("Skript beendet !"); !Ende Skript
Das Script selbst triggere ich mit dem Homematic internen Zeitmodul auf minütliche Ausführung. Das klappt auch, wie ich anhand des zu jeder vollen Minute stattfindenden Aktualisierungintervall beim Onlinestatus. Nur die Leistung wird nicht verändert (auch nicht der Zeitstempel). Woran könnte das liegen?
Wenn ihr noch etwas benötigt, liefere ich das gern
Danke schonmal vorab und freundliche Grüße
Andreas