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

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

      Wie kann ich Batterien überprüfen die nur % angaben haben? Was muss ich eintragen? Finde in der Anleitung nichts, nur das es möglich ist.

      Seufz, die Frage hab ich schon drölfzig mal hier im Thread beantwortet, es ist scheissegal ob da lowbat oder % stehen, es gibt eine Nennspannung für das Gerät und die is relevant und anzugeben, alles andere erkennt das Skript selber.

      Batteriespanung100?

      Batteriespannung100 heißt die Batterie hat 10Volt Nennspannung

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

        @pittini

        Wäre es möglich Pushover als Meldung in dein Script einzubauen? Man kann dort mehrere Instanzen von Pushover nutzen, eine z.B. für die Infomeldung, eine wenn die Batterie ihr Limit erreicht hat.

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

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

          @pittini

          Wäre es möglich Pushover als Meldung in dein Script einzubauen? Man kann dort mehrere Instanzen von Pushover nutzen, eine z.B. für die Infomeldung, eine wenn die Batterie ihr Limit erreicht hat.

          Möglich is (fast) alles, aber weder nutze ich pushover noch hab ich nen Plan wie was Instanzen trallala, mach Dir doch nen Fork und baus selber rein 😉

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

            @pittini

            Das einbauen könnte ich denke ich, nur wenn du dein Skript Updates ist ja auch alles wieder weg.
            Oder was meinst du mit fork?

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

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

              @pittini

              Das einbauen könnte ich denke ich, nur wenn du dein Skript Updates ist ja auch alles wieder weg.
              Oder was meinst du mit fork?

              Du kannst mein Projekt auf Git forken, d.h. Dir ne Arbeitskopie in Dein Git Repo ziehen. Dann machst Du Deine Änderungen. Wenn fertig schiebst Du das in Dein Repo auf Git und machst nen PullRequest, damit kann dann ich Deine Änderungen, ganz oder teilweise, in mein Projekt übernehmen.

              Dominik F. 2 Replies Last reply Reply Quote 0
              • Dominik F.
                Dominik F. @Pittini last edited by

                @pittini

                Na das kann ja was werden 😄 Ich geb mein bestes^^

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

                  @pittini

                  Okay, ich hoffe ich hab das mit dem Pullrequest richtig gemacht. Habs getestet und funktioniert bei mir.

                  1 Reply Last reply Reply Quote 0
                  • F
                    FloxD last edited by

                    Hmm, ich bin etwas ratlos... Script funktioniert super, nur übernimmt er bei mir nur bei den deconz-Geräten nicht die korrekte Sensor ID und den Namen (bei den HM-Geräten allerdings schon). Weiß jemand Rat? Herzlichen Dank 🙂Battery.jpg
                    Objects.jpg

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

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

                      nur übernimmt er bei mir nur bei den deconz-Geräten nicht die korrekte Sensor ID und den Namen

                      Guggst Du Skripteinstellungen Zeile 24 (aktuelle Version)

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

                        @pittini Thx 🙄 wer lesen kann, ist klar im Vorteil🤦‍♂️

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

                          @pittini

                          Hallo,

                          erstmal danke für das super Skript! Ich habe es mir gerade installiert (v1.7.1) und es funktioniert wie es soll, bis auf eine Kleinigkeit.

                          Wenn ich ein HM-Gerät, in meinem Fall einen optischen Fenster/Tür-Sensor aufnehme, der nur true/false für den LowBat DP kennt bekomme ich folgende Fehlermeldung:

                          a0c5ea51-a147-41e4-bfed-5555a2f7848c-image.png

                          Im Objektbrowser habe ich es so gemacht:

                          797e92b3-1f55-4cc5-9c4f-ef2d5e5db8e5-image.png

                          Muss ich statt BatterieSpannung_30 sowas wie einen BatterieSpannung_Boolean (fals es den gäbe) setzen?

                          qqolli P F 3 Replies Last reply Reply Quote 0
                          • qqolli
                            qqolli @qqolli last edited by

                            @qqolli

                            Keiner eine Antwort? 🙂

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

                              @qqolli Was haste denn, ist doch alles korrekt. Das der als dead angezeigt wird is soweit ersmal normal bei hm, weil der Datenpunkt sehr selten aktualisiert wird. Deswegen gibts ja den 2ten DeadCheck für solche Fälle. Den legste am besten auf den Schaltdatenpunkt vom TFK, der dürfte öfter aktualisiert werden, mußt halt mal guggen. Zusätzlich und/oder alternativ kannste natürlich die Zeit für den DeadCheck höher setzen.

                              qqolli 1 Reply Last reply Reply Quote 1
                              • F
                                Frank579 @qqolli last edited by

                                @qqolli
                                Hatte ich bei meinem auch ... Nimm den lowbat unter 1. Der wird warum auch immer bei mir öfter aktualisiert ... und den Wert für dead habe ich auf 1 Tag 1440 min stehen

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

                                  @pittini

                                  Super, danke. Hatte es noch nicht ganz verstanden.

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

                                    @qqolli

                                    Du hast doch bestimmt auch einen BATTERY_STATE bei HM. Würde denke ich mehr Sinn machen diesen zu nutzen weil dieser auch eine Spannung als Wert ausgibt.

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

                                      @dominik-f

                                      Die habe ich auch genommen (soweit verfügbar), da nicht alle HM-Komponenten einen solchen besitzen.

                                      Z. B. hat der HM Thermostat diesen DP für die Batteriespannung (Battery_State).

                                      Die optischen TFK's von HM haben einen solchen leider nicht. Was sie haben, ist ein DP vom Typ boolean. Der sagt nur, ob der Batteriestand niedrig ist oder nicht; keine Angabe der Spannung oder des Prozentsatzes. Zudem wird dieser DP tatsächlich recht selten aktualisiert; die Antwort von @Pittini war somit recht hilfreich.

                                      K 1 Reply Last reply Reply Quote 0
                                      • K
                                        Kyocera007 0 @qqolli last edited by Kyocera007 0

                                        @Pittini
                                        Hallo Gemeinde 🙂
                                        Ich probiere es mal hier, weil es bei Facebock mit den langen Log-Dateien nicht funktioniert.
                                        Meine HM-CC-RT-DN wollen nicht mit dem Batteriestatus. Kann es sein, dass das Script nicht auf "BatteryLevel reagiert ?
                                        Hier ein Screenshot
                                        Batt1.JPG

                                        Hier der Datenpunkt z.b Bad_Heizung
                                        Batt.JPG

                                        hier das Log

                                        weatherunderground.0 2021-02-09 18:12:01.044 info (22126) starting. Version 3.3.0 in /opt/iobroker/node_modules/iobroker.weatherunderground, node: v12.20.1, js-controller: 3.1.6
                                        weatherunderground.0 2021-02-09 18:12:00.995 info (22126) Plugin sentry Sentry Plugin disabled for this process because sending of statistic data is disabled for the system
                                        host.iobroker 2021-02-09 18:12:00.012 info instance system.adapter.weatherunderground.0 started with pid 22126
                                        javascript.0 2021-02-09 18:11:50.493 info (28904) script.js.common.BattUeberwachung: Reaching MakeTable
                                        javascript.0 2021-02-09 18:11:50.493 info (28904) script.js.common.BattUeberwachung: Aktuell niedrigster Batteriestand (0.00V): Heizung bei Gerät Bad_Heizung
                                        javascript.0 2021-02-09 18:11:50.492 info (28904) script.js.common.BattUeberwachung: Reaching CheckNextLowBatt()
                                        javascript.0 2021-02-09 18:11:50.492 info (28904) script.js.common.BattUeberwachung: Reaching CheckAllBatterysOk - Lastmessage=Batteriestand unter Limit im Heizung bei Gerät Bad_Heizung<br>Batteriestand unter Limit im Heizung bei Gerät Ess_H
                                        javascript.0 2021-02-09 18:11:50.488 info (28904) script.js.common.BattUeberwachung: Batteriestand unter Limit im Heizung bei Gerät Bad_Heizung<br>Batteriestand unter Limit im Heizung bei Gerät Ess_Heizung<br>Batteriestand unter Limit im Hei
                                        javascript.0 2021-02-09 18:11:50.488 info (28904) script.js.common.BattUeberwachung: Reaching Meldung()
                                        javascript.0 2021-02-09 18:11:50.488 info (28904) script.js.common.BattUeberwachung: SensorVal[5] = 0V, unterschreitet MinLimit von 2.4 V
                                        javascript.0 2021-02-09 18:11:50.487 info (28904) script.js.common.BattUeberwachung: SensorVal[4] = 0V, unterschreitet MinLimit von 2.4 V
                                        javascript.0 2021-02-09 18:11:50.486 info (28904) script.js.common.BattUeberwachung: SensorVal[3] = 0V, unterschreitet MinLimit von 2.4 V
                                        javascript.0 2021-02-09 18:11:50.486 info (28904) script.js.common.BattUeberwachung: SensorVal[2] = 0V, unterschreitet MinLimit von 2.4 V
                                        javascript.0 2021-02-09 18:11:50.486 info (28904) script.js.common.BattUeberwachung: SensorVal[1] = 0V, unterschreitet MinLimit von 2.4 V
                                        javascript.0 2021-02-09 18:11:50.486 info (28904) script.js.common.BattUeberwachung: SensorVal[0] = 0V, unterschreitet MinLimit von 2.4 V
                                        javascript.0 2021-02-09 18:11:50.485 info (28904) script.js.common.BattUeberwachung: Reaching CheckAllBatterys() found 6 Devices
                                        javascript.0 2021-02-09 18:11:50.479 info (28904) script.js.common.BattUeberwachung: Reaching MakeTable
                                        javascript.0 2021-02-09 18:11:50.478 info (28904) script.js.common.BattUeberwachung: fhem.0.Arbeit_Heizung is not dead at second checkpoint
                                        javascript.0 2021-02-09 18:11:50.478 info (28904) script.js.common.BattUeberwachung: z=1 Device fhem.0.Arbeit_Heizung second check at fhem.0.Arbeit_Heizung.measured-temp
                                        javascript.0 2021-02-09 18:11:50.478 info (28904) script.js.common.BattUeberwachung: Device fhem.0.Arbeit_Heizung has second check, now checking
                                        javascript.0 2021-02-09 18:11:50.478 info (28904) script.js.common.BattUeberwachung: Device fhem.0.Arbeit_Heizung is possibly dead, searching for second check
                                        javascript.0 2021-02-09 18:11:50.478 info (28904) script.js.common.BattUeberwachung: fhem.0.Kueche_Heizung is not dead at second checkpoint
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: z=2 Device fhem.0.Kueche_Heizung second check at fhem.0.Kueche_Heizung.measured-temp
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: Device fhem.0.Kueche_Heizung has second check, now checking
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: Device fhem.0.Kueche_Heizung is possibly dead, searching for second check
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: fhem.0.Ess_Heizung is not dead at second checkpoint
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: z=5 Device fhem.0.Ess_Heizung second check at fhem.0.Ess_Heizung.measured-temp
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: Device fhem.0.Ess_Heizung has second check, now checking
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: Device fhem.0.Ess_Heizung is possibly dead, searching for second check
                                        javascript.0 2021-02-09 18:11:50.477 info (28904) script.js.common.BattUeberwachung: Reaching CheckDeadBatt()
                                        javascript.0 2021-02-09 18:11:50.476 info (28904) script.js.common.BattUeberwachung: BattMinLimit Value conversion - success
                                        javascript.0 2021-02-09 18:11:50.470 info (28904) script.js.common.BattUeberwachung: 5 BatterieSpannung_30 found at fhem.0.Arbeit_Heizung.batteryLevel Umax= 3 BattMinLimit=2.4 Val= 0 SensorProzent= 0
                                        javascript.0 2021-02-09 18:11:50.470 info (28904) script.js.common.BattUeberwachung: Tempval=3 TempUnit=undefined TypeOf=string
                                        javascript.0 2021-02-09 18:11:50.470 info (28904) script.js.common.BattUeberwachung: existsState(Sensor[counter])=true typeof (getState(Sensor[counter]).val)=string getState(Sensor[counter]).val=3
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: 4 BatterieSpannung_30 found at fhem.0.WZ_Heizung.batteryLevel Umax= 3 BattMinLimit=2.4 Val= 0 SensorProzent= 0
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: Tempval=2.6 TempUnit=undefined TypeOf=string
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: existsState(Sensor[counter])=true typeof (getState(Sensor[counter]).val)=string getState(Sensor[counter]).val=2.6
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: 3 BatterieSpannung_30 found at fhem.0.Schlaf_Heizung.batteryLevel Umax= 3 BattMinLimit=2.4 Val= 0 SensorProzent= 0
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: Tempval=2.6 TempUnit=V TypeOf=string
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: existsState(Sensor[counter])=true typeof (getState(Sensor[counter]).val)=string getState(Sensor[counter]).val=2.6
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: 2 BatterieSpannung_30 found at fhem.0.Kueche_Heizung.batteryLevel Umax= 3 BattMinLimit=2.4 Val= 0 SensorProzent= 0
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: Tempval=2.7 TempUnit=undefined TypeOf=string
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: existsState(Sensor[counter])=true typeof (getState(Sensor[counter]).val)=string getState(Sensor[counter]).val=2.7
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: 1 BatterieSpannung_30 found at fhem.0.Ess_Heizung.batteryLevel Umax= 3 BattMinLimit=2.4 Val= 0 SensorProzent= 0
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: Tempval=3 TempUnit=undefined TypeOf=string
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: existsState(Sensor[counter])=true typeof (getState(Sensor[counter]).val)=string getState(Sensor[counter]).val=3
                                        javascript.0 2021-02-09 18:11:50.469 info (28904) script.js.common.BattUeberwachung: 0 BatterieSpannung_30 found at fhem.0.Bad_Heizung.batteryLevel Umax= 3 BattMinLimit=2.4 Val= 0 SensorProzent= 0
                                        javascript.0 2021-02-09 18:11:50.468 info (28904) script.js.common.BattUeberwachung: Tempval=3.1 TempUnit=undefined TypeOf=string
                                        javascript.0 2021-02-09 18:11:50.468 info (28904) script.js.common.BattUeberwachung: existsState(Sensor[counter])=true typeof (getState(Sensor[counter]).val)=string getState(Sensor[counter]).val=3.1
                                        javascript.0 2021-02-09 18:11:50.468 info (28904) script.js.common.BattUeberwachung: BattMinLimit Value conversion - success
                                        javascript.0 2021-02-09 18:11:50.468 info (28904) script.js.common.BattUeberwachung: BattMinLimit Value conversion - success
                                        javascript.0 2021-02-09 18:11:50.467 info (28904) script.js.common.BattUeberwachung: Reaching init()
                                        javascript.0 2021-02-09 18:11:50.467 info (28904) script.js.common.BattUeberwachung: Reaching main()
                                        javascript.0 2021-02-09 18:11:50.466 info (28904) script.js.common.BattUeberwachung: CreateStates fertig!
                                        pushover.0 2021-02-09 18:11:50.489 info (2053) Send pushover notification: {"device":"All","message":"Batteriestand unter Limit im Heizung bei Gerät Bad_Heizung<br>Batteriestand unter Limit im Heizung bei Gerät Ess_Heizung<br>Batteriestand
                                        javascript.0 2021-02-09 18:11:50.458 info (28904) script.js.common.BattUeberwachung: registered 0 subscriptions and 0 schedules
                                        javascript.0 2021-02-09 18:11:50.456 info (28904) script.js.common.BattUeberwachung: InitialSpannung 2 gesetzt auf 80%= 5.760000000000001
                                        javascript.0 2021-02-09 18:11:50.456 info (28904) script.js.common.BattUeberwachung: InitialSpannung 1 gesetzt auf 80%= 2.4
                                        javascript.0 2021-02-09 18:11:50.456 info (28904) script.js.common.BattUeberwachung: InitialSpannung 0 gesetzt auf 80%= 1.2
                                        javascript.0 2021-02-09 18:11:50.456 info (28904) script.js.common.BattUeberwachung: Found Function BatterieSpannung_72
                                        javascript.0 2021-02-09 18:11:50.456 info (28904) script.js.common.BattUeberwachung: Found Function BatterieSpannung_30
                                        javascript.0 2021-02-09 18:11:50.456 info (28904) script.js.common.BattUeberwachung: Found Function BatterieSpannung_15
                                        javascript.0 2021-02-09 18:11:50.456 info (28904) script.js.common.BattUeberwachung: Reaching FillWelcheFunktionVerwenden
                                        javascript.0 2021-02-09 18:11:50.455 info (28904) script.js.common.BattUeberwachung: starting Batterieüberwachung V.1.7.1
                                        javascript.0 2021-02-09 18:11:50.445 info (28904) Start javascript script.js.common.BattUeberwachung
                                        javascript.0 2021-02-09 18:11:50.435 info (28904) Stop script script.js.common.BattUeberwachung

                                        ... und nochmal vielen Dank für die tollen Scripte

                                        Gruß Kyocera007

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

                                          @kyocera007-0 Zeig mir doch bitte mal das Raw vom Datenpunkt, das sieht so aus als wär die Zahl als String deklariert.

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

                                            @pittini
                                            Bitte sehr, ich hab nix gemacht 😀

                                            {
                                              "_id": "fhem.0.Bad_Heizung.batteryLevel",
                                              "type": "state",
                                              "common": {
                                                "name": "Bad_Heizung batteryLevel",
                                                "type": "number",
                                                "role": "value",
                                                "read": true,
                                                "write": false
                                              },
                                              "native": {
                                                "Name": "Bad_Heizung",
                                                "Attribute": "batteryLevel",
                                                "Readings": true
                                              },
                                              "from": "system.adapter.fhem.0",
                                              "user": "system.user.admin",
                                              "ts": 1609172128946,
                                              "acl": {
                                                "object": 1636,
                                                "state": 1636,
                                                "owner": "system.user.admin",
                                                "ownerGroup": "system.group.administrator"
                                              }
                                            }
                                            
                                            P 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            739
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

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