Beiträge von JoloXD

    Meiner war auch von Amazon, naja leider hat das mit dem Ground nicht lange gehalten, er hat sich wieder zurückgesetzt und zu allem Überfluss war er auch der Meinung die Cloud Verbindung dauerhaft abzuschalten, nach dem neu einbinden über die App. Ich wende mich jetzt an den Support.

    Es freut mich das ich dir helfen konnte.

    • Man könnte eine isOnline ? Abfrage einbauen welche die HTTP-Requests pausiert sobald sagen wir google.com nicht mehr von deinem Shelly angepingt werden kann.
    • Man könnte die Anzahl der Timer, die von dem Skript verwendet werden, reduzieren, indem man den Timer, der für das Absetzen der HTTP-Anfrage verwendet wird, entfernt und stattdessen die HTTP-Anfrage direkt in der runLoop()-Funktion aufruft.
    • Oder eine andere Möglichkeit wäre, die Anzahl der parallel ausstehenden HTTP-Anfragen zu begrenzen, indem man eine Art Warteschlange implementiert. Dies könnte man beispielsweise erreichen, indem man die HTTP-Anfragen in einem Array speichert und dann eine Schleife über das Array implementiert, die nur eine begrenzte Anzahl von Anfragen pro Durchlauf bearbeitet. Das würde verhindern, dass jemals zu viele Anfragen gleichzeitig ausstehen und das Skript abbrechen lassen könnten.

    Das Problem liegt also wahrscheinlich an der Shelly 5er Grenze oder an zu vielen offenen HTTP- Anfragen.

    Die 3 Vorschläge wären auch noch möglich, ich denke vor allem eine Warteschlange könnte dein Skript wesentlich verbessern.

    Ich habe bei mir 2 Motion (einen Alten und einen Neuen) permanent mit einem Netzteil verbunden.

    Ich habe 4 TVR in Einsatz. Einer davon saugt seinen Akku regelmäßig in 2 Monaten leer. Bei dem überlege ich auch gerade ihn permanent zu versorgen.

    Danke, ironfly das war sehr hilfreich.

    Mein Anliegen habe ich ebenfalls direkt dem Shelly Support mitgeteilt, die Antwort darauf lautete:

    Dear XY,

    Thank you for contacting us!

    Nothing to worry about, the devices can't get damaged when they're powered only by USB.

    Best use case is to charge them when the battery runs out.

    Kind regards,

    Shelly Support Team

    Vorerst werde ich als Test, 1x TRV und 2x Motion kaufen und alle dauerhaft über ein Netzteil versorgen.

    Vielen dank für eure Hilfe.

    Also gibt es keine Intelligente Lade Logik ?

    Es scheint, dass mein Nuki Schloss eine intelligente Lade-Logik hat, die dafür sorgt, dass der Akku nicht überladen wird. Ich betreibe das Schloss auch dauerhaft am Netzteil angeschlossen und habe beobachtet, dass der Akku erst ab 60% aufgeladen wird und dann nur bis 90%. was mit ermöglicht, das Schloss immer angeschlossen zu lassen, ohne dass der Akku überladen wird.

    In Bezug auf die Shelly Geräte bin ich mir nicht sicher, deswegen fragte ich ja wie sich die Geräte verhalten und ob sie mit einem dauerhaften Anschluss zurechtkommen würden. Die Möglichkeit, sie dauerhaft eingesteckt zu lassen, ohne viel Aufwand und trotzdem versteckt zu halten, ist bei mir gegeben warum sollte ich diese dann nicht auch nutzen.

    Es geht mir nicht darum zu diskutieren ob das nun nötig ist oder nicht, wenn ich mir die Geräte zulege dann wäre an den vorgesehen Standort auch schon ein USB C Anschluss vorhanden, deswegen würde ich diesen auch nutzen, vorausgesetzt das führt nicht zu einem Überladen und somit zu einem Brand.

    Es könnte sein das du du merhfach RPC-Calls oder Timer an den Shelly schickst, zum Beispiel um seinen Status zu überprüfen und ihn gegebenenfalls umzuschalten. Dadurch erreichst du die maximale Anzahl von 5 RPC-Calls pro Skript und das Skript funktioniert nicht mehr. Um das Skript zu verbessern und die maximale Anzahl von RPC-Calls zu vermeiden, verwende den Shelly Status Handler für den Status des Shelly-Switches.

    Alternativ fällt mir noch folgendes ein:

    • Man könnte den Timeout für den HTTP-Request erhöhen, damit das Skript nicht so schnell abbricht, wenn die Request peding sind.
    • Man könnte eine isOnline ? Abfrage einbauen welche die HTTP-Requests pausiert sobald sagen wir google.com nicht mehr von deinem Shelly angepingt werden kann.
    • Man könnte auch das Intervall für den Timer noch weiter erhöhen, damit weniger HTTP-Anfragen abgesetzt werden.
    • Man könnte die Anzahl der Timer, die von dem Skript verwendet werden, reduzieren, indem man den Timer, der für das Absetzen der HTTP-Anfrage verwendet wird, entfernt und stattdessen die HTTP-Anfrage direkt in der runLoop()-Funktion aufruft.
    • Oder eine andere Möglichkeit wäre, die Anzahl der parallel ausstehenden HTTP-Anfragen zu begrenzen, indem man eine Art Warteschlange implementiert. Dies könnte man beispielsweise erreichen, indem man die HTTP-Anfragen in einem Array speichert und dann eine Schleife über das Array implementiert, die nur eine begrenzte Anzahl von Anfragen pro Durchlauf bearbeitet. Das würde verhindern, dass jemals zu viele Anfragen gleichzeitig ausstehen und das Skript abbrechen lassen könnten.

    Das Problem liegt also wahrscheinlich an der Shelly 5er Grenze oder an zu vielen offenen HTTP- Anfragen.

    Versuch mal das:

    In Zeile 48 und 68 waren Syntaxfehler beim print und du solltest auch sicherstellen, dass die Variable Verbraucher_Power in der Bedingung in Zeile 69 richtig referenziert wird.