HM-CC-RT-DN (HMCCUDEV) - Datapoints können nicht ausgelesen werden

Begonnen von chrizza87, 18 Oktober 2019, 19:26:50

Vorheriges Thema - Nächstes Thema

chrizza87

Hallo zusammen,

ich habe das Problem, dass ich weder über die FHEM Oberfläche mit get datapoint 4.ACTUAL_TEMPERATURE den Wert auslesen kann, noch über die Kommandozeile/konsole von FHEM. Bei der Oberfläche passiert einfach nichts und bei der Kommandozeile/konsole bekomme ich ein leeres Popup.

Ich nutze eine CCU3 und habe das Device mittels get ccu3 devicelist create .* t=dev f=%n defattr save automatisch erstellen lassen und nur das homebridgemapping ergänzt.

Mache ich etwas falsch oder ist das ein Bug?

Vielen dank schonmal für eure Hilfe

Gruß
Chrizza

List vom Device: (ein paar werte mit ---- rausgenommen)


Internals:
   DEF        -------
   FUUID      ---------
   IODev      ccu3
   NAME       SZ_Thermostat
   NR         293
   STATE      20.0
   TYPE       HMCCUDEV
   ccuaddr    --------
   ccudevstate active
   ccuif      BidCos-RF
   ccuname    SZ_Thermostat
   ccutype    HM-CC-RT-DN
   channels   7
   firmware   1.5
   statevals  devstate
   READINGS:
     2019-10-18 19:20:04   4.ACTUAL_TEMPERATURE 23.7
     2019-10-18 19:20:04   4.BATTERY_STATE 3.0
     2019-10-18 19:20:04   4.CONTROL_MODE  MANU
     2019-10-18 19:20:04   4.PARTY_TEMPERATURE 5.0
     2019-10-18 19:20:04   4.SET_TEMPERATURE 20.0
     2019-10-18 19:20:04   4.VALVE_STATE   0
     2019-10-18 19:20:04   control         20.0
     2019-10-18 19:20:04   hmstate         20.0
     2019-10-18 19:20:04   state           20.0
   hmccu:
     devspec    -------
     dp:
       0.AES_KEY:
         OVAL       0
         VAL        0
       0.CONFIG_PENDING:
         OVAL       false
         VAL        false
       0.DEVICE_IN_BOOTLOADER:
         OVAL       false
         VAL        false
       0.INHIBIT:
         OVAL       false
         VAL        false
       0.LOWBAT:
         OVAL       false
         VAL        false
       0.RSSI_DEVICE:
         OVAL       199
         VAL        199
       0.RSSI_PEER:
         OVAL       192
         VAL        192
       0.STICKY_UNREACH:
         OVAL       true
         VAL        true
       0.UNREACH:
         OVAL       false
         VAL        false
       0.UPDATE_PENDING:
         OVAL       false
         VAL        false
       4.ACTUAL_TEMPERATURE:
         OSVAL      23.9
         OVAL       23.900000
         SVAL       23.7
         VAL        23.700000
       4.BATTERY_STATE:
         OSVAL      3.0
         OVAL       3.000000
         SVAL       3.0
         VAL        3.000000
       4.BOOST_STATE:
         OVAL       0
         VAL        0
       4.CONTROL_MODE:
         OSVAL      MANU
         OVAL       1
         SVAL       MANU
         VAL        1
       4.FAULT_REPORTING:
         OVAL       0
         VAL        0
       4.PARTY_START_DAY:
         OVAL       1
         VAL        1
       4.PARTY_START_MONTH:
         OVAL       1
         VAL        1
       4.PARTY_START_TIME:
         OVAL       0
         VAL        0
       4.PARTY_START_YEAR:
         OVAL       0
         VAL        0
       4.PARTY_STOP_DAY:
         OVAL       1
         VAL        1
       4.PARTY_STOP_MONTH:
         OVAL       1
         VAL        1
       4.PARTY_STOP_TIME:
         OVAL       0
         VAL        0
       4.PARTY_STOP_YEAR:
         OVAL       0
         VAL        0
       4.PARTY_TEMPERATURE:
         OSVAL      5.0
         OVAL       5.000000
         SVAL       5.0
         VAL        5.000000
       4.SET_TEMPERATURE:
         OSVAL      20.0
         OVAL       20.000000
         SVAL       20.0
         VAL        20.000000
       4.VALVE_STATE:
         OSVAL      0
         OVAL       0
         SVAL       0
         VAL        0
Attributes:
   IODev      ccu3
   alias      Schlafzimmerheizung
   ccureadingfilter (TEMPERATURE|VALVE_STATE|CONTROL|BATTERY_STATE)
   cmdIcon    Auto:sani_heating_automatic Manu:sani_heating_manual Boost:sani_heating_boost on:general_an off:general_aus
   controldatapoint 4.SET_TEMPERATURE
   eventMap   /datapoint 4.MANU_MODE 20.0:Manu/datapoint 4.AUTO_MODE 1:Auto/datapoint 4.BOOST_MODE 1:Boost/datapoint 4.MANU_MODE 4.5:off/datapoint 4.MANU_MODE 30.5:on/
   genericDeviceType thermostat
   group      Heizung
   hmstatevals FAULT_REPORTING!1:valve_tight,2:range_too_large,3:range_too_small,4:communication_error,5:other_error,6:battery_low,7:valve_error_pos
   homebridgeMapping TargetTemperature=4.SET_TEMPERATURE::4.SET_TEMPERATURE,,minValue=5,maxValue=30,minStep=0.5,cmd=control,nocache=true CurrentTemperature=4.ACTUAL_TEMPERATURE
   icon       hm-cc-rt-dn
   room       04_Schlafzimmer,97_Homekit
   statedatapoint 4.SET_TEMPERATURE
   stripnumber 1
   substexcl  control
   substitute CONTROL_MODE!0:AUTO,1:MANU,2:PARTY,3:BOOST;SET_TEMPERATURE!#0-4.5:off,#30.5-40:on;FAULT_REPORTING!0:no,1:valve_tight,2:range_too_large,3:range_too_small,4:communication_error,5:other_error,6:battery_low,7:valve:error_pos
   webCmd     control:Auto:Manu:Boost:on:off
   widgetOverride control:slider,4.5,0.5,30.5,1

zap

Das Reading ist ja da und hat den gleichen Zeitstempel wie die anderen.

Du könntest mal noch event-on-update-reading setzen.

Oder mal mit set clear alle Readings löschen und dann nochmal get datapoint oder get update ausführen, um zu sehen, ob das Reading neu angelegt wird.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

chrizza87

Danke für die Antwort. Werde ich gleich heute Mittag mal testen und berichten.

chrizza87

Habe event-on-update-reading auf .* gesetzt und ein clear gemacht. Werte sind wieder da in den Readings (Zeitstempel stimmt).

Aber mit get SZ_Thermostat datapoint 4.ACTUAL_TEMPERATURE bekomme ich wieder nur ein leeres popup und auch über die Oberfläche im Device passiert immer noch nichts (wie vorher).

Hat also leider nichts bewirkt :-(

zap

Also bei mir funktioniert die Aktualisierung mit diesem Befehl. Das mit dem Popup ist noch ein Bug. Falls sich der Zeitstempel im Reading nicht verändert, aktualisiere mal die Browser-Seite.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

chrizza87

Ja die Aktualisierung der readings geht auch (auf der oberfläche sichtbar). Aber ich kann den Datenpunkt nicht über den get auslesen.

Dies will ich nämlich später über ....webhook?cmd=get%20SZ_Thermostat%20datapoint%204.ACTUAL_TEMPERATURE&... machen. Leider kommt dabei aber auch kein Wert raus.

Oder gibt es noch eine andere Möglichkeit an den Wert (von "außen") zu kommen?

zap

Sorry, von Webhook habe ich keine Ahnung. Weiß auch nicht, welche Voraussetzungen ein Modul erfüllen muss, damit das funktioniert. Scheint mir jetzt auch kein Homematic Thema zu sein.
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

amenomade

Also... "get Thermostat datapoint x" ist hier kein Kommando, das einen einzigen Wert als JSON o.ä. zurück bringt, sondern ein FHEM Kommando, das die Aktualisierung des Readings im Device anstosst.

Ich weiss nicht genau, was Du machen möchtest, aber vielleicht wäre cmd=jsonlist2 https://fhem.de/commandref_DE.html#JsonList2 oder cmd=list https://fhem.de/commandref_DE.html#list besser
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

chrizza87

Hey danke für den Tipp! Ich bin davon ausgegangen das der get mir auch den wert zurückliefert, danke für die Aufklärung, dass er damit nur den Wert aktualisiert.

Ich will nur an das Reading kommen sonst nichts. Am besten mit einem FHEM Befehl. Vorher hatte ich die CULFW und dort gab es die measured-temp als get. Deswegen dachte ich auch, dass mir dass get den Wert liefert.

Also ich kann nur mit JSONLIST auf das Reading zugreifen?

amenomade

Probier mal im Kommandofeldjsonlist2 SZ_Thermostat STATE, du wirst selbst sehen
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

chrizza87

Dank dir. Ja so geht es. Schöner wäre natürlich nur das reading auslesen zu können, wie vorher beim "CULFW Device" :-)

Danke für eure Hilfe, ich habe es nun mit jsonlist2 einfach gelöst und mir dann über Swift das Attribut aus dem JSON geholt.