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.
    • Grizzelbee
      Grizzelbee Developer @Pittini last edited by Grizzelbee

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

      Führ das Skript aus, und sag mir bitte was es ausspuckt.

      Da kommt (bei der im Stable befindlichen Version 0.2.4), nicht ganz unerwartet String bei raus.
      Ich habe bei der Suche nach der Lösung allerdings gesehen, dass es deutlich neuere Versionen (V1.0.1) des Adapters auf Github gibt. Nach der Installation der aktuellen Version von github wird es korrekt zu Number und dein Script funktioniert wieder.

      Es lag also wie unterschwellig befürchtet am Adapter selbst.

      Vielen Dank für deinen Support und das tolle Script!

      viele Grüße
      Grizzelbee

      P.S.: Eine Frage dennoch: Mindestens der Tradfri und der Nuki-extended Adapter geben zwar regelmäßig Lebenszeichen von sich - Geschwister-Datenpunkte auf der selben Ebene werden aktualisiert, der Batterie-State aber wirklich nur, wenn er sich auch ändert - was selten der Fall ist. Dadurch scheitert die Tot-Erkenung in der Regel.
      Siehst Du eine elegante Möglichkeit in diesen Fällen (als tot erkannt) den Timestamp sämlicher Geschwister zusätzlich zu testen ob da noch Lebenszeichen bei sind und nur tot zu melden, wenn auch sämliche Geschwister tot sind?

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

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

        Siehst Du eine elegante Möglichkeit in diesen Fällen (als tot erkannt) den Timestamp sämlicher Geschwister zusätzlich zu testen ob da noch Lebenszeichen bei sind und nur tot zu melden, wenn auch sämliche Geschwister tot sind?

        Machbar aber schwierig und erzeugt dann massive Systemlast fürchte ich. Müßte dann ja minütlich ALLE Datenpunkte aller Batteriegeräte auf Aktualisierung abfragen. Hab da grad eigentlich keine gute Idee zu, von elegant mal gar nicht zu reden.

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

          @Pittini
          Hmm. So schlimm dürfte das nur im worst case werden. Die Prüfung kann ja beim ersten Erfolg abgebrochen werden - im Idealfall direkt nach Prüfung des ersten Geschwisterchens.
          Oder ist vielleicht ein BatterieSpannung_DeadTsHelper eine Option? Der müsste dann halt vom Anwender passend gesetzt werden.

          1 Reply Last reply Reply Quote 0
          • M
            Mike Hellracer @Pittini last edited by

            @Pittini
            Hi, auch von mir erst mal ein großes Lob an dich und deine Scripte. Ich kann das Problem von Passuff mit HM-Devices bestätigen. Ursache soweit mir bekannt:
            Die LOWBAT Anzeige (Channel 1) wird nur aktualisiert wenn sich der Status ändert. Im Channel 0 sogar erst bei einer Änderung des LowBat Status.
            Da somit alle Devices bei Nichtbetätigung nach der eingestellten Zeit auf Dead gehen wäre ich auch sehr an einer Erweiterung mit "Unreacheble" interessiert

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

              @Mike-Hellracer @passuff Ich kann das Problem hier zwar leider nicht reproduzieren (weder bei meinen HM Thermostaten, noch bei meinen ca. 50 Xiaomi Devices an Gateways) aber glaub Euch das natürlich. Hier ne separate Funktion zu nehmen dürfte tatsächlich der sinnvollste Ansatz sein. Das würde aber auch bedeuten dass grundsätzlich zwei Funktionen pro Gerät gesetzt werden müssen was mir nicht wirklich gut gefällt. Mache ich nen separates Skript draus, isses wieder nimmer in einer Tabelle erfasst. Bin offen für Eure Meinung und grundsätzlich bereit das umzusetzen (sobald ich mein aktuelles Projekt LightControl einigermaßen fertig hab).

              M 1 Reply Last reply Reply Quote 1
              • M
                Mike Hellracer @Pittini last edited by

                @Pittini
                Wahrscheinlich läuft es auf die Zuweisung einer zweiten Funktion heraus.
                Aber man könnte vlt darauf prüfen und wenn die zweite Funktion nicht gesetzt ist die "herkömmliche" Methode nlverwenden.
                Und eine zweite Bitte hätte ich. In deinen Scripts verwendest du getEnum('functions')
                Könntest du den Typ durch eine Variable ersetzen? zB. GetEnum(enumCazegory)
                Dann wären hier auch eigene Kategorien verwendbar..

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

                  @Pittini Hi,
                  habe Probleme mit zwei Sensoren die nur „dead“ Anzeigen (Rauchmelder und Bewegungsmelder). Die Sensoren arbeiten einwandfrei, die Batterien sind auch voll, jedoch wird das Objekt „lowbat“ nicht aktualisiert.
                  Gleiches Problem hatte ich bei den Homematic Fensterkontakten auch. Da habe ich aber dann auf das Objekt „lowbat“ aus dem Verzeichnis 1 gewechselt dann ging es. Warum gibt es das Objekt lowbat in Unterverzeichnis „0“ und „1“ der Sensoren?
                  Leider kann hat der Rauchmelder und Bewegungsmelder das Objekt „lowbat“ nur im Verzeichnis „0“.
                  Also irgendeine Idee warum der Wert nicht aktualisiert wird?
                  Gruß
                  gogo

                  P capitaenz D 3 Replies Last reply Reply Quote 1
                  • P
                    Pittini Developer @gogohome last edited by

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

                    Also irgendeine Idee warum der Wert nicht aktualisiert wird?

                    Da bin ich der falsche Ansprechpartner, da sollteste den Entwickler des jeweiligen Adapters fragen, mein Skript reagiert nur auf das was da ist. Da es diese Probs aber offenbar mit etlichen Geräten gibt, werd ich da im nächsten update das Handling anders handhaben, aber wird nochn bisserl dauern.

                    G M 2 Replies Last reply Reply Quote 1
                    • G
                      gogohome @Pittini last edited by

                      @Pittini OK verstehe, Danke für die schnelle Antwort.

                      1 Reply Last reply Reply Quote 0
                      • M
                        Mike Hellracer @Pittini last edited by

                        @Pittini
                        Hi, gibt es schon Pläne für das Auslagern von "dead" in eine eigene Funktion? z.B. Prüfung von DP "UNREACHABLE" bzw. Gruppe
                        brauchst du dafür noch weitere Infos oder Unterstützung?

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

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

                          @Pittini
                          Hi, gibt es schon Pläne für das Auslagern von "dead" in eine eigene Funktion? z.B. Prüfung von DP "UNREACHABLE" bzw. Gruppe
                          brauchst du dafür noch weitere Infos oder Unterstützung?

                          Wird kommen. Aber wird dauern, da ich grad zum einen eh rel. wenig Zeit hab und zum anderen das neue Skript "LightControl" erstmal Vorrang hat.

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            Mike Hellracer @Pittini last edited by

                            @Pittini
                            Hi, danke für die schnelle Antwort.
                            Ich möchte nicht kritisieren, aber wenn ich dich richtig verstehe ist "light control" das gleiche was der Adapter "Smart Control" übernimmt?
                            Oder ist das ein Missverständnis von meiner Seite?

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

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

                              Ich möchte nicht kritisieren, aber wenn ich dich richtig verstehe ist "light control" das gleiche was der Adapter "Smart Control" übernimmt?
                              Oder ist das ein Missverständnis von meiner Seite?

                              Es gibt tatsächlich viele Überschneidungen. SmartControl ist soweit ich das gesehen hab generischer, dafür kanns Lampenspezifische Sachen wie Farben umrechnen nicht.

                              M 1 Reply Last reply Reply Quote 1
                              • M
                                Mike Hellracer @Pittini last edited by

                                @Pittini
                                mit dem umrechnen von Farben hast du recht. ggf. gibt es auch noch ein paar weitere sehr clevere Dinge aus "lightcontrol" die man einbauen sollte/könnte.
                                Hast du evtl. Lust dich mit #Mic "zusammen zu tun" oder zumindest ein paar Ideen auszutauschen?
                                Ich denke die Vorteile (Update, GUI und Plausi) bei der Nutzung eines Adapters sind nicht von der Hand zu weisen.

                                1 Reply Last reply Reply Quote 0
                                • capitaenz
                                  capitaenz @gogohome last edited by

                                  @gogohome

                                  @gogohome said in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                  @Pittini Hi,
                                  habe Probleme mit zwei Sensoren die nur „dead“ Anzeigen (Rauchmelder und Bewegungsmelder). Die Sensoren arbeiten einwandfrei, die Batterien sind auch voll, jedoch wird das Objekt „lowbat“ nicht aktualisiert.
                                  Gleiches Problem hatte ich bei den Homematic Fensterkontakten auch. Da habe ich aber dann auf das Objekt „lowbat“ aus dem Verzeichnis 1 gewechselt dann ging es. Warum gibt es das Objekt lowbat in Unterverzeichnis „0“ und „1“ der Sensoren?
                                  Leider kann hat der Rauchmelder und Bewegungsmelder das Objekt „lowbat“ nur im Verzeichnis „0“.
                                  Also irgendeine Idee warum der Wert nicht aktualisiert wird?
                                  Gruß
                                  gogo

                                  bei mir funktioniert das Script leider auch nur bei Geräten die % oder Volt anzeigen.
                                  Bei den alten Homematic-Geräten, die nur true/false können klappt es nicht, diese werden als nicht erreichbar angezeigt.
                                  Ich finde bei den alten HM-Geräten auch nur die Datenpunkte LOWBAT und LOWBAT_ALARM unter dem Datenpunkt "0".

                                  VG
                                  Leif

                                  P 1 Reply Last reply Reply Quote 0
                                  • S
                                    SK last edited by SK

                                    @Pittini

                                    Hi,
                                    ich habe das Skipt laut der Anleitung installiert und konfiguriert. 2 Probleme habe ich.
                                    Deconz hat die Batterieinformationen bei jedem Gerät nochmals in einem Unterordner abgelegt. Damit bekomme ich als Rückmeldung nur den Namen "Information". Was muss ich ändern, damit der übergeordnete "Name" abgefragt wird?

                                    a9ca81f5-4a8d-40b6-a8ef-6c9c59b81405-grafik.png
                                    af075ab6-0679-4527-8c21-14be5723efb8-grafik.png
                                    9a6bb482-0cb2-446c-8af3-b51ae2cd96c1-grafik.png

                                    Ich gehe davon aus, dass ich für jede Batteriespannung ein eigenes Skrip erstelle? Also bei zwei verschiedenen Spannungen eins mit BatterieSpannung_30 und eins mit BatterieSpannung_15?

                                    Grüße & Danke

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

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

                                      bei mir funktioniert das Script leider auch nur bei Geräten die % oder Volt anzeigen.
                                      Bei den alten Homematic-Geräten, die nur true/false können klappt es nicht, diese werden als nicht erreichbar angezeigt.
                                      Ich finde bei den alten HM-Geräten auch nur die Datenpunkte LOWBAT und LOWBAT_ALARM unter dem Datenpunkt "0".

                                      lowbat kann das skript, hab selber hm Devices. Aber wenn die Devices nicht aktualisieren kann das Skript auch nix dran ändern, was nich da is, kann ich nich auswerten.

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

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

                                        2 Probleme habe ich.
                                        Deconz hat die Batterieinformationen bei jedem Gerät nochmals in einem Unterordner abgelegt. Damit bekomme ich als Rückmeldung nur den Namen "Information". Was muss ich ändern, damit der übergeordnete "Name" abgefragt wird?

                                        Sollte es eigentlich tun, muß ich mir mal anschaun, erinner mich pls wennsde die nächsten Tage nix hörst.

                                        Ich gehe davon aus, dass ich für jede Batteriespannung ein eigenes Skrip erstelle? Also bei zwei verschiedenen Spannungen eins mit BatterieSpannung_30 und eins mit BatterieSpannung_15?

                                        Wenns kein Tippfehler ist, NEIN auf keinen Fall das Skript doppelt laufen lassen, das gibt Probleme und ist unnötig.
                                        Du legst x Funktionen an (je eine pro Spannung), brauchst aber dafür nur EIN Skript, das handled alles.

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

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

                                          Ich gehe davon aus, dass ich für jede Batteriespannung ein eigenes Skrip erstelle? Also bei zwei verschiedenen Spannungen eins mit BatterieSpannung_30 und eins mit BatterieSpannung_15?

                                          Wenns kein Tippfehler ist, NEIN auf keinen Fall das Skript doppelt laufen lassen, das gibt Probleme und ist unnötig.
                                          Du legst x Funktionen an (je eine pro Spannung), brauchst aber dafür nur EIN Skript, das handled alles.

                                          Alles klar, das war für mich im Kommentar nicht ganz klar, dass sich das nur auf den Teil vor den Volt bezieht. Danke schon mal.

                                          1 Reply Last reply Reply Quote 0
                                          • O
                                            Olli77 last edited by Negalein

                                            @Pittini
                                            wie bei FB schon beschrieben hier die Fehlermeldung.

                                            Bei mir wird eine Fehlermeldung im LOG angezeigt und ich habe statt 7 zeilen nur 6. Bei mir fehlt der min wert.

                                            Kannst du mir sagen wo der fehler liegt?!!
                                            Unbenannt2.JPG Unbenannt1.JPG

                                            P 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            815
                                            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