HMCCU: Frage zu Attribut "ccureadingname"

Begonnen von FFHEM, 17 Januar 2022, 17:59:09

Vorheriges Thema - Nächstes Thema

FFHEM

Hallo zap,
erst einmal vielen Dank für Deine tolle Arbeit!!!! Ich ziehe gerade meine HM-Komponenten auf HMCCU um und habe leider eine Anfängerfrage:
Ich habe eine Verständnisfrage zum obigen Attribut:
Bei einem HM-WDS40-TH-I wird bei der automatischen Definiton per HMCCU der Datenpunkt
TEMPERATURE nach measured-temp erzeugt.

Durch das Attribut
attr Gaestezimmer_Temperatur ccureadingname TEMPERATURE:temperature
wird das zusätzliche Reading temperature erzeugt. So weit, so gut.

Wenn man manuell das nun überflüssige Reading measured-temp löscht, warum erscheint dies beim nächsten Event wieder in der Readingliste?
Müsste es nicht verschwinden? Es soll ja nicht parallel existieren.

Internals:
   DEF        KEQ1058846:1
   FUUID      61e2e3bb-f33f-26cd-ee2b-ec3fe597014ada34
   IODev      d_ccu
   NAME       Gaestezimmer_Temperatur
   NR         1338
   STATE      17.5°C    57%
ok
   TYPE       HMCCUCHN
   ccuaddr    KEQ1058846:1
   ccudevstate active
   ccuif      BidCos-RF
   ccuname    Gaestezimmer_Temperatur:1
   ccurolestate WEATHER
   ccusubtype HM-WDS40-TH-I
   ccutype    HM-WDS40-TH-I
   chntype    ?
   firmware   1.3
   readonly   no
   OLDREADINGS:
   READINGS:
     2022-01-17 17:45:10   HUMIDITY        57
     2022-01-17 17:45:10   TEMPERATURE     17.5
     2022-01-17 17:34:39   activity        alive
     2022-01-17 17:34:39   battery         ok
     2022-01-17 17:45:10   devstate        ok
     2022-01-17 17:42:53   dewpoint        9.0
     2022-01-17 17:45:10   hmstate         17.5
     2022-01-17 17:45:10   humidity        57
     2022-01-17 17:45:10   measured-temp   17.5
     2022-01-17 17:34:39   rssidevice      -255
     2022-01-17 17:34:39   rssipeer        -95
     2022-01-17 17:45:10   state           17.5
     2022-01-17 17:45:10   temperature     17.5
   hmccu:
     channels   1
     detect     1
     devspec    KEQ1058846:1
     nodefaults 1
     role       1:WEATHER
     setDefaults 0
     cmdlist:
       get       
       set       
     control:
     dp:
       0.CONFIG_PENDING:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      false
           OVAL       false
           SVAL       false
           VAL        false
       0.LOWBAT:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      ok
           OVAL       false
           SVAL       ok
           VAL        false
       0.RSSI_DEVICE:
         VALUES:
           NVAL       -255
           ONVAL      -255
           OSVAL      -255
           OVAL       1
           SVAL       -255
           VAL        1
       0.RSSI_PEER:
         VALUES:
           NVAL       -95
           ONVAL      -95
           OSVAL      -95
           OVAL       161
           SVAL       -95
           VAL        161
       0.STICKY_UNREACH:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      false
           OVAL       false
           SVAL       false
           VAL        false
       0.UNREACH:
         VALUES:
           NVAL       false
           ONVAL      false
           OSVAL      alive
           OVAL       false
           SVAL       alive
           VAL        false
       1.HUMIDITY:
         VALUES:
           NVAL       57
           ONVAL      57
           OSVAL      57
           OVAL       57
           SVAL       57
           VAL        57
       1.TEMPERATURE:
         VALUES:
           NVAL       17.500000
           ONVAL      17.600000
           OSVAL      17.6
           OVAL       17.600000
           SVAL       17.5
           VAL        17.500000
     roleCmds:
       get:
       set:
     state:
       chn        1
       dpt        TEMPERATURE
Attributes:
   alias      Gästezimmer
   ccureadingname TEMPERATURE:temperature
   devStateIcon ok:measure_battery_100@green low:measure_battery_0@red
   event-on-change-reading .*
   event-on-update-reading battery.*
   group      Temperatur
   icon       temp_inside
   room       Heizung,Wetterstation
   sortby     20
   stateFormat temperature°C    humidity%
battery


Raspberry Pi 4B, Homematic, Sonoff, Shelly, Worx, Arduino, ESP8266

kjmEjfu

Zitat von: FFHEM am 17 Januar 2022, 17:59:09
attr Gaestezimmer_Temperatur ccureadingname TEMPERATURE:temperature

Wenn man manuell das nun überflüssige Reading measured-temp löscht, warum erscheint dies beim nächsten Event wieder in der Readingliste?
Müsste es nicht verschwinden? Es soll ja nicht parallel existieren.

Naja, du änderst ja nicht die Bezeichnung von measured-temp sondern von TEMPERATURE.
Wieso sollte nun also measured-temp nicht neu erscheinen?

ccureadingname <old-readingname-expr>:[[+]<new-readingname>[,...]][;...]
Migriere derzeit zu Home Assistant

FFHEM

Der Gedanke war, dass das Reading desired-temp beim automatischen Erstellen des Devices aus dem TEMPERATURE durch den gleichen/ähnlichen Mechanismus (ccureadingname) entstanden ist. Da temperature kein zusätzliches Reading zu TEMPERATURE ist, sondern das automatische desired-temp ersetzt, ist desired-temp überflüssig.

Allgemein:
Wenn man manuell einen Datenpunkt durch ccureadingname "kopiert" z. B. in "R1", dann anschließend den gleichen Datenpunkt noch einmal in "R2" kopiert (ohne das + Zeichen für zusätzliche Readings), bleibt doch nur 1 Reading "R2" über, oder habe ich das falsch verstanden?

Gruß,
Friedhelm

Raspberry Pi 4B, Homematic, Sonoff, Shelly, Worx, Arduino, ESP8266

kjmEjfu

Zitat von: FFHEM am 18 Januar 2022, 09:32:01
Der Gedanke war, dass das Reading desired-temp beim automatischen Erstellen des Devices aus dem TEMPERATURE durch den gleichen/ähnlichen Mechanismus (ccureadingname) entstanden ist. Da temperature kein zusätzliches Reading zu TEMPERATURE ist, sondern das automatische desired-temp ersetzt, ist desired-temp überflüssig.

AFAIK werden die aus den Datapoints abgeleitet und als eigenständige Readings abgelegt.

Zitat von: FFHEM am 18 Januar 2022, 09:32:01
Allgemein:
Wenn man manuell einen Datenpunkt durch ccureadingname "kopiert" z. B. in "R1", dann anschließend den gleichen Datenpunkt noch einmal in "R2" kopiert (ohne das + Zeichen für zusätzliche Readings), bleibt doch nur 1 Reading "R2" über, oder habe ich das falsch verstanden?

Richtig.
Migriere derzeit zu Home Assistant

zap

Der Readingname Mechanismus in HMCCU arbeitet nicht rekursiv. Außerdem haben die internen Regeln (wie z.B für desired-temp) Prio gegenüber denen im Attribut.
Ich denke da nochmal drüber nach. Könnte Sinn machen, das zu ändern.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB