das Problem hatte ich auch schon, wartete auf ein Firmware Update, doch das half auch nichts. Nur die Spannung am Gerät für 10sec. wegnehmen und wieder einschalten war für mich nicht die Lösung. Ich habe das Gerät getauscht und als Garantiefall eingesant. Bislang ist es nur bei diesem einen Getät aufgetreten, warum weiss ich nicht, habe anstandslos einen Ersatz bekommen.
Beiträge von Anlumet
-
-
Hallo Buzz,
mir ist das ganze nicht klar warum du das Licht nicht ausschalten willst wenn der Türkontakt das Licht einschaltet, oder willst du solange die Türe offen ist dass das Licht nicht ausschaltet?
So oder so brauchst du dazu kein Script, du kannst mehrere Szenen machen, eine für die Lichtschalter, eine Szene für den Türkontakt und so weiter, mit den Szenen kannst du auch die Zeiten vorgeben ob und wann das Licht wieder abgeschalten wird. Manchmal ist es besser nicht zu komplizierte Szenen zu machen sondern mehrere, ist später einfacher das ganze nachzuvollziehen. In deinem Fall würde ich sogar das Auschalten auch über eine Szene machen oder zwei, eine für die Lichttaster und eine für die Türe. Du darfst dann natürlich im Shelly selbst keine automatische Ausschaltung setzen.
Ich denke du kriegst das hin - das Jahr ist ja noch jung, Gruss Anlumet
-
Ich habe bei Licht Steuerung ein Shelly Mini der neuesten Generation, diesen im Abgetrennten Modus, weil HomeAssistant das Licht anhand der Uhrzeit und Helligkeit ausführt. Nun ist es so, wenn das HomeAssistant nicht erreichbar ist durch einen Router Ausfall oder HomeAssistant selber ist abgestürzt in meinem Fall ein Rasb. Pi 4 dann geht der Drucktaster ins leere. Um dies entgegenzuwirken habe ich ein Script geschrieben welches beim Ausfall vom HomeAssistant oder dem Netzwerk automatisch in den Toggle Modus schaltet, so dass ich das Licht trozdem steuern kann, und wenn wieder alles Online ist wieder zurück in den Abgetrennten Modus. Der Code ist getestet und funktioniert.
Natürlich muss im Script noch die IP Adresse vom HomeAssistant oder einer anderen Smarten Automatisierung angegeben werden.
Anbei ein Bild das aufzeigt in welchem Modi das Script umschaltet.
Code
Alles anzeigen// Funktion zum Setzen des "Detached Modus" für Relais, wenn es nicht bereits der Fall ist function activateDetachedMode() { print("Versuche, den Detached Modus zu aktivieren..."); // Abfrage des aktuellen Modus des Shelly Shelly.call("Switch.GetConfig", { "id": 0 }, function(res, error) { if (error) { print("Fehler beim Abfragen des Modus: ", JSON.stringify(error)); } else { // Überprüfen, ob die Antwort die richtige Struktur hat if (res && res.in_mode !== undefined) { // Wenn der aktuelle Modus nicht "detached" ist, dann den Modus wechseln if (res.in_mode !== "detached") { print("Der Shelly ist aktuell im Modus: ", res.in_mode); // Verzögerung von 1 Sekunde, um sicherzustellen, dass Home Assistant stabil läuft Timer.set(1000, false, function () { Shelly.call("Switch.SetConfig", { "id": 0, "config": { "in_mode": "detached", // Setzt den Modus auf "detached" "swap_inputs": false } }, function (res, error) { if (error) { print("Fehler beim Wechseln in den Detached Modus: ", JSON.stringify(error)); } else { print("Detached Modus für Relais erfolgreich aktiviert."); } }); }); } else { print("Der Shelly ist bereits im Detached Modus, keine Änderung erforderlich."); } } else { print("Fehler: Ungültige Antwort von Shelly, konnte den aktuellen Modus nicht abfragen."); print("Antwort von Shelly: ", JSON.stringify(res)); } } }); } // Funktion zum Setzen des "Follow Modus" für Relais, wenn es nicht bereits der Fall ist function activateFollowMode() { print("Versuche, den Follow Modus zu aktivieren..."); // Abfrage des aktuellen Modus des Shelly Shelly.call("Switch.GetConfig", { "id": 0 }, function(res, error) { if (error) { print("Fehler beim Abfragen des Modus: ", JSON.stringify(error)); } else { // Überprüfen, ob die Antwort die richtige Struktur hat if (res && res.in_mode !== undefined) { // Wenn der aktuelle Modus nicht "follow" ist, dann den Modus wechseln if (res.in_mode !== "follow") { print("Der Shelly ist aktuell im Modus: ", res.in_mode); // Verzögerung von 1 Sekunde, um sicherzustellen, dass Home Assistant stabil läuft Timer.set(1000, false, function () { Shelly.call("Switch.SetConfig", { "id": 0, "config": { "in_mode": "follow", // Setzt den Relaismodus auf Follow "in_type": "button" // Setzt den Eingangstyp auf Button (für Follow) } }, function (res, error) { if (error) { print("Fehler beim Wechseln in den Follow Modus: ", JSON.stringify(error)); } else { print("Follow Modus für Relais erfolgreich aktiviert."); } }); }); } else { print("Der Shelly ist bereits im Follow Modus, keine Änderung erforderlich."); } } else { print("Fehler: Ungültige Antwort von Shelly, konnte den aktuellen Modus nicht abfragen."); print("Antwort von Shelly: ", JSON.stringify(res)); } } }); } // Funktion zum Überprüfen, ob Home Assistant wieder online ist function checkHomeAssistantStatus() { print("Überprüfe, ob Home Assistant erreichbar ist..."); Shelly.call("http.get", { url: "http://192.168.179.150:8123" }, function(response, error) { if (error) { print("Home Assistant ist derzeit nicht erreichbar."); // Wenn Home Assistant nicht erreichbar ist, Wechsel in den Detached Modus activateDetachedMode(); } else { print("Home Assistant ist online."); // Wenn Home Assistant wieder online ist, Wechsel in den Follow Modus activateFollowMode(); } // Setze die Überprüfung nach 10 Sekunden fort Timer.set(10000, false, checkHomeAssistantStatus); }); } // Start der Überprüfung, ob Home Assistant online ist checkHomeAssistantStatus();
-
Ich habe bei den Rolladen Steuerung einen Shelly Plus 2 PM, diesen im Abgetrennten Modus, weil HomeAssistant die Positionierung anhand der Drucktastenbefehle ausführt. Nun ist es so, wenn das HomeAssistant nicht erreichbar ist durch einen Router Ausfall oder HomeAssistant selber ist abgestürzt in meinem Fall ein Rasb. Pi 4 dann gehen die Drucktaster ins leere. Um dies entgegenzuwirken habe ich ein Script geschrieben welches beim Ausfall vom HomeAssistant oder dem Netzwerk automatisch in den Dualen Modus schaltet, so dass ich die Rolladen trozdem steuern kann, und wenn wieder alle Online ist wieder zurück in den Abgetrennten Modus. Der Code ist getestet und funktioniert.
Natürlich muss im Script noch die IP Adresse vom HomeAssistant oder einer anderen Smarten Automatisierung angegeben werden.
Ich denke es müsste auch mit anderen Shellys funktionieren solange diese Scripte beherschen.
Falls ihr nur einen Einfachen Shelly mit einem Relais habt müsst ihr im Script "dual" durch "single" , "follow" oder "toggle" ersetzten, das habe ich aber nicht getestet darum nur mit vorbehalt.
Anleitung gibt es hier von Shelly: https://shelly-api-docs.shelly.cloud/gen2/Component…/#configuration
Viel Spass damit - Anlumet
Code
Alles anzeigen// Funktion zum Setzen des "abgetrennten Modus" für Relais, wenn es nicht bereits der Fall ist function activateDetachedMode() { print("Versuche, den abgetrennten Modus zu aktivieren..."); // Abfrage des aktuellen Modus des Shelly Shelly.call("Cover.GetConfig", { "id": 0 }, function(res, error) { if (error) { print("Fehler beim Abfragen des Modus: ", JSON.stringify(error)); } else { // Überprüfen, ob die Antwort die richtige Struktur hat if (res && res.in_mode !== undefined) { // Wenn der aktuelle Modus nicht "detached" ist, dann den Modus wechseln if (res.in_mode !== "detached") { print("Der Shelly ist aktuell im Modus: ", res.in_mode); // Verzögerung von 1 Sekunde, um sicherzustellen, dass Home Assistant stabil läuft Timer.set(1000, false, function () { Shelly.call("Cover.SetConfig", { "id": 0, "config": { "in_mode": "detached", "swap_inputs": false } }, function (res, error) { if (error) { print("Fehler beim Wechseln in den abgetrennten Modus: ", JSON.stringify(error)); } else { print("Abgetrennter Modus für Relais erfolgreich aktiviert."); } }); }); } else { print("Der Shelly ist bereits im abgetrennten Modus, keine Änderung erforderlich."); } } else { print("Fehler: Ungültige Antwort von Shelly, konnte den aktuellen Modus nicht abfragen."); print("Antwort von Shelly: ", JSON.stringify(res)); } } }); } // Funktion zum Wechseln in den "Dualen Modus", wenn es nicht bereits der Fall ist function switchBackToDualMode() { print("Wechsel zurück in den Dualen Modus..."); // Abfrage des aktuellen Modus des Shelly Shelly.call("Cover.GetConfig", { "id": 0 }, function(res, error) { if (error) { print("Fehler beim Abfragen des Modus: ", JSON.stringify(error)); } else { // Überprüfen, ob die Antwort die richtige Struktur hat if (res && res.in_mode !== undefined) { // Wenn der aktuelle Modus nicht "dual" ist, dann den Modus wechseln if (res.in_mode !== "dual") { print("Der Shelly ist aktuell im Modus: ", res.in_mode); // Verzögerung von 1 Sekunde, um sicherzustellen, dass Home Assistant stabil läuft Timer.set(1000, false, function () { Shelly.call("Cover.SetConfig", { "id": 0, "config": { "in_mode": "dual", "swap_inputs": false } }, function (res, error) { if (error) { print("Fehler beim Wechseln in den Dualen Modus: ", JSON.stringify(error)); } else { print("Dualer Modus für Relais erfolgreich aktiviert."); } }); }); } else { print("Der Shelly ist bereits im Dualen Modus, keine Änderung erforderlich."); } } else { print("Fehler: Ungültige Antwort von Shelly, konnte den aktuellen Modus nicht abfragen."); print("Antwort von Shelly: ", JSON.stringify(res)); } } }); } // Funktion zum Überprüfen, ob Home Assistant wieder online ist function checkHomeAssistantStatus() { print("Überprüfe, ob Home Assistant erreichbar ist..."); Shelly.call("http.get", { url: "http://192.168.179.150:8123" }, function(response, error) { if (error) { print("Home Assistant ist derzeit nicht erreichbar."); // Wenn Home Assistant nicht erreichbar ist, Wechsel in den Dualen Modus switchBackToDualMode(); } else { print("Home Assistant ist online."); // Wenn Home Assistant wieder online ist, den abgetrennten Modus aktivieren activateDetachedMode(); } // Setze die Überprüfung nach 10 Sekunden fort Timer.set(10000, false, checkHomeAssistantStatus); }); } // Start der Überprüfung, ob Home Assistant online ist checkHomeAssistantStatus();
-
schade finde ich dass der Shelly Motion 2 aus dem Sortiment genommen wurde, bei Shelly teilte mir dann mit dass ev. im Dezember ein Ersatzprodukt auf den Markt kommt. Der Grund für die Einstellung des Motion 2 sei dass der Chip Lieferant den verbauten Chip nicht mehr herstellt . . . . schade, war ein gutes kleines Teil!
-
Es gibt auch ältere Generationen von Shellys welche in HomeAssistant nicht gefunden werden, können aber einfach eigebunden werden, siehe folgender Artikel: https://www.home-assistant.io/integrations/shelly/
-
kann es sein dass sich das Teil nur Online Meldet wenn eine Temperaturänderung / Feuchtigkeitsänderung angekommen ist? Du müsstest die Aenderung auf 0.1°C stellen damit das Teil öfters aufwacht, und Dir die aktuellen Werte übergibt, in den Einstellungen . . .
-
Eine Lösung für nicht unbedingt besseren Empfang aber konstanteren empfang ist, die Shellys im Router (nicht im Shelly selbst) eine FIXE IP Adresse zu vergeben
Am besten stellst du Deinen Router folgendermassen ein:
*****************************************************************************************
# Subnetzmaske die 255.255.254.0. Dann hast du den Bereich
# 192.168.178.1 - 192.168.179.254 für deine Geräte. Das sind dann statt 254 IPs
# wie beim Standard-Fritzbox-Subnetz eben doppelt so viele.
*****************************************************************************************die IP Adresse 192.168.178.1 hängt natürlich von dem was du schon voreingestellt hast ab (könnte auch 192.168.192.1 sein oder ähnliches), wichtig ist die Subnetzmaske die 155.255.254.0 am Ende!
Den DHCP lässt du auf der 178.1 und hast dan bis 192.168.178.254 für Deine Geräte, jetzt nimmst du (Alle) Deine 6 Shellys welche einen schlechten Empfang haben und vergibst denen manuell eine IP Adresse im 179 er Bereich. Erstens hast du die bessere Ueberischt und zweitens hat der Shelly immer die gleiche Adresse. Die Aenderung kannst du auch bei Deiner bestehenden Konfiguration im Router machen. Der Vorteil ist, der DHCP sucht nicht immer ob die Geräte noch vorhanden sind sondern der Router spricht die geräte Fix an.
Wie gesagt, der Empfang, die Empfangsstärke in der Shelly APP ist immer noch "unbrauchbar" aber ich habe keine Probleme mehr die Shellys anzusprechen. Eine Alternative ist natürlich Repeater zu verbauen wenn das möglich ist.
-
Wenn du kein HomeAssistant hast kannst du das mit einer Scene in der Shelly APP machen Zeitbasiert oder mit der funktion "Getrennter Schalter" die Szene aktivieren und in der Szene die Position beim AB vorgeben.
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. -
Sendet Dein Stromanbieter, das EW ev. ein Rundsteuersignal? Falls ja, vorallem billig LED Lampen ohne Tiefpassfilter reagieren teils auf diese Signale. Einfach noch als weitere Anregung zur Lösungssuche.
-
Ich habe so etwas gemacht aber mit HomeAssistant, dort kannst du eine Automation nach dem Auslösen eine gewisse Zeit sperren, alle Shellys lassen sich problemlos einbinden, ich habe dies sogar noch mit dem Sonnenstand, bzw. mit dem LUX Wert eines Somfy Sensors verknüpft, und wenn die Meteo App bewölkt oder Regen angibt ist die Automation aus, ich kann die Automation jederzeit mit einem Helfer aktivieren oder halt nicht, kurz wenn du HomeAssistant hast brauchst du die Shelly APP nicht mehr wirklich und die Möglichkeiten sind riesig.
-
Etwas ganz einfaches welches Shelly und Split Klimageräte von Mitsubishi erkennt ist HomeAssistant, einfach ins Netzwerk einstecken und starten, erkennt alles was am Router hängt, Vernetzungen sind ganz einfach zu realisieren. Du kannst das ganze auf einen alten Rechner, einen Rasberry Pi 4 oder 5 laden, oder die fertige Green-Box kaufen, Anleitungen gibt es auf Youtube haufenweise, das wichtigste Add-On ist HACS alles andere ergibt sich von alleine.
-
ich gehe mal davon aus dass der Shelly noch Strom hat, der "Murphy" ist im Bezug darauf dass sich der RasbPi oder der Router verabschiedet haben und zur gleichen Zeit ein Sturm aufzieht und ich nicht zu Hause bin, ich habe das Script getestet es funktioniert
-
Ich habe einen Shelly Plus2PM im Rolladenmodus und steuere damit meine Markise über einen Rasberry Pi. Diese zweite Markise ist nicht direkt am Windsensor angeschlossen sondern bezieht das Signal über die HomeAssistant Automation welche auf dem RasbPi läuft.
Damit die Markiese bei einem allfälligen Ausfall des Rasberry Pi oder dem Router nicht zerstört wird, z.Bsp bei Sturm (wenn Murphy zuschlägt) habe ich ein Script gemacht welches alle 60 sec. abfragt ob die IP Adresse im internen Netzwerk vom HomeAssistant noch verfügbar ist, ist diese 5 Minuten lange nicht verfügbar fährt die Markise mit dem Script hoch..
Natürlich kann auch eine andere Adresse, eine internetadresse genommen werden.
Viel Spass - Anlumet