Beiträge von SeRef

VPN/Proxy erkannt

Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.

    Das könnte an einem Neustart des Shelly liegen. Dabei wird der interne Zähler genullt, wohingegen in der Cloud weiter addiert wird.

    Das ließe sich kontrollieren. Durch Aufruf http://192.168.178.77/rpc/Shelly.GetStatus in einem Browser findest du hinter aenergy:total den Verbrauch in Wattminuten. Diesen durch 60.000 teilen, um ihn in kWh umzurechnen. Der berechnete Wert sollte zu dem Wert in der CCU identisch sein.

    Zudem gibt es noch die Uptime in Sekunden. Die gibt die Laufzeit seit dem letzten Start an. Das wäre dann auch der Zeitraum, den du mit der Cloud vergleichen kannst.

    Um das Nullen beim Neustart abzufangen, müsste das Skript noch erweitert werden.

    Respekt für die schnelle Umsetzung

    Danke :)

    Ich habe mal versucht, mit dem Skript für den Dimmer2 einen 1PM (Gen1, nicht Plus) auszulesen. Dort funktioniert es ebenfalls. Es kann also sein, dass es noch bei weiteren Shellys der Gen1 funktioniert. Einfach mal Probieren, kann nichts kaputtgehen. ;)

    Bei den Shellys der Gen2 gäbe es auch die Möglichkeit, auf die zyklische Abfrage der Werte Leistung und Arbeit zu verzichten. Bei denen kann man per Skript die Werte bei Änderung an die CCU senden und in eine Variable schreiben lassen.

    Versuch bitte mal.

    Die Variable erstellen und im Skript anpassen nicht vergessen!

    Ich schaue mal, ob ich das Skript anpassen kann.

    Mach' Dir keine unnötige Arbeit. Er hat ja inzwischen selbst das Richtige gepostet! (Beitrag 7) ;)


    Naja, nun doch :) ;)

    Viel Erfolg!


    Edit: Fast vergessen. Dieses Skript sollte zu keinem Blockieren der CCU führen. Kannst du ohne Abfrage, ob Online im Programm verwenden.

    ... und wenn's ganz ohne Schnickedöns sein darf:

    Ein

    http://<IPCCU>/x.exe?y=dom.GetObject("<Kanalname>").State(1)

    Aus

    http://<IPCCU>/x.exe?y=dom.GetObject("<Kanalname>").State(0)

    IP der CCU und den zu schaltenden Kanalnamen eintragen. Ist ein Leerzeichen im Namen, muss dieses durch %20 ersetzt werden.

    Wenn du das "!" in Zeile 23 und/oder 25 entfernt hast, solltest du eigentlich den Antwortstring des Shelly angezeigt bekommen, der scheint bei dir aber nicht zu kommt.

    Es handelt sich um einen 1PM und nicht um einen Plus1PM?

    Die IP-Adresse des Shelly passt?

    Wenn beides Ja, dann stelle bitte mal das Skript ein, mit dem du den Onlinestatus bzw. die Leistung abfragst.

    Welche Variante der Aktualisierung würdest Du empfehlen?

    Wenn in einem anderen Skript schon überprüft wird, ob der Shelly online ist und in einer Variable gespeichert wird (wovon ich laut Screenshot ausgehe) diese im Programm als Bedingung hinzufügen (Wenn Online dann).

    Oder das Skript in das Skript, in dem der Onliestatus geprüft wird, mit einfließen lassen.

    Bekommst du mittlerweile eine Rückmeldung unter Skript testen?

    Hallo LeoHansen,

    Ich bekomme leider auch keine Rückmeldung oder einen Fehler, sobald ich das Skript teste.

    Im Skript sind alle Zeilen mit WriteLine auskommentiert. Um bei Skript testen eine Ausgabe zu bekommen, müssen in den Zeilen mit WriteLine die "!" am Zeilenanfang entfernt werden.

    Woran könnte es liegen?

    Im Skript schreibst du in die Variable "Waschmaschine_Verbrauch". Existiert diese überhaupt? Im Screenshot heißt eine Variable "Shelly_Verbrauch".


    Gruß

    SeRef


    Edit: So wie du das Skript im Programm verwendest, läufst du Gefahr, dass die CCU bei nicht Erreichbarkeit des Shelly (Offline) bei jedem Aufruf für eine gewisse Zeit blockiert wird und keine anderen Programme ausführt. Die Zeit ist unter anderem davon abhängig, was im verwendetem CuXD Kanal unter EXEC_TIMEOUT eingetragen ist.

    Das mit dem verkehrt herum anschließen ist weder nötig noch sinnvoll. Macht aber in der Anzeige normal keinen Unterschied. Der merkt es nicht, in welche Richtung der Strom fließt.

    Sorry, aber es macht einen Unterschied. Er erkennt die Richtung.


    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Kann es sein, dass du keinen hast und einfach mal vermutet hast?


    Die Genauigkeit lässt auch bei mir zu wünschen übrig. Leistung und Arbeit werden bei mir unabhängig von der Firmwareversion ca. 8 bis 9% zu hoch angegeben.

    Hallo Gavor,

    Hatte in einer Anleitung gelesen, dass das geht.

    Das geht auch. Allerdings reicht es nicht, einfach die Adresse des Datenpunktes durch den Namen zu ersetzen. Korrekt wäre

    http://User:Passwort@192.168.178.8:8181/cuxd.exe?ret=dom.GetObject("Shelly1-Stereo").DPByHssDP("STATE").State(1)

    Dann geht es auch über den Namen.


    Damit die Änderung über eine andere Schaltquelle als über die CCU auch angezeigt werden, versuche es unter Output switched ON url bitte mal mit

    http://User:Passwort@192.168.178.8:8181/cuxd.exe?ret=dom.GetObject("Shelly1-Stereo").DPByHssDP("SET_STATE").State(1)

    bzw. unter Output switched Off url mit

    http://User:Passwort@192.168.178.8:8181/cuxd.exe?ret=dom.GetObject("Shelly1-Stereo").DPByHssDP("SET_STATE").State(0)


    Viel Erfolg


    Gruß

    SeRef