NEWS
[Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe
-
@kgb sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:
Vielen Dank für die tolle Visualisierung. Alle meine Geräte werden zurzeit rot angezeigt obwohl die Prozentanteil für die Batterie noch über 80% liegt (teilweise 100%). Was mache ich falsch? Vielen Dank im Voraus!
Der shelly ganz unten im Screenshot hat ne undefined Spannung, korrigier das mal, kann sein dass da das Problem liegt.
-
@pittini ich habe das Gerät aus der Aufzählung gelöscht, hat aber leider nicht geholfen.
Was ich aber gemerkt habe, die Auswertung findet nur in der erste Zeile statt. Ich habe mehrer Geräte gelöscht und wieder hinzugefügt, aber jedes Mal ist das so, dass ab der 2 Zeile alle Geräte rot sind. -
@pittini P.S.: ich habe auch ehrlich gesagt nicht ganz verstanden wie es mit der Messung von Volt funktioniert.. kann man diese Funktion ausschalten, damit einfach nur auf Prozente der Batterieladung geschaut wird? Vielleicht, liegt das Problem auch da..
-
@kgb sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:
@pittini P.S.: ich habe auch ehrlich gesagt nicht ganz verstanden wie es mit der Messung von Volt funktioniert.. kann man diese Funktion ausschalten, damit einfach nur auf Prozente der Batterieladung geschaut wird? Vielleicht, liegt das Problem auch da..
Prozente sind ja nur ne andere Angabe der Spannung, also nein, kann man nicht ausschalten, braucht man nicht ausschalten. Zeig doch mal nen Screenshot aus der Objektliste wo ich seh wie Du die Batteriespannungsfunktion setzt und wo. Und falls Du Änderungen an den Skriptsettings gemacht hast, bitte auch davon nen Auszug.
Wenn Du Geräte aus den Aufzählungen dazunimmst oder raus löschst, mußte den JS Controller danach neustarten damit der das neu einliest. Haste das gemacht? -
@pittini hier sind ein paar Screenshots. Danke für deine Unterstützung!!! ![IMG_3269.jpeg](/assets/uploads/files/1636999083 169-img_3269-resized.jpeg)
-
-
@kgb gemäß Script gibt es eine Variable "FunktionBaseName" (vorbelegt meine ich mit "BatterieSpannung_") diese muss dann für die jeweiligen Batteriespannungen verwendet werden.
Beispiele:
Geräte mit 3V Batteriespannung müssen in die Funktion "BatterieSpannung_30"
Geräte mit 1,5V Batteriespannung müssen in die Funktion "BatterieSpannung_15"
usw.Aus dem Zahlenwert wird ggf. die Sollspannung berechnet. Bei dir sind es 1V, was bei 50% dann eben nur 0,5V Ist-Spannung ergibt, also quasi 0.
-
@kgb Also zum einen ist der Raum falsch zugeordnet, das ganze Gerät ist in diesem Raum und nicht nur ein Datenpunkt. Zum anderen, wenn Du Bat_10 verwendest, mußte das auch in den Einstellungen im Skript anpassen. Wobei ich jetzt weder ein Gerät kenne, noch ne Batterie mit 1V. Siehe auch was @Chrunchy völlig korrekt anmerkte.
-
Hallo,
Version 1.8.2
iobroker alles auf Stand, JavaScript 5.2.8alles nach Anweisung eingebaut. Es kommen aber zunächst folgende Fehlermeldungen:
javascript.0 2021-11-16 11:19:08.110 error at CheckNextLowBatt (script.js.tmpNoRun.**Batterieüberwachung:379**:97) javascript.0 2021-11-16 11:19:08.109 error Error in callback: TypeError: Cannot read property 'toFixed' of undefined javascript.0 2021-11-16 11:20:37.885 error at MakeTable (script.js.tmpNoRun.**Batterieüberwachung:578**:105) javascript.0 2021-11-16 11:20:37.884 error Error in callback: TypeError: Cannot read property 'common' of null javascript.0 2021-11-16 11:22:06.519 error at MakeTable (script.js.tmpNoRun.**Batterieüberwachung:587**:75) javascript.0 2021-11-16 11:22:06.519 error Error in callback: TypeError: Cannot read property 'toFixed' of undefined
Aktiviert (BatterieSpannung_30) ist zunächst nur ein homematic Heizkörperventil:
Ich habe hoffentlich alle Kommentare gelesen aber nichts für mich auffälliges entdeckt.
Evtl. hat jmd, eine Idee bevor ich anfange zu debuggen?Gruß TS
-
@kgw Na, das kann nicht gehen. Du hast die Funktion dem ganzen Gerät zugeordnet, das ist sinnfrei. Die Funktion ist nur einem Datenpunkt zuzuweisen, der Raum dem ganzen Gerät, steht auch explizit so in der Anleitung inkl. Screenshot.
-
@pittini Herzlichen Dank!
im Eifer des Gefechts total übersehen! Wie üblich: Lesen hilft.
Werde ich heute abend gleich checken.Heute Abend:
Kaum macht man's richtig... -
@pittini
Hi, ich habe jetzt endlich mal wieder die Zeit gefunden mich um das Update deiner Scripte zu kümmern.
Es hat auch soweit alles funktioniert nur bei der Funktion für den DeadCheck stehe ich irgendwie auf dem Schlauch.
Viele der DP heißen "unreach" (z. B. ALiasse und HM) und liefern daraus resultierend ein false für OK. Das wird aber leider von deinem Script als "nicht erreichbar" interpretiert.
Muss ich da was konfigurieren damit es unreach und reachable kann? -
@mike-hellracer sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:
Viele der DP heißen "unreach" (z. B. ALiasse und HM) und liefern daraus resultierend ein false für OK. Das wird aber leider von deinem Script als "nicht erreichbar" interpretiert.
Muss ich da was konfigurieren damit es unreach und reachable kann?Das is aber seltsam, weil dem Deadcheck vollkommen egal ist was im Datenpunkt steht, der schaut nur aufn Zeitstempel, wann, welcher Wert auch immer, aktualisiert wurde. Versuch das bitte mal einzugrenzen und schau ob da aktualisiert wurde, sonst is die Meldung klar.
-
@pittini
Ja der Zeitstempel ist ein paar Tage alt.Zigbee Wassermelder:
-available aktualisiert nur bei Auslösung
Ggf. den DP Batterie nutzen oder kann man da was anpassen?HM Fenstersensoren
- alle Werte aktualisieren maximal bei Auslösung
Hast du ggf. eine Idee, oder noch besser eine Lösung?
-
@mike-hellracer Wenn das Gerät tatsächlich keinen Datenpunkt hat, der regelmäßig aktualisiert wird, isses auch nicht möglich rauszufinden ob das Gerät tot ist, dann mußt dich halt auf reach/unreach bzw. die Batteriespannungsanzeige verlassen.
-
@pittini
OK danke dir trotzdem.
Ich schaue mal was ich finden kann. -
Hallo Zusammen,
benutze die Version 1.8.2 bei den Jeelinkgeräten bekomme ich eine Batteriewarnmldug obwohl alles ok ist. Kann jemand helfen?
Anbei die Screenshots. Es ist ein boolean Wert und steht auf false bzw 0. Bedeutet Batterie ist ok.
Bitte um Hilfe.Vielen Dank
G ROBudus
-
@robudus Ich frag mich grad woher die 0 kommt, das RAW gibt das eigentlich nicht her. Der DP ist als Bool definiert, deswegen erwartet das Skript da auch nen Bool, also true oder false.
-
@pittini
sorry, aber ich habe noch ein Problem oder vlt nur ein Missverständnis.
Wenn der Name des Sensor mehrsprachig ist wird für den Name des Sensor [Object] [Object] angezeigt.
Oder sollte da der de Name der Funktion stehen? -
@mike-hellracer sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:
Wenn der Name des Sensor mehrsprachig ist wird für den Name des Sensor [Object] [Object] angezeigt.
Oder sollte da der de Name der Funktion stehen?Änder mal bitte wie aufm Bild zu sehen und sag obs dann klappt bitte.
Und hier als Text zum kopieren:
if (TblShowDeviceNameCol) { let tempName = getObject(GetParentId(Sensor[x].id), "common").common.name; if (typeof tempName == "object") tempName = tempName.de; MyTable += "<td " + style0 + BgColor + "'>" + tempName + "</td>"; };