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
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>[,...]][;...]
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
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.
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.