Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      adarof @Pittini last edited by

      @pittini Dankeschön. D.h. es wird auch für die mit BatterieSpannung_30 usw per Function "markierten" Geräte ein DeadCheck durchgeführt, selbst wenn die DeadCheck Function nicth explizit gesetzt wurde? Bei mir sind das Beispielsweise Tradfri Schalter, die ich überwachen möchte. Die werden Tagelang nicht gedrückt (letzte Aktuallisierung habe ich gerade am 15.5. ... da hab ich wohl das letzte mal das Garagentor auf gemacht ...) und damit nicht aktuallisiert - das ist völlig OK für mich, auch wenn die Batteriespannung nur alle paar Tage überprüft wird.
      Andere Geräte würde ich liebend gern per Deadcheck überprüfen - z.B. den Bewegungsmelder von Tradfri, wenn der 1x am Tag keine Helligkeitsänderung geschickt hat ... ist er vermutlich "weggelaufen".
      Kann ich die beiden Funktionen DeadCheck + BatterieSpannung entkoppeln?

      P 1 Reply Last reply Reply Quote 0
      • P
        Pittini Developer @adarof last edited by

        @adarof Du hasts noch nicht ganz verstanden, entkoppeln kann nicht gehen weil das Skript IMMER den DeadCheck für den Batteriedatenpunkt ausführt weil alle Geräte welche ich kenne, mit wenigen Ausnahmen diesen DP regelmäßig aktualisieren. Nur die Tradfris nicht, hab selber zwei die mich ärgern. Da es aber noch andere Geräte gibt die sehr selten aktualisieren, gibts quasi als zweite Stufe den separaten Deadcheck. Also Skript macht DeadCheck auf BatterieDp, wenn da tot rauskommt, wird geguggt obs nen zweiten extra Deadcheck gibt und nur wenn der auch tot meldet wird gemeldet. Gibts keinen extra DeadCheck wird sofort gemeldet. Bin aber tatsächlich am überlegen ob ich nicht tatsächlich das als zwei Funktionen mach, hab nur grad wenig Zeit.

        A 1 Reply Last reply Reply Quote 0
        • A
          adarof @Pittini last edited by

          @pittini Danke - ich glaub nun hab ich verstanden.
          Ein Workaround -- bis Du Zeit irgendwo findest -- wäre ja doch, dass ich Dein Skript 2x laufen lasse: Nr1 mit unendlich langer DeadCheck in Zeile 20. Das nutze ich um die Batteriespannung zu checken. Nr2 mit "kurzer" DeadCheck und setze die BatterieSpannung-Function auf etwas nicht-existierendes sodass die niemals anschlägt.

          Ich probier das mal ... 🙂

          A 1 Reply Last reply Reply Quote 0
          • A
            adarof @adarof last edited by

            @adarof beim Anlegen merke ich schon, dass das keine gute Idee ist: Die "Zwischenspeicher" unter javascript.0.BatterieUeberwachung wären ja die gleichen, sodass vermutlich doppelte Meldungen auf mich einprasseln von den diversen Skript Aufrufen. Quasi ein static ...schade.
            --> Workaround ad acta gelegt und warte, bis Du Zeit gefunden hast 🙂

            A 1 Reply Last reply Reply Quote 0
            • A
              adarof @adarof last edited by

              @adarof und dann merk ich, dass ich den Zwischenspeicher auch noch umlegen kann. Also probier ichs doch 😄

              1 Reply Last reply Reply Quote 0
              • tugsi
                tugsi last edited by

                Danke erstmal für das Skript.

                Gibt es die Möglichkeit die Abfragespanne, sprich wie oft am Tag o.ä. anzupassen?
                Denn so oft am Tag muss er die Batterien nicht abfragen.
                Den DeadCheck macht er bei meinem TradfriSwitch minütlich und das bei der Einstellung 360min DeadCheck, da würde es auch reichen einmal die Stunde.

                P 1 Reply Last reply Reply Quote 0
                • P
                  Pittini Developer @tugsi last edited by

                  @tugsi Zeile 360

                  tugsi 1 Reply Last reply Reply Quote 0
                  • tugsi
                    tugsi @Pittini last edited by

                    @pittini
                    Danke Dir.
                    Wenn ich das jetzt richtig verstanden habe, wird da der Zeitraum für den erneuten Check einer DeadBattery, also eine die nicht zeitnah aktualisiert (s. Tradfri).
                    Und wo wird festgelegt, dass das komplette Skript, also alle Batterien gecheckt werden oder ist dies eines für alles?

                    P 1 Reply Last reply Reply Quote 0
                    • P
                      Pittini Developer @tugsi last edited by

                      @tugsi sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                      Und wo wird festgelegt, dass das komplette Skript, also alle Batterien gecheckt werden oder ist dies eines für alles?

                      Gar nicht, das ist triggergesteuert bei Aktualisierung der Datenpunkte, wenn sich ne Spannung ändert wird geprüft, vollkommen zeitunabhängig. Das sich aber bei toten Geräten warum auch immer nix mehr ändert gibts den DeadCheck der nach Zeit prüft.

                      tugsi 1 Reply Last reply Reply Quote 0
                      • tugsi
                        tugsi @Pittini last edited by

                        @pittini sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                        ist triggergesteuert bei Aktualisierung der Datenpunkte

                        Ok, verstehe, muss das Script deswegen auch unbedingt in "common" abgelegt sein, damit das funktioniert oder warum?

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Pittini Developer @tugsi last edited by

                          @tugsi sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                          @pittini sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                          ist triggergesteuert bei Aktualisierung der Datenpunkte

                          Ok, verstehe, muss das Script deswegen auch unbedingt in "common" abgelegt sein, damit das funktioniert oder warum?

                          Weils da halt hingehört, funktioniert aber in nem Unterordner genauso, nur in global darfs nicht.. Wo möchtest es denn hintun?

                          tugsi 1 Reply Last reply Reply Quote 0
                          • tugsi
                            tugsi @Pittini last edited by

                            @pittini sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                            Wo möchtest es denn hintun?

                            Hab da keinen besonderen Ort.
                            Habe meine anderen Scripte jeweils etwas sortiert in Ordnern wie "Strom", "Rolladen"...
                            War nur etwas verwundert, dass Du explizit unter "common" das liegen haben wolltest.
                            Global hatte ich irgendwo mal gelesen, dass da keine Scripts rein sollen.

                            P 1 Reply Last reply Reply Quote 0
                            • P
                              Pittini Developer @tugsi last edited by

                              @tugsi sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                              Habe meine anderen Scripte jeweils etwas sortiert in Ordnern wie "Strom", "Rolladen"...

                              Ja, das ist ja auch ok, solang die alle unter common liegen, hab ich auch so. Sollten halten nicht in die Root, gehen tuts trotzdem, is wie bei rot über die Ampel gehen, darfste nich, geht meistens gut, kann aber auch mal schiefgehen.

                              tugsi N 2 Replies Last reply Reply Quote 0
                              • tugsi
                                tugsi @Pittini last edited by

                                @pittini sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                @tugsi sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                Habe meine anderen Scripte jeweils etwas sortiert in Ordnern wie "Strom", "Rolladen"...

                                Ja, das ist ja auch ok, solang die alle unter common liegen, hab ich auch so. Sollten halten nicht in die Root, gehen tuts trotzdem, is wie bei rot über die Ampel gehen, darfste nich, geht meistens gut, kann aber auch mal schiefgehen.

                                Ahh ... lach... ok dann gehe ich immer über rot ....
                                Bildschirmfoto 2021-05-31 um 13.59.36.png
                                Ich habe die Ordner im Root liegen und nicht unter common... hmm irgendwann mal so angefangen und da ja alles klappt....
                                Ok muss ich wohl mal ändern...

                                1 Reply Last reply Reply Quote 0
                                • N
                                  Neko @Pittini last edited by

                                  @pittini Erstmal herzlichen Dank für das Skript, das ist genau was ich gesucht habe.

                                  Leider habe ich ein kleines Problem und hoffe du kannst mir da helfen.
                                  Ich habe alle Sensoren Räumen zugeordnet und dann habe ich alle Sensoren die 3V haben der Funktion "BatterieSpannung_30" zugewiesen und diesen Namen auch in Zeile 12 (Vers. 1.7.3) angegeben.
                                  Das Skript legt dann auch die 7 datenpunkte an, nur gibt es mit dem Punkt BatteryMinLimit ein Problem. Die Soll Spannung wird nicht erkannt bzw. eingetragen.
                                  ab7d9952-b9a7-45e0-ad56-c45e53f156fb-image.png
                                  Ich kann zwar das Limit per Hand eintragen und dieses Wird auch übernommen, aber der Sollwert bleibt bei Null.

                                  Ich habe schon folgendes Versucht, Datenpunkte gelöscht, Skript gelöscht und dabei auch den JS Adapter neu gestartet, immer mit dem gleichen Ergebnis. Selbst wenn ich den Datenpunkt per Hand auf "BatteryMinLimit_30" ändere, legt er mir wieder einen neuen Datenpunkt "BatteryMinLimit_" an. Gleiches Problem habe ich übrigens auch mit der Version. 1.7.0

                                  Dominik F. 1 Reply Last reply Reply Quote 0
                                  • Dominik F.
                                    Dominik F. @Neko last edited by

                                    @neko

                                    Zeile 12 muss "BatterieSpannung_" heissen und brauchst du nicht verändern

                                    N 1 Reply Last reply Reply Quote 0
                                    • N
                                      Neko @Dominik F. last edited by

                                      @dominik-f ach guck, kaum macht man es richtig, funktioniert es. Vielen Dank. 👍

                                      1 Reply Last reply Reply Quote 0
                                      • P
                                        papaechokilo last edited by papaechokilo

                                        Ich verzweifle mit diesem Skript. Ich habe alle Datenpunkte mit Raum und Funktion benannt. Die Funktion "DeadCheck" und "BatterieSpannung_xx" habe ich einfach halber auf den selben Datenpunkt gelegt wie die Info über die Batterie. Wenn ich das Skript in der Version 1.7.2 laufen lasse, kommen nachstehende Fehlermeldungen.

                                        Kann mir bitte jemand helfen und sagen, wo der Wurm drin ist.
                                        Vielen, vielen Dank.

                                        Unbenannt.JPG

                                        Dominik F. 1 Reply Last reply Reply Quote 0
                                        • Dominik F.
                                          Dominik F. @papaechokilo last edited by Dominik F.

                                          @papaechokilo

                                          Zeig mal bitte n Screenshot von dem Objektbaum von einem Datenpunkt bzw dem gesamten Channel und dazu die ersten 20 Zeilen vom Script bei dir.

                                          Die Funktion Deadcheck würde erst mal rausnehmen. Dazu macht die auf dem selben Datenpunkt gar keinen Sinn.

                                          P 1 Reply Last reply Reply Quote 0
                                          • P
                                            papaechokilo @Dominik F. last edited by papaechokilo

                                            @dominik-f Hier die beiden Screenshots. Ohne DeadCheck kommt eine Fehlermeldung, daß diese fehlen, daher meine Idee.
                                            735969F4-98EB-43CD-8A8D-83C7F6DD10E3.jpeg AC8B5860-E311-4B8D-9DB4-FAA2A265AA13.jpeg

                                            Dominik F. P 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            582
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            81
                                            581
                                            110272
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo