Hallo zusammen, seit dem 20.1.26 steht die neue Firmware 1.7.4 (stable) für Zigbee bereit. Hat jemand von euch schon mal getestet, ob inzwischen mehr Entitäten unter Zigbee zur Verfügung stehen?
Beiträge von GigabitPower
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.
-
-
Moin,
bei einem Elektro-Großhändler ist er schon gelistet. Die Verfügbarkeit wird mit 2-3 Wochen (im Zulauf) angegeben
-
Hallo,
@apreick: leider funktioniert es doch nicht so, wie gewünscht, denn die Action löst den timer sofort nach dem ersten "off" des Eingangs aus. Wellenbewegungen im Pool können damit nicht ignoriert werden.

Ich habe leider die Anforderung, dass die Aktion erst dann ausgelöst wird, wenn der Eingang permanent ohne Unterbrechung über eine Dauer von 300 Sekunden auf "off" steht.

Da hilft wahrscheinlich nur ein Javascript oder?

-
Hallo zusammen,
ich habe gerade vom Shelly Support die Nachricht erhalten (ich hatte ein Support Ticket zu dem Bug eröffnet), dass am 31.01. eine neue Firmware veröffentlicht wird, bei der dieses Problem nicht mehr auftritt.

-
Hallo zusammen,
nach weiteren Stunden der Recherche habe ich den Fehler gefunden.

Der Code war prinzipiell richtig, jedoch dürfen pro Script nicht mehr als 5 Timer gesetzt werden.
Ich habe das Ganze daher optimiert und komme jetzt mit 5 Timern aus. Außerdem habe ich jetzt für die Rückspüldauer 60 Sekunden angesetzt, was einigermaßen der Realität entspricht.
Anbei noch der jetzt funktionierende Code des Scripts.
VG Oliver
Code
Alles anzeigen// Relais anschalten, Pumpe wird damit ausgeschaltet damit der Wasserdruck für die Einleitung des Rückspülvorgangs auf Null gebracht wird Shelly.call("Switch.set", {'id': 0, 'on': true}); //Magnetventil soll angeschaltet werden, damit mit Hilfe von Druckluft das Rückspülventil in den Rückspülmodus geht function timerCode() { Shelly.call("Switch.set", {'id': 1, 'on': true}); }; Timer.set( /* zusätzlich 1 Sekunde warten bis der Druck wirklich auf Null abgebaut ist, hier gleich mit absolutem Zeitwert */ 1000, /* repeat? */ false, /* callback: Aufruf, Magnetventil anzuschalten */ timerCode ); // Magnetventil ist jetzt an -> Rückspülventil kann in den Rückspülmodus gehen // Relais soll ausgeschaltet werden, Pumpe wird damit angeschaltet // die Drehzahl mit einem weiteren Relais an OUT1 eines 2. Shelly Plus UNI für 55 Sekunden auf Maximum gesetzt // -> die Rückspülung erfolgt function timerCode2() { Shelly.call("Switch.set", {'id': 0, 'on': false}); Shelly.call("http.get", { url: 'http://192.168.177.175/relay/0?turn=on&timer=55'}); }; Timer.set( /* 3 Sekunden warten bis Rückspülventil sich im Rückspülungmodus befindet, zzgl. timerCode1*/ 4000, /* repeat? */ false, /* callback: Aufruf, Pumpe wieder anzuschalten */ timerCode2 );// Pumpe ist jetzt wieder an, Drehzahl auf Maximum //Relais soll angeschaltet werden, Pumpe wird damit nach dem Rückpülungvorgang vor der Rückspülventilumschaltung wieder ausgeschaltet function timerCode3() { Shelly.call("Switch.set", {'id': 0, 'on': true}); }; Timer.set( /* 60 Sekunden zzgl. timerCode 1+2*/ 64000, /* repeat? */ false, /* callback */ timerCode3 ); // Pumpe ist jetzt wieder aus //Magnetventil soll ausgeschaltet werden, damit das Rückspülventil über die Feder wieder in den Filtermodus geht function timerCode4() { Shelly.call("Switch.set", {'id': 1, 'on': false}); }; Timer.set( /* 3 Sekunden bis Wasserdruck abgebaut ist, zzgl. timerCode 1,2,3 */ 67000, /* repeat? */ false, /* callback */ timerCode4 );// Magnetventil ist jetzt wieder aus -> Filtermodus aktiv // Relais des remote Shelly Plus UNI wird wieder ausgeschaltet // die Drehzahl ist wieder auf normal, da der Timer des 2. Shelly Plus UNI für die maximale Drehzahl abgelaufen ist function timerCode5() { Shelly.call("Switch.set", {'id': 0, 'on': false}); }; Timer.set( /* 3 Sekunden bis Feder das Rückspülventil auf Filtermodus umgeschaltet hat, zzgl. timerCode 1,2,3,4*/ 70000, /* repeat? */ false, /* callback */ timerCode5 );// Pumpe ist wieder an -
Hallo zusammen,
der folgende Aufruf funktioniert am Anfang des Javascripts:
Shelly.call("http.get",{url: 'http://192.168.177.175/relay/0?turn=on'});
Leider funktioniert folgendes für mit einer Zeitverzögerung von 4 Sekunden nicht:
function timerCode12() {
Shelly.call("http.get",{url: 'http://192.168.177.175/relay/0?turn=on'});
};
Timer.set(
/* 3 Sekunden warten bis Rückspülventil auf Rückspülung geschaltet ist, zzgl. timerCode1*/ 4000,
/* repeat? */ false,
/* callback: Aufruf, Pumpe auf maximale Drehzahl zu schalten */ timerCode12
);// Pumpe ist jetzt auf voller Drehzahl
Als Fehler bekomme ich:
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Anbei nochmals die beiden Aufruf unten als Code. Was mache ich hier falsch? Bitte dringende um eine kleine Hilfe

Vielen Dank
Oli
Code
Alles anzeigen//was könnte an dem folgenden Code falsch sein?? function timerCode12() { Shelly.call("http.get",{url: 'http://192.168.177.175/relay/0?turn=on'}); }; Timer.set( /* 3 Sekunden warten bis Rückspülventil auf Rückspülung geschaltet ist, zzgl. timerCode1*/ 4000, /* repeat? */ false, /* callback: Aufruf, Pumpe auf maximale Drehzahl zu schalten */ timerCode12 );// Pumpe ist jetzt auf voller Drehzahl //Folgendes funktioniert, ist leider ohne Zeitverzögerung: Shelly.call("http.get",{url: 'http://192.168.177.175/relay/0?turn=on'}); -
Hallo zusammen,
ich habe es jetzt doch irgendwie geschafft, das Ganze als in Form eines Scripts umzusetzen (siehe Code unten). Leider suche ich verzweifelt nach der Funktion/ Aufruf für das Einschalten eines Ausgangs (z.B. OUT1) auf einem remote Shelly Plus UNI (IP Adresse z.B. 192.168.178.156).
Es wäre klasse, wenn mir hier jemand weiterhelfen könnte. Mit "Shelly.call (Switch.set"....) kann man nur lokale Ausgänge schalten.
Vielen Dank im voraus.
Viele Grüße Oli
Code
Alles anzeigen// Relais an, Pumpe wird damit ausgeschaltet Shelly.call("Switch.set", {'id': 0, 'on': true}); //Magnetventil soll angeschaltet werden damit Druckluft strömt und damit in den Rückspülmodus aktiviert geht function timerCode() { Shelly.call("Switch.set", {'id': 1, 'on': true}); }; Timer.set( /* 1 Sekunde warten bis der Druck abgebaut ist, hier gleich mit absolutem Zeitwert */ 1000, /* repeat? */ false, /* callback: Aufruf, Magnetventil anzuschalten */ timerCode ); // Magnetventil ist jetzt an -> Rückspülmodus aktiv // Relais soll ausgeschaletet werden, Pumpe wird damit angeschaltet, die Rückspülung erfolgt function timerCode2() { Shelly.call("Switch.set", {'id': 0, 'on': false}); }; Timer.set( /* 3 Sekunden warten bis Rückspülventil auf Rückspülung geschaltet ist, zzgl. timerCode1*/ 4000, /* repeat? */ false, /* callback: Aufruf, Pumpe wieder anzuschalten */ timerCode2 );// Pumpe ist jetzt wieder an //Relais soll angeschaltet werden, Pumpe wird damit nach dem Rückpülungvorgang vor der Rückspülventilumschaltung wieder ausgeschaltet function timerCode3() { Shelly.call("Switch.set", {'id': 0, 'on': true}); }; Timer.set( /* 5 Sekunden, wird in der Produktion auf 1 Minute gesetzt, zzgl. timerCode 1+2*/ 9000, /* repeat? */ false, /* callback */ timerCode3 ); // Pumpe ist jetzt wieder aus //Magnetventil soll ausgeschaltet werden, damit das Rückspülventil über die Feder wieder in den Filtermodus geht function timerCode4() { Shelly.call("Switch.set", {'id': 1, 'on': false}); }; Timer.set( /* 3 Sekunden bis Wasserdruck abgebaut ist, zzgl. timerCode 1,2,3 */ 12000, /* repeat? */ false, /* callback */ timerCode4 );// Magnetventil ist jetzt wieder aus -> Filtermodus aktiv // Pumpe soll nach Umschaltung in den Filtermodus wieder angeschaltet werden function timerCode5() { Shelly.call("Switch.set", {'id': 0, 'on': false}); }; Timer.set( /* 3 Sekunden bis Feder das Rückspülventil auf Filtermodus umgeschaltet hat, zzgl. timerCode 1,2,3,4*/ 15000, /* repeat? */ false, /* callback */ timerCode5 );// Pumpe ist wieder an -
Und, wie hier alles wissen 😎, habe ich fast keine Ahnung mit Script (2-3 abgeänderte)
Vielleicht wäre ein übergeordnetes System für dich besser geeignet, um unabhängig zu werden?
Wird ja auch nicht dein letztes Projekt sein 😎
ja, ein übergeordnetes System wie Home Assistant würde auch gehen, jedoch bin ich dann abhängig von der WLAN Verbindung. Ziel sollte es sein, dass der gesamte Vorgang innerhalb des einen Shelly Plus UNI gesteuert und kontrolliert wird.

Trotzdem vielen Dank für Deinen Beitrag

-
Hallo zusammen,
ich möchte mit meinem Shelly Plus UNI eine automatisierte Rückspülung für einen Pool konfigurieren. Dazu muss zuerst die laufende Pumpe über ein angezogenes Relais 1 (OUT1) ausgeschaltet werden, dann nach 2 Sekunden das Magnetventil für den Luftdruck des Rückspülventils per Relais 2-Anschaltung (OUT2) geöffnet werden, die Pumpe mit einer Verzögerung von 5 Sekunden wieder eingeschaltet werden und nach 25 Sekunden wieder ausgeschaltet werden. Nach einer weiteren Verzögerung von 2 Sekunden soll das Magnetventil wieder geschlossen werden (Relais ausgeschaltet). Nach einer weiteren Verzögerung von 5 Sekunden soll die Pumpe wieder eingeschaltet werden. Der ganze Vorgang soll freitags um 9:00 Uhr oder manuell über den digitalen Eingang IN1 ausgeführt werden.
Kann ein solche Ablauf durch lokale Aktionen umgesetzt werden? Da nur 5 Aktionen innerhalb einer konfigurierbaren "Aktion" im Shelly Menü zugelassen sind, wird es wahrscheinlich schwierig.
Daher nochmal der Ablauf in Stichworten:
1. Auslöser, freitags 9:00 Uhr oder digitaler Eingang IN1
2. Ausgang OUT1 anschalten (Pumpe aus)
3. Verzögerung von 2 Sekunden (Wartezeit bis Wasserdruck abgebaut ist)
4. Ausgang OUT2 anschalten (Magnetventil ein -> Luftdruck für Rückspülventil liegt an)
5. Verzögerung von 5 Sekunden (Dauer für Umschaltung des Rückspülventils)
6. Ausgang OUT1 ausschalten (Pumpe ein)
7. Verzögerung von 25 Sekunden (Dauer für die eigentliche Rückspülung)
8. Ausgang OUT1 anschalten (Pumpe aus)
9. Verzögerung von 2 Sekunden (Wartezeit bis Wasserdruck abgebaut ist)
10. Ausgang OUT2 ausschalten (Magnetventil aus -> Luftdrucksperre)
11. Verzögerung von 5 Sekunden (Wartezeit bis Feder das Rückspülventil zurückstellt)
12. Ausgang OUT 2 ausschalten (Pumpe an)
Wahrscheinlich wäre eine Script geeigneter, doch leider komme ich als Anfänger und fehlenden Javascript-Kenntnissen nach mehrstündiger Recherche nicht weiter.

Daher bin ich über jede Hilfe von Euch dankbar.

Viele Grüße
Oliver
-
-
Kann man ja lernen

Kannst Du mir bitte ein Link für den Einstieg in das Shelly Java nennen?

-
@Olsche: ja, das kann ich mir vorstellen und ich würde meine Anforderungen auch viel lieber ohne Cloud umsetzen. Leider kenne ich mich mit den Befehlen, Sprache, Funktionen der lokalen Aktionen nicht aus, denn meine Anforderung für die Ausführung einer automatisieren Rückspülung "relativ" komplex:
Dazu folgende Schritte:
1. Auslöser des nachfolgenden Ablaufs kann z.B. wöchentlich freitags um 9:00 Uhr oder per Taster am IN1 erfolgen
2. es folgen 2 parallele Aktionen a + b
a) OUT1 (Pumpe mit Wechselrelais) wird für 10 Sekunden auf "on" gestellt (führt dazu, dass die Pumpe gestoppt wird), danach für 30 Sekunden auf "off" (Pumpe an). Danach wieder 10 Sekunden auf "on" (Pumpe aus)
b) nach einer Wartezeit von 1 Sekunde soll OUT2 für 50 Sekunden auf "on" gestellt werden (Magnetventil für den Luftdruck des Rückspülventils wird geöffnet).
3. nachdem die 50 Sekunden der beiden Aktionen unter Schritt 2 erfolgt sind soll OUT1 wieder auf "off" (Pumpe an) gestellt werden
Vielleicht wäre auch ein Script die richtige Lösung dafür, leider kenne ich mich mit Java auch nicht aus.
Vielen Dank für deine Hilfe
VG Oliver
-
@Olsche: eigentlich möchte ich mehrere Szenen hintereinander für eine automatische Rückspülung beim Pool (Pumpe ausschalten, Magnetventil ein, Pumpe für x Sekunden einschalten, Magnetventil aus...) zeitgesteuert ausführen. Ergänzend zur Zeit habe ich als Oder Bedingung einen digitalen Eingang zum Auslösen der ersten Szene konfiguriert und bin dort schon gescheitert.
Daher habe ich eine ganz einfache Szene am definiert, die beim Schließend des Eingang IN1 des Plus UNI als Aktion das Schalten des OUT1 für 3 Sekunden bewirken soll. Egal, was ich als Bedingung nehmen, das Schalten von OUT1 oder auch OUT2 geht nicht
Das Gleiche habe ich bei meinem UNI mit Erfolg umsetzen können.
Interessant ist, dass ich den Eingang IN1 beim Plus UNI als Bedingung für das Schalten von OUT1 am UNI nehmen kann und es funktioniert. Umgekehrt (Bedingung beim Plus UNI oder beim UNI führt beim Schalten von OUT1 am Plus UNI nicht zum Erfolg).
Das Schalten des OUT1 am Plus UNI unter dem Menüpunkt "Aktionen" mit der Bedingung http://localhost/relay/0?turn=off&timer=5 funktioniert perfekt.
VG Oliver
-
Ja, die OUT habe ich auf detached/ getrennt gestellt. Wie geschrieben, ich habe die Probleme nur beim Plus UNI und nicht beim UNI.
VG
Oliver
-
Hallo zusammen,
ich habe mit der Firmware /1.1.0-g34b5d4f auf meinen Plus UNI das Problem, dass die Ausgänge OUT1 und OUT2 nicht automatisiert in einer Szene geschaltet werden können. Die digitalen Eingänge 1 und 2 funktionieren und können auf meinem UNI (alte Generation) die Ausgänge OUT1 und OUT2 in einer erstellten Szene schalten.
VG Oli
-
Vielen Dank für die schnelle Antwort und Unterstützung
. Ich konnte die Einstellungen konfigurieren und es FUNKTIONIERT perfekt
. Ich bin total begeistert


Herzlichen Dank an beide


-
Hallo,
ich bin auf der Suche nach einem Script für die automatische Nachspeisung eines Pools. Der Schwimmer schließt bei normalem Wasserstand die beiden Pole, wenn eine bestimme Wasserlinie unterschritten wird öffnet er den elektrischen Kreis. Um eine ungewollte Wellenbewegung abzufangen, muss diese Line mindestens 5 min unterschritten werden. Dann erst darf das Magnetventil für die Wassernachspeisung für eine bestimmte Zeit, z.B. 20 min, geöffnet werden.
Konkret möchte ich dafür meinen neuen Shelly Plus UNI einsetzen. Den Wasserschimmer habe ich am digitalen Eingang 1 des Shelly Plus UNI eingeschlossen, das Magnetventil über ein zusätzliches Relais an OUT1 des Shelly Plus UNI.
Die Anforderung bzgl. der Mindestdauer von 5 min ohne Zeitunterbrechung, nach der der Status "Eingang aus" (digitaler Eingang 1 = IN1 bildet mit GND keine elektrische Verbindung) vorhanden ist, lässt sich nicht über die Shelly Oberfläche als Bedingung definieren. Das der Schalter 1 (OUT1) dann nach dem Aktivieren nach 20 min wieder unterbrochen ist, lässt sich über die Shelly Oberfläche konfigurieren.
Daher benötige ich ein Script, dass folgende Aufgaben erledigt:
1. der digitale Eingang 1 (IN1) ist im Normalzustand (Pool hat genug Wasser) mit GND elektrisch über den Schwimmschalter geschlossen
2. sofern der digitiale Eingang 1 (IN1) mindestens 5 Minuten ohne Unterbrechung von GND elektrisch über den Schwimmschalter unterbrochen wird soll der Ausgang OUT1 schalten, d.h. beiden Pole für 20 Minuten einen elektrischen Durchgang schalten
Ich bin über jede Hilfe dankbar.