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

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

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

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

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

      @Pittini

      OK, danke.

      1. Nochmal zu HomeMatic LowBat/ Low_Bat:
        Es kann also der Datenpunkt in eine BELIEBIGE Funktionsgruppe, das Script ignoriert den Spannungs-Wert aus dem Namen der Gruppe, wenn der Datenpunkt boolean ist?
        ob die Gruppe (/z.b) ..._15 oder ..._150 heißt, ist ganz egal?

      Nein, Du denkst zu kompliziert. Das Gerät hat physikalisch irgendeine Batterie drin, die hat ne Sollspannung, und die gibst Du an, z.B. "BatterieSpannung_30" für 3 Volt Knopfzelle. Alles andere macht das Skript intern, es schaut erst mal ob ne Zahl drinsteht und wenn nicht, dann guggt es nach nem Bool. Dann legt es anhand der Sollspannung der Batterie, eben bei true/false, 0V/3V an.

      1. Ich habe Zigbee-Sensoren, die NUR Batterie-Prozent liefern, aber keinen Spannungswert.
        Auch die können in eine beliebige Funktionsgruppe?

      Hier gilt das gleiche wie oben, es muß die RICHTIGE Spannung für dieses Gerät angegeben sein, dass da Prozent kommen erkennt das Skript wiederum automatisch weil dann % als Einheit im Datenpunkt stehen.

      1. Ginge es, zur Wahrung der Übersichtlichekit Funktionsgruppen zu erstellen, die "BatterieSpannung_Prozent" und "BatterieSpannung_Boolean" heißen, oder käme dann (kurz- oder langfristig) etwas durcheinander?

      Wäre vollkommen sinnfrei, wie will ich was berechnen wenn ich keine Sollwerte hab?

      Habe den Beitrag herausgesucht. D.h. du liest den Sollwert tatsächlich aus dem Funktionsnamen? Das war mir nicht bewusst - anderen offensichtlich auch nicht. Ich dachte das wäre nur der Übersicht halber.
      Was soll ich angeben? Leerlauf- oder Nominalspannung?

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

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

        Was soll ich angeben? Leerlauf- oder Nominalspannung?

        Nominal, also das was auf der Batterie druff steht.

        Dein Skript kann keine Prozentwerte einlesen... Das war mir vorher nicht klar.

        Doch, kann es, es liest Spannungen, Prozente und auch lowbat true/false und das ganze auch gemischt.

        Meine Xiaomis gehen erst zwischen 5-0% aus.. Vorher nicht. Da will ich nicht vorher triggern:

        Ja, aber eben nicht bei 5% Batteriespannung sondern quasi 5% Lebenserwartung. Und dieser Wert wird vom MiHome Adapter aus der Spannung errechnet und die Rechnung stimmt imho nicht.
        Das heißt Du vergleichst da Äpfel mit Birnen. Die 5% die Du meinst, werden in der Skripttabelle als %life angegeben und sind eben was anderes als %bat

        Nutzt du Dead Devices bei Xiaomi? bei mir werden rund 30% fälschlicherweise als dead erkannt. Die Zeitstempel sind tatsächlich alt, daher kann das Skript nichts dafür. Aber leider senden die Devices kein lebenszeichen, wenn sich der Wert nicht ändert.

        Ja klar nutz ich das, grad bei den Xiaomis klappt das prima, Probleme gabs da eigentlich nur bei HM Geräten. Die Xiaomis aktualisieren nämlich eigentlich schon auch ohne Werteänderung, so rund alle 2 Stunden. Kann mal einer ne Ausnahme sein, aber das ist wirklich sehr selten. Sieht bei aktuell z.B. so aus und da is alles korrekt, die HM Batterien werd ich die Tage tauschen, der eine Sensor im Briefkasten is wirklich tot, weil bei der Kälte die Batt schneller schlappmachen und der 2te liegt ohne Batterie hier rum:
        2020-12-08 12_55_50-Window.png

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

          @Pittini
          Irgendwie will es nicht so richtig:

          Aktuell niedrigster Batteriestand (3.33V): Kinderzimmer OG3 bei Gerät TH_SpZ_OG3
          

          Zwei Dinge: CR2032 steht 3V drauf, sind aber 3.3V.
          unabhängig davon erkennt das Skript einen Batteriewechsel nicht. Was kann man tun?

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

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

            @Pittini
            Irgendwie will es nicht so richtig:

            Aktuell niedrigster Batteriestand (3.33V): Kinderzimmer OG3 bei Gerät TH_SpZ_OG3
            

            Zwei Dinge: CR2032 steht 3V drauf, sind aber 3.3V.
            unabhängig davon erkennt das Skript einen Batteriewechsel nicht. Was kann man tun?

            Relevant is was draufsteht, nix anderes. Jede neue Batterie hat i.d.R. ne höhere Spannung als draufsteht.
            Klar erkennt das Skript nen Batteriewechsel, aber natürlich muß das Gerät erstmal den neuen Wert auch senden und das kann durchaus bis zu ner Stunde dauern.

            1 Reply Last reply Reply Quote 0
            • G
              Gabe last edited by

              Hi,

              ich habe das gleiche Problem, dass bei mir einige Geräte als Dead angezeigt werden, obwohl sie alive sind.

              Ich habe z-Wave, weiß jemand ob die Z-Wave Geräte überhaupt den Zustand regelmäßig schicken oder nur bei Änderungen?

              Danke

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

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

                Hi,

                ich habe das gleiche Problem, dass bei mir einige Geräte als Dead angezeigt werden, obwohl sie alive sind.

                Ich habe z-Wave, weiß jemand ob die Z-Wave Geräte überhaupt den Zustand regelmäßig schicken oder nur bei Änderungen?

                Danke

                Muß ich passen, da ich keinerlei z-Wave Geräte hab. Evtl. kann ja einer der anderen Skriptnutzer was dazu sagen.

                G 1 Reply Last reply Reply Quote 0
                • P
                  passuff last edited by

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

                  nt das Skript nen Batteriewechsel, aber natürlich muß das Gerät erstmal den neuen Wert auch senden und das kann durchaus bis zu ner Stunde dauern.

                  Der Wechsel der Batterie war vor 2-3 Tagen...Der Wert der Batterie aktualisiert sich sogar:

                  Aktuell niedrigster Batteriestand (3.29V): Kinderzimmer OG3 bei Gerät TH_SpZ_OG3
                  

                  Zum Vergleich:

                  Aktuell niedrigster Batteriestand (3.33V): Kinderzimmer OG3 bei Gerät TH_SpZ_OG3
                  

                  Zusätzlich wurde ich heute Nacht gleich sechsmal wegen niedrigem Batteriestand benachrichtigt,
                  Der Stand wurde richtig erkannt, aber einmal hätte gereicht... Kann man das irgendwo einstellen?

                  28e351e5-ee8d-42be-acdc-39a605c5e934-image.png

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

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

                    Zusätzlich wurde ich heute Nacht gleich sechsmal wegen niedrigem Batteriestand benachrichtigt,
                    Der Stand wurde richtig erkannt, aber einmal hätte gereicht... Kann man das irgendwo einstellen?

                    Nein, hat noch keiner gewollt/gebraucht bisher und ich selber nutz die Telegram Option nicht. Wär aber vermutlich sinnvoll und auch machbar, wenns Dir wichtig ist, mach mal nen Issue auf Git dazu damit ichs nicht vergess.

                    Zum Batteriewechselproblem, aus den Einzeilern kann ich keinen Fehler erkenn, da ich nicht weis wie Deine anderen Batteriestände sind. Zeig mir doch mal die ganze Vistabelle als Screenshot.

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

                      @Pittini Hi habe jetzt rausgefunden, dass wohl Z-Wave Geräte nie aus einen Deep Sleep Modus rauskommen und nur bei Änderungen kurz den geänderten Wert schicken.

                      Ist es möglich, den Part aus dem Skript zu ändern eher auf den alive Status? Ich habe auch das Problem dass die Prozent Werte bei mir total falsch angegeben werden (also 100% als Volt anzeige). Was kann ich da machen?

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

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

                        @Pittini Hi habe jetzt rausgefunden, dass wohl Z-Wave Geräte nie aus einen Deep Sleep Modus rauskommen und nur bei Änderungen kurz den geänderten Wert schicken.

                        Ist es möglich, den Part aus dem Skript zu ändern eher auf den alive Status?

                        Es ist mittelfristig geplant ne weitere Funktion für den DeadCheck einzuführen, aber dies Jahr ganz sicher nimmer. Wenn Du nur solche Geräte hast, würd ich den Check deaktivieren oder die Zeit sehr hoch setzen (Zeile 21 + 22)

                        Ich habe auch das Problem dass die Prozent Werte bei mir total falsch angegeben werden (also 100% als Volt anzeige). Was kann ich da machen?

                        Das Skript richtig konfigurieren.

                        Zeig mal Screenshots von der Objektliste wo ich Deine Funktionszuweisung seh, dann die Skripteinstellungen falls Du da was geändert hast und nen Screenshot vom Vis mit der falschen Anzeige

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

                          @Pittini ok danke für die Info. Was müsste ich den genau deaktivieren für den DeadCheck?

                          Anbei die Bilder, falls was fehlt sag Bescheid. Am Skript habe ich eigentlich nur die Zeit auf 720 Min zum testen erhöht.
                          Danke für deine Hilfe!!!

                          Bild1.jpg
                          Bild2.jpg
                          Bild3.jpg

                          P gelberlemmy 2 Replies Last reply Reply Quote 0
                          • P
                            Pittini Developer @Gabe last edited by

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

                            ok danke für die Info. Was müsste ich den genau deaktivieren für den DeadCheck?

                            Zeile 22 auf false

                            Anbei die Bilder, falls was fehlt sag Bescheid. Am Skript habe ich eigentlich nur die Zeit auf 720 Min zum testen erhöht.

                            Das is ok. Das Problem is der z-Wave Adapter, der schreibt da 87 rein ohne Unit und ohne entsprechende Rolle. So kann das Skript nicht erkennen dass das % sind, weil eben das % Zeichen fehlt und geht dann davon aus dasses Volt sind, wodurch die unsinnigen Werte entstehen. Da könntest jetzt ein Issue aufmachen beim Adapter, Korrektur des Adapters wär der Idealfall. Zwischendurch kannste Dir auch selber helfen indem Du im RAW des DAtenpunktes das Prozent hinzufügst, dann kapiert das auch das Skript. In dem Bild siehste wie und wo das Unit reinmuss:

                            Inked2020-12-16 19_05_45-Window_LI.jpg

                            Inked2020-12-16 19_03_50-Window_LI.jpg

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

                              hallo :), eine Sensor ist bei mir nicht mehr erreichbar, nun Schreibt der Script mein log voll mit.

                              javascript.0	2020-12-18 18:46:41.959	error	(1829) at processTimers (internal/timers.js:497:7)
                              javascript.0	2020-12-18 18:46:41.959	error	(1829) at listOnTimeout (internal/timers.js:554:17)
                              javascript.0	2020-12-18 18:46:41.959	error	(1829) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2040:34)
                              javascript.0	2020-12-18 18:46:41.959	error	(1829) at Object.<anonymous> (script.js.common.Batterie_v2:275:9)
                              javascript.0	2020-12-18 18:46:41.959	error	(1829) at CheckDeadBatt (script.js.common.Batterie_v2:258:25)
                              javascript.0	2020-12-18 18:46:41.959	error	(1829) at Meldung (script.js.common.Batterie_v2:244:22)
                              javascript.0	2020-12-18 18:46:41.958	error	(1829) Error in callback: ReferenceError: WriteEventLog is not defined```
                              code_text
                              
                              
                              ps : Edit hat sich erledigt, hab garnicht den Eventlog Adapter :D, habs nun deaktiviert.
                              1 Reply Last reply Reply Quote 0
                              • gelberlemmy
                                gelberlemmy @Gabe last edited by

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

                                @Pittini ok danke für die Info. Was müsste ich den genau deaktivieren für den DeadCheck?

                                Anbei die Bilder, falls was fehlt sag Bescheid. Am Skript habe ich eigentlich nur die Zeit auf 720 Min zum testen erhöht.
                                Danke für deine Hilfe!!!

                                Bild1.jpg
                                Bild2.jpg
                                Bild3.jpg

                                Moin,
                                ich habe mir gestern dieses coole Skript eingebaut. Auch ich habe festgestellt dass sich meine meisten Geräte (sind viele Z-Wave Geräte mit dem ZWave 2 Adapter) als Dead melden. Auch 24 Std später. Wobei ich bei mir noch mit "Alias" Datenpunkten arbeite. Bei mir sind alle in % angegeben. Wäre jetzt blöd wenn diese nur bei Änderung eine Aktualisierung schicken. Dann wäre es ja noch super, wenn man den Alive-Datenpunkt in das Skript einbauen könnte. @Pittini was willst Du denn noch in den Dead Alive Punkt einbauen ?

                                Gruß André

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  Gabe @gelberlemmy last edited by

                                  @gelberlemmy nur Zur Info, da wir ja ungefähr das gleich einsetzen 😉 Ich habe das mit den % schon gemeldet und wird wohl demnächst mit in den Z-Wave Adapter eingebaut, dann haben wir das Problem mit den komischen Werten nicht mehr.

                                  Bzgl. Dear Alive wollte Pettini etwas neue einbauen, damit das auch bei den Z-Wave Geräten funktioniert

                                  gelberlemmy 1 Reply Last reply Reply Quote 0
                                  • gelberlemmy
                                    gelberlemmy @Gabe last edited by

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

                                    @gelberlemmy nur Zur Info, da wir ja ungefähr das gleich einsetzen 😉 Ich habe das mit den % schon gemeldet und wird wohl demnächst mit in den Z-Wave Adapter eingebaut, dann haben wir das Problem mit den komischen Werten nicht mehr.

                                    Bzgl. Dear Alive wollte Pettini etwas neue einbauen, damit das auch bei den Z-Wave Geräten funktioniert

                                    @Gabe Alles klar. Hatte ich schon gelesen. Mit den % habe ich kein Problem, da ich alles über Alias fahre. Zumindest die meisten Dinge. Da habe ich natürlich Prozent. Ja mit den Dead Geräten wäre super. Ich bin super gespannt, da das ja ein super geniales Script ist. Hätte nur gedacht, das der Alice Datenpunkt einbauen ja das eleganteste wäre.

                                    1 Reply Last reply Reply Quote 0
                                    • C
                                      cainam @Wildbill last edited by cainam

                                      Hallo zusammen
                                      Ich versuche das auch zum laufen zu bringen und möchte da alle meine Deconz / Phoscon Sensoren (alles aqara mi) anzeigen beim niederigem Batteriestand. Ich habe lediglich die % Angaben die mir Deconz liefert. Was mache ich falsch:

                                      85d32434-e56f-42f6-b300-6251fa7c96c1-image.png

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

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

                                        Was mache ich falsch:

                                        Da ich keinerlei Sollspannung seh, würd ich sagen nicht an die Anleitung gehalten. Zeig mal die Funktionszuweisung der Nennspannung zum Datenpunkt.

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

                                          Wo finde ich die Spannung, ich habe dieses Datenfeld gar nicht:
                                          1b51fa40-ec49-4f59-872b-065c516a5edb-image.png

                                          82d94f91-0e27-4a96-8175-6465107c1238-image.png

                                          C 1 Reply Last reply Reply Quote 0
                                          • C
                                            Chrunchy @cainam last edited by

                                            @cainam Wie @Pittini schon sagt, nicht an die Anleitung gehalten.

                                            Zeile 12 im Script wieder zurücksetzten auf "BatterieSpannung_"
                                            Dann Funktionen im iobroker anlegen: "BatterieSpannung_xx" wobei xx zweistellig sein muss und die Spannung definiert. BatterieSpannung_15 gilt für Versorgung mit 1,5V, BatterieSpannung_30 für Versorgung mit 3,0V

                                            Dadurch ist das Script in der Lage die Basisspannung zu errechnen, wenn das Gerät nur % liefert.

                                            Anschließend die Datenpunkte der Geräte (egal ob Volt oder %) den Funktionen zuordnen, wobei die Gesamtspannung aller Batterien in den Geräten maßgeblich ist.

                                            C 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            394
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            81
                                            581
                                            109059
                                            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