readingsgroup Batterie HmIP

Begonnen von TiPpFeHlEr, 20 Dezember 2020, 10:16:02

Vorheriges Thema - Nächstes Thema

TiPpFeHlEr

Hi Leute,

ich habe mehere HmIP Geräte, und benutze eine readingsgroup zum anzeigen der Batterien und Erreichbarkeiten.
defmod HmIp_battery readingsGroup .*:0.OPERATING_VOLTAGE
attr HmIp_battery room HomeMatic
attr HmIp_battery valueFormat {return "0" if( $VALUE eq "low" );;;; return "100" if( $VALUE eq "ok" );;;;return "0" if( $VALUE < 2.2 );;;; return "25" if( $VALUE < 2.3 );;;; return "50" if( $VALUE < 2.4 );;;; return "75" if( $VALUE < 2.5 );;;; return "100"}
attr HmIp_battery valueIcon {'0.OPERATING_VOLTAGE.0' => 'measure_battery_0@red','0.OPERATING_VOLTAGE.25' => 'measure_battery_25@red','0.OPERATING_VOLTAGE.50' => 'measure_battery_50@orange','0.OPERATING_VOLTAGE.75' => 'measure_battery_75@green','0.OPERATING_VOLTAGE.100' => 'measure_battery_100@green'}


im LOG erscheinen nun massenweise verbos 5 Einträge, im Sekunden Bruchteil Takt

2020.12.20 09:59:05 5 : HmIp_REACH: not on any display, ignoring notify
2020.12.20 09:59:05 5 : HmIp_battery: not on any display, ignoring notify


was habe ich falsch gemacht??

Grüße Maik

zap

Ich glaube, Du vermischst hier mehrere Werte der Geräte. HMCCU erzeugt ein Reading "battery". Dieses Reading basiert auf den Datenpunkten LOWBAT und LOW_BAT (EQ3 ist hier leider nicht konsequent). Diese können den Zustand true oder false einnehmen, was HMCCU in "battery" = "low" oder "ok" übersetzt.

Der Datenpunkt OPERATING_VOLTAGE hingegen enthält immer numerische Werte. Niemals "low" oder "ok". Bei seiner Verwendung muss man beachten, dass nur wenige Geräte überhaupt diesen Datenpunkt besitzen.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)