FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Ruggy am 01 Februar 2023, 15:08:13

Titel: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 01 Februar 2023, 15:08:13
Hallo,
ich hab im Bad einen Temperatursenor von Xiaomi (Temperatur, Luftfeuchte, Luftdruck).

Dieser zeigt im SVG-DbLog auf einmal eine kurze Zeit manchmal -100 Grad an.
Das Diagramm zeigt mir eigentlich die Temperatur und Ventilstellung vom Homatic Heizkörper-Thermostat an.

Die Verbindung sollte eigentlich passen. Xiaomi-Sensor und Conbee USB Stick sind ca. 5 m auseinander.

An was könnte das liegen?

List vom SVG-DbLog:

Internals:
   DEF        DbLog:SVG_DbLog_18:HISTORY
   FUUID      632cd4b4-f33f-194f-305c-ac912734565c29c5
   GPLOTFILE  SVG_DbLog_18
   LOGDEVICE  DbLog
   LOGFILE    HISTORY
   NAME       SVG_DbLog_18
   NR         590
   STATE      initialized
   TYPE       SVG
   helper:
     bm:
       SVG_Set:
         cnt        5
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        01.02. 14:59:55
         max        7.20024108886719e-05
         tot        0.000308036804199219
         mAr:
           HASH(0x53c53e0)
           SVG_DbLog_18
           ?
Attributes:
   room       Heizung


List vom Xiaomi Device:

Internals:
   DEF        sensor 52  IODev=deCONZ
   FUUID      633c6d71-f33f-194f-900b-400549e7b3e7f7d9
   FVERSION   31_HUEDevice.pm:0.262040/2022-07-09
   ID         S52
   INTERVAL   
   IODev      deCONZ
   NAME       BAD_LUFTFEUCHTE
   NR         618
   STATE      ???
   TYPE       HUEDevice
   eventCount 1227
   has_events 1
   lastannounced 2022-12-09T20:54:12Z
   manufacturername LUMI
   modelid    lumi.weather
   name       Multi_Bad
   on         1
   reachable  1
   swversion  20191205
   type       ZHAHumidity
   uniqueid   00:15:8d:00:07:5f:64:bb-01-0405
   Helper:
     DBLOG:
       absFeuchte:
         DbLog:
           TIME       1675258764.63083
           VALUE      8.1
       dewpoint:
         DbLog:
           TIME       1675258764.63083
           VALUE      8.3
       humidity:
         DbLog:
           TIME       1675258764.63083
           VALUE      52.86
       temperature:
         DbLog:
           TIME       1675260311.7562
           VALUE      18.09
   READINGS:
     2023-01-31 19:57:03   IODev           deCONZ
     2023-02-01 14:39:24   absFeuchte      8.1
     2023-02-01 14:39:24   battery         82
     2023-02-01 14:39:24   batteryPercent  82
     2023-02-01 14:39:24   dewpoint        8.3
     2023-02-01 14:39:24   humidity        52.86
     2023-02-01 14:39:24   lastseen        2023-02-01T13:39Z
     2023-02-01 14:39:24   reachable       1
     2023-02-01 15:05:11   temperature     18.09
   helper:
     devtype    S
     state     
     update_timeout 1
     bm:
       HUEDevice_Get:
         cnt        2
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        01.02. 15:02:31
         max        4.31537628173828e-05
         tot        8.51154327392578e-05
         mAr:
           HASH(0x541f848)
           BAD_LUFTFEUCHTE
           ?
       HUEDevice_Set:
         cnt        15
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        31.01. 19:58:16
         max        0.0160560607910156
         tot        0.0237405300140381
         mAr:
           HASH(0x541f848)
           BAD_LUFTFEUCHTE
           ?
     configList:
     json:
       ep         1
       etag       d19c5db4536f7d760319a73a84a3e544
       lastannounced 2022-12-09T20:54:12Z
       lastseen   2023-02-01T13:39Z
       manufacturername LUMI
       modelid    lumi.weather
       name       Multi_Bad
       swversion  20191205
       type       ZHAHumidity
       uniqueid   00:15:8d:00:07:5f:64:bb-01-0405
       config:
         battery    82
         offset     0
       state:
         humidity   5286
         lastupdated 2023-02-01T13:39:24.600
     setList:
Attributes:
   event-on-update-reading absFeuchte,dewpoint,humidity,temperature
   model      lumi.weather
   room       Bad,deCONZ_Geräte
   userReadings temperature {ReadingsVal("BAD_TEMPERATUR","temperature",0)}


Vielen Dank
Viele Grüße
Ruggy
Titel: Antw:Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 01 Februar 2023, 18:35:15
kurz nach 18:00 wurde wieder -100 Grad angezeigt:

Hier der Auszug aus dem Event Monitor bzgl. den Temperaturen (eine vor und eine nach den -100 Grad):


2023-02-01 17:38:56 HUEDevice BAD_TEMPERATUR temperature: 17.93
2023-02-01 18:02:04 HUEDevice BAD_TEMPERATUR temperature: -100
2023-02-01 18:02:15 HUEDevice BAD_TEMPERATUR temperature: 18.22
Titel: Antw:Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 04 Februar 2023, 21:41:47
Hat dieses Phänomen noch niemand gehabt?
Oder eine tip, was ich machen könnte?

Passiert immer noch. ca 4x täglich
Titel: Antw:Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: rakete123 am 05 Februar 2023, 08:12:26
Ich hatte es auch schon und ich meine es war ein Anzeichen einer schwachen Batterie.
Titel: Antw:Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Gisbert am 05 Februar 2023, 08:31:39
Hallo Ruggy,

an der Optik des Diagramms kannst du was ändern, indem nur die Werte innerhalb eines Bereichs geloggt werden, außerhalb des Bereichs wird nichts geloggt.
Schau dir dazu bei FileLog das Attribut acceptedRange an, als Beispiel sieht es bei mir so aus:
acceptedRange 1:10:35:temperature 1:0:35:Temperature

Eine andere Möglichkeit besteht beim SVG-Plot die geloggten, aber unerwünschten Werte auszusortieren, z.B. so im Feld Function:
$fld[3]<10||$fld[3]>35?"":$fld[3

Viele Grüße Gisbert
Titel: Antw:Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 05 Februar 2023, 12:56:09
Die Batterie würde 82% anzeigen.

Mit einen Batteriemessgerät wird auch gut angezeigt.


Das mit dem Bereich einstellen kann ich für eine andere Sache evlt. gut gebrauchen.

Für diesen Sensor, welcher Probleme macht, kann ich es aber nicht verwenden, weil mit diesem ein Heizkörperthermostat gesteuert wird.
Titel: Antw:Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: MadMax-FHEM am 05 Februar 2023, 13:23:11
Andere Alternative: userReadings

Da dann korrigieren und das userReadings zur Steuerung nehmen...

Gruß, Joachim
Titel: Antw:Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: DeeSPe am 05 Februar 2023, 14:25:05
Ich hätte auch noch einen Vorschlag einzuwerfen: readingsChange !
Das könnte so funktionieren:
attr BAD_LUFTFEUCHTE oldreadings temperature

define rc_BAD_LUFTFEUCHTE_temperature readingsChange BAD_LUFTFEUCHTE temperature (.+) {$1!=-100?$1:OldReadingsVal('BAD_LUFTFEUCHTE','temperature',0)}


Damit wird der Wert vom Reading 'temperature' auf den vorherigen Wert gesetzt falls er den Wert -100 hat.

Gruß
Dan
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 24 August 2023, 13:53:03
Ich möchte mein eigenes Thema nochmal ansprechen, weil ich mit diesem "Phänomen" jetzt bei immer mehr Xiaomi Sensoren ein Problem habe.

Wie im Eröffnungsthread geschrieben habe ich im SVG-DbLog täglich mehrmals Ausschläge von -100 Grad.

Die bereits genannten Vorschläge würden die "Symptome" beseitigen aber nicht die Ursache für dieses Verhalten. Vor allem, weil es vorher nicht so oft war.

Woher können diese Ausschläge kommen.
Hat noch jemand eine andere Idee?


Kann es am Empfang liegen? (Bisher hat es aber so auch funktioniert)

Wie kann ich vorgehen um der Sache auf den Grund zu gehen?

Danke
Gruß
Ruggy
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 27 August 2023, 11:00:05
Hier z.B. das List vom Sensor in der Küche mit dem Ausschlag -100

Der Xiaomi Sensor hat ja Temperatursensor und Luftfeuchtigkeitssensor in einem Gerät. Habe hierzu zwei Devices eingerichte (HUESensor65, HUESensor66).

Mit einem userReadings hole ich mir den Temperaturwert in das Device für die Luftfeuchtigkeit um den Taupunkt zu berechnen.
Der SVG- Plot holt sich die Temperatur vom Feuchtigkeits-Device (also vom user Readings).

Sollte ich evlt. die Temperatur direkt vom Temperatur-Device holen?
Oder spielt das bzgl. der -100 Grad keine Rolle?

Internals:
   DEF        DbLog:SVG_DbLog_21:HISTORY
   FUUID      62de9224-f33f-f59f-6d23-3551adbb890fe4b4
   GPLOTFILE  SVG_DbLog_21
   LOGDEVICE  DbLog
   LOGFILE    HISTORY
   NAME       SVG_DbLog_21
   NR         175
   STATE      initialized
   TYPE       SVG
   helper:
     bm:
       SVG_Set:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 10:53:27
         max        5.41210174560547e-05
         tot        5.41210174560547e-05
         mAr:
           HASH(0x46ff7d8)
           SVG_DbLog_21
           ?
Attributes:
   room       Küche_OG

List vom Temperatursensor der Küche:

Internals:
   DEF        sensor 66  IODev=deCONZ
   FUUID      6339d54c-f33f-f59f-a638-827bd2277898bf64
   FVERSION   31_HUEDevice.pm:0.267300/2022-11-21
   ID         S66
   INTERVAL  
   IODev      deCONZ
   NAME       HUESensor66
   NR         181
   STATE      ???
   TYPE       HUEDevice
   has_events 1
   manufacturername LUMI
   modelid    lumi.weather
   name       Küche-OG
   on         1
   reachable  1
   swversion  20161129
   type       ZHATemperature
   uniqueid   00:15:8d:00:02:b5:45:19-01-0402
   READINGS:
     2023-08-25 07:47:09   IODev           deCONZ
     2023-08-27 10:29:04   battery         65
     2023-08-27 10:29:04   batteryPercent  65
     2023-08-27 10:29:04   lastseen        2023-08-27T08:28Z
     2023-08-27 10:29:04   reachable       1
     2023-08-27 10:29:04   temperature     24.38
   helper:
     devtype    S
     state     
     update_timeout 1
     bm:
       HUEDevice_Get:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 10:54:30
         max        6.60419464111328e-05
         tot        6.60419464111328e-05
         mAr:
           HASH(0x443be50)
           HUESensor66
           ?
       HUEDevice_Set:
         cnt        6
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.08. 07:48:47
         max        0.0166890621185303
         tot        0.0192441940307617
         mAr:
           HASH(0x443be50)
           HUESensor66
           ?
     configList:
     json:
       ep         1
       etag       03f311653d8a9003635bc45a0e7627b4
       lastannounced
       lastseen   2023-08-27T08:28Z
       manufacturername LUMI
       modelid    lumi.weather
       name       Küche-OG
       swversion  20161129
       type       ZHATemperature
       uniqueid   00:15:8d:00:02:b5:45:19-01-0402
       config:
         battery    65
         offset     0
       state:
         lastupdated 2023-08-27T08:29:04.976
         temperature 2438
     setList:
Attributes:
   IODev      deCONZ
   alias      KUECHE_TEMPERATUR
   event-on-change-reading state
   group      HUESensor
   model      lumi.weather
   room       Küche_OG,deCONZ_Geraete

List vom Feuchtigkeitssensor der Küche:

Internals:
   DEF        sensor 65  IODev=deCONZ
   FUUID      6339d54c-f33f-f59f-fd73-38e1cf0c416bc676
   FVERSION   31_HUEDevice.pm:0.267300/2022-11-21
   ID         S65
   INTERVAL  
   IODev      deCONZ
   NAME       HUESensor65
   NR         180
   STATE      ???
   TYPE       HUEDevice
   eventCount 3387
   has_events 1
   manufacturername LUMI
   modelid    lumi.weather
   name       Küche-OG
   on         1
   reachable  1
   swversion  20161129
   type       ZHAHumidity
   uniqueid   00:15:8d:00:02:b5:45:19-01-0405
   Helper:
     DBLOG:
       absFeuchte:
         DbLog:
           TIME       1693124944.88061
           VALUE      0.0
       dewpoint:
         DbLog:
           TIME       1693124944.88061
           VALUE      -102.3
       humidity:
         DbLog:
           TIME       1693124944.88061
           VALUE      61.7
       temperature:
         DbLog:
           TIME       1693126513.28775
           VALUE      24.38
   READINGS:
     2023-08-25 07:47:09   IODev           deCONZ
     2023-08-27 10:29:04   absFeuchte      0.0
     2023-08-27 10:29:04   battery         65
     2023-08-27 10:29:04   batteryPercent  65
     2023-08-27 10:29:04   dewpoint        -102.3
     2023-08-27 10:29:04   humidity        61.7
     2023-08-27 10:29:04   lastseen        2023-08-27T08:28Z
     2023-08-27 10:29:04   reachable       1
     2023-08-27 10:55:13   temperature     24.38
   helper:
     devtype    S
     state     
     update_timeout 1
     bm:
       HUEDevice_Get:
         cnt        2
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 10:55:09
         max        8.98838043212891e-05
         tot        0.000142812728881836
         mAr:
           HASH(0x46f7e50)
           HUESensor65
           ?
       HUEDevice_Set:
         cnt        11
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.08. 07:48:47
         max        0.0166151523590088
         tot        0.022165060043335
         mAr:
           HASH(0x46f7e50)
           HUESensor65
           ?
     configList:
     json:
       ep         1
       etag       ac41b1ca09f8fb97635ea72adf05c83b
       lastannounced
       lastseen   2023-08-27T08:28Z
       manufacturername LUMI
       modelid    lumi.weather
       name       Küche-OG
       swversion  20161129
       type       ZHAHumidity
       uniqueid   00:15:8d:00:02:b5:45:19-01-0405
       config:
         battery    65
         offset     0
       state:
         humidity   6170
         lastupdated 2023-08-27T08:29:04.849
     setList:
Attributes:
   IODev      deCONZ
   alias      KUECHE_LUFTFEUCHTIGKEIT
   event-on-update-reading absFeuchte,dewpoint,humidity,temperature
   group      HUESensor
   model      lumi.weather
   room       Küche_OG,deCONZ_Geraete
   userReadings temperature {ReadingsVal("HUESensor66","temperature",0)}


2023-08-27_10h59_30.jpg
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: TomLee am 27 August 2023, 11:58:52
ZitatWie kann ich vorgehen um der Sache auf den Grund zu gehen?

Hast du denn zwischenzeitlich mal neue Batterien ausprobiert ?

Ich vermute das die 82% (aus dem ersten Thread) schon die Grenze sind mit der so ein Device betrieben werden kann, auch wenn das Batteriemessgerät noch gut anzeigt (das sind dann vermutlich 2,5 V und einfach zu wenig).

Die 65% aus dem zuletzt gezeigten Device sind mMn. definitiv zu wenig.

Wechsel halt mal die Batterien !
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 27 August 2023, 12:25:35
Die Batterie hatte ich damals gewechselt.
Evlt. war die "neue" damals auch nicht mehr so gut. Laut Messgerät aber schon... (ist aber evlt. dann nicht so zuverlässig).
Werde ich demnächst machen. Die nächsten Tage bin ich aber nicht daheim.
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 27 August 2023, 12:27:29
Beitrag verschwunden...:

Es hatte gerade noch ein User auf meine Frage geantwortet. Den Usernamen habe ich mir leider nicht gemerkt.

Wollte jetzt noch darauf antworten.
Jetzt ist der komplette Beitrag nicht mehr im Thread.
Wie kann das sein?
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 27 August 2023, 13:30:00
evlt. könnte der User seine Antwort nochmal einstellen, weil es mir evlt. weitergeholfen hätte.

ging hauptsächlich um event-on-change.. und wo das UserReadings die Daten her holt...
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: MadMax-FHEM am 27 August 2023, 15:17:18
Zitat von: Ruggy am 27 August 2023, 13:30:00evlt. könnte der User seine Antwort nochmal einstellen, weil es mir evlt. weitergeholfen hätte.

ging hauptsächlich um event-on-change.. und wo das UserReadings die Daten her holt...

Naja, nachdem ich in den anderen Thread geschaut habe und dort gesehen habe, dass tatsächlich der Sensor selbst wohl falsche Werte liefert (was man hier ja nicht sieht, hier ist "nur" dewpoint "flasch"), habe ich meine Anmerkungen/Thread zurückgezogen (aka: gelöscht).

Aber wenn du denkst es könnte helfen:

1. dein (jedes) userReadings wird getriggert von Events des Devices an dem es "hängt", also nicht, wenn sich an dem Device wo die Daten herkommen etwas ändert.

2. dein userReadings hat KEINEN Trigger und wird so bei allen Events "ausgewertet" -> der Wert wird geholt und dewpoint berechnet (sofern Events kommen)
-> ich würde das userReadings zumindest auf Events von humidity beschränken (Trigger), denn auch nur dann macht es Sinn den dewpoint neu berechnen zu lassen?

Deine even-on- Attribute sehen auch "eigenartig" aus.
Schon mal im Eventmonitor verfolgt, was da so kommt...
...oder auch nicht kommt?

Dann fehlt das list des dewpoint-Devices...

Aber wie geschrieben, das bezieht sich alles auf den "falschen" dewpoint, den man sieht.

Denn (mir) unklar ist was die Graphen zeigen, weil nicht angegeben ist, wo die Daten herkommen usw.

Von falschen Werten direkt von den Sensoren ist HIER nichts zu sehen (oder ich hab's übersehen)...

Gruß, Joachim
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 27 August 2023, 19:13:39
@MadMax-FHEM

Danke, dass Du deinen Beitrag nochmal eingestellt hast; mich hat es gewundert, dass er weg war, während ich geschrieben habe.

Sicher bin ich mir nicht, ob es mich bzgl. den -100 Grad weiter bringt.
Andererseits ist es aber so, dass anscheinend auch etwas mit den event-on-... grundsätzlich nicht stimmt und/oder ich es nicht richtig verstanden habe.

Zitat von: MadMax-FHEM am 27 August 2023, 15:17:18Naja, nachdem ich in den anderen Thread geschaut habe und dort gesehen habe, dass tatsächlich der Sensor selbst wohl falsche Werte liefert
Meinst Du den Thread mit "Readings aktualisieren sich nicht richtig"?
Hier ist eigentlich der Sensor im Keller betroffen, welcher ein anderes Verhalten zeigt, aber keine -100 Grad Werte liefert.


Das "event-on-change-reading" beim Temperatur-Device war auf state gesetzt. Das war denke ich grundsätzlich falsch, weil es gar kein state gibt.
Habe es jetzt auf temperature geändert.

Oder wäre dies hier wiederum auch nicht so wichtig, weil die Temperatur durch das userReadings im Feuchtigkeits-Device geholt wird (wegen Deiner folgenden Erklärung; wenn ich es richtig verstanden habe)?:
Zitat von: MadMax-FHEM am 27 August 2023, 15:17:181. dein (jedes) userReadings wird getriggert von Events des Devices an dem es "hängt", also nicht, wenn sich an dem Device wo die Daten herkommen etwas ändert.

Bedeutet dass, das die Temperatur des userReadings erst aktualisiert wird, wenn sich Humidity im Feuchtigkeits-Device ändert?
Und dann wird auch erst absFeuchte und dewpoint berechnet?

Sollte dann auch im event-on-update-reading nur das humidity hinein und absFeuchte und dewpoint nicht?
Werden dann aber trotzdem die Werte für absFeuchte und dewpoint gespeichert, welche ich ja für den SVG-DBlog bräuchte?

Zitat von: MadMax-FHEM am 27 August 2023, 15:17:18Dann fehlt das list des dewpoint-Devices...

Hier wäre das List:

Internals:
   CMD_TYPE   dewpoint
   DEF        dewpoint .* temperature humidity dewpoint
   DEV_REGEXP .*
   FUUID      5f1bd2bc-f33f-f59f-3b11-27bb05846417f5af
   HUM_NAME   humidity
   NAME       dewpointToAllDeviceReadings
   NEW_NAME   dewpoint
   NR         47
   NTFY_ORDER 10-dewpointToAllDeviceReadings
   STATE      active
   TEMP_NAME  temperature
   TYPE       dewpoint
   helper:
     bm:
       dewpoint_Notify:
         cnt        49584
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.08. 07:49:11
         max        0.0111498832702637
         tot        16.8463199138641
         mAr:
           HASH(dewpointToAllDeviceReadings)
           HASH(myShelly_Plug_1)
Attributes:
   absFeuchte 1
   max_timediff 5
   room       Kellerlüftung

Zitat von: MadMax-FHEM am 27 August 2023, 15:17:18Denn (mir) unklar ist was die Graphen zeigen, weil nicht angegeben ist, wo die Daten herkommen usw.

Die Daten kommen aus der Datenbank DbLog

Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 27 August 2023, 21:04:00
Das HUEDevice66 und HUEDevice66 hat z.B. folgendes gemeldet; auch die -100 (das HUESensor66):

2023-08-27 20:44:52 HUEDevice HUESensor66 temperature: 23.73
2023-08-27 20:44:52 HUEDevice HUESensor65 humidity: 61.17
2023-08-27 20:44:52 HUEDevice HUESensor65 temperature: 23.73
2023-08-27 20:44:52 HUEDevice HUESensor65 absFeuchte: 13.1
2023-08-27 20:44:52 HUEDevice HUESensor65 dewpoint: 15.8
2023-08-27 20:44:52 HUEDevice HUESensor65 temperature: 23.73
2023-08-27 20:44:53 HUEDevice HUESensor66 temperature: -100
2023-08-27 20:45:03 HUEDevice HUESensor66 temperature: 23.74
2023-08-27 20:45:03 HUEDevice HUESensor65 humidity: 61.21
2023-08-27 20:45:03 HUEDevice HUESensor65 temperature: 23.74
2023-08-27 20:45:03 HUEDevice HUESensor65 absFeuchte: 13.1
2023-08-27 20:45:03 HUEDevice HUESensor65 dewpoint: 15.8
2023-08-27 20:45:03 HUEDevice HUESensor65 temperature: 23.74

Zitat von: MadMax-FHEM am 27 August 2023, 15:17:18ich würde das userReadings zumindest auf Events von humidity beschränken (Trigger)

Ist das userReadings so richtig?
Dies hatte ich bei den oberen Events noch nicht so gesetzt.

temperature:humidity.* {ReadingsVal("HUESensor66","temperature",0)}
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 27 August 2023, 21:31:14
Noch ein weiteres Beispiel mit den 100 Grad.
Hier mit den userReadings und dem Trigger (falls dies so richtig ist)

Dies zeigt der Event Monitor für HUESensor66 und HUESensor65:

2023-08-27 21:23:06 HUEDevice HUESensor66 temperature: 23.45
2023-08-27 21:23:07 HUEDevice HUESensor66 temperature: -100
2023-08-27 21:23:17 HUEDevice HUESensor66 temperature: 23.45

2023-08-27 21:23:06 HUEDevice HUESensor65 humidity: 59.73
2023-08-27 21:23:06 HUEDevice HUESensor65 temperature: 23.74
2023-08-27 21:23:06 HUEDevice HUESensor65 absFeuchte: 12.8
2023-08-27 21:23:06 HUEDevice HUESensor65 dewpoint: 15.4
2023-08-27 21:23:17 HUEDevice HUESensor65 humidity: 59.75
2023-08-27 21:23:17 HUEDevice HUESensor65 temperature: -100
2023-08-27 21:23:17 HUEDevice HUESensor65 absFeuchte: 0.0
2023-08-27 21:23:17 HUEDevice HUESensor65 dewpoint: -102.5

Dies ist das List vom HUEDevice65 zu diesem Zeitpunkt:

Internals:
   DEF        sensor 65  IODev=deCONZ
   FUUID      6339d54c-f33f-f59f-fd73-38e1cf0c416bc676
   FVERSION   31_HUEDevice.pm:0.267300/2022-11-21
   ID         S65
   INTERVAL   
   IODev      deCONZ
   NAME       HUESensor65
   NR         180
   STATE      ???
   TYPE       HUEDevice
   eventCount 3769
   has_events 1
   manufacturername LUMI
   modelid    lumi.weather
   name       Küche-OG
   on         1
   reachable  1
   swversion  20161129
   type       ZHAHumidity
   uniqueid   00:15:8d:00:02:b5:45:19-01-0405
   Helper:
     DBLOG:
       absFeuchte:
         DbLog:
           TIME       1693164197.70632
           VALUE      0.0
       dewpoint:
         DbLog:
           TIME       1693164197.70632
           VALUE      -102.5
       humidity:
         DbLog:
           TIME       1693164197.70632
           VALUE      59.75
       temperature:
         DbLog:
           TIME       1693164197.70632
           VALUE      -100
   READINGS:
     2023-08-25 07:47:09   IODev           deCONZ
     2023-08-27 21:23:17   absFeuchte      0.0
     2023-08-27 21:23:17   battery         65
     2023-08-27 21:23:17   batteryPercent  65
     2023-08-27 21:23:17   dewpoint        -102.5
     2023-08-27 21:23:17   humidity        59.75
     2023-08-27 21:23:17   lastseen        2023-08-27T19:23Z
     2023-08-27 21:23:17   reachable       1
     2023-08-27 21:23:17   temperature     -100
   helper:
     devtype    S
     state     
     update_timeout 1
     bm:
       HUEDevice_Attr:
         cnt        4
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 16:12:24
         max        4.10079956054688e-05
         tot        0.000138044357299805
         mAr:
           set
           HUESensor65
           event-on-update-reading
           humidity
       HUEDevice_Get:
         cnt        12
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 20:22:56
         max        0.0016319751739502
         tot        0.00233650207519531
         mAr:
           HASH(0x46f7e50)
           HUESensor65
           ?
       HUEDevice_Set:
         cnt        697
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.08. 07:48:47
         max        0.0166151523590088
         tot        0.344811201095581
         mAr:
           HASH(HUESensor65)
           HUESensor65
           ?
     configList:
     json:
       ep         1
       etag       96c49cef822015d27bd86a87afed9d18
       lastannounced
       lastseen   2023-08-27T19:23Z
       manufacturername LUMI
       modelid    lumi.weather
       name       Küche-OG
       swversion  20161129
       type       ZHAHumidity
       uniqueid   00:15:8d:00:02:b5:45:19-01-0405
       config:
         battery    65
         offset     0
       state:
         humidity   5975
         lastupdated 2023-08-27T19:23:17.670
     setList:
Attributes:
   IODev      deCONZ
   alias      KUECHE_LUFTFEUCHTIGKEIT
   event-on-update-reading humidity,absFeuchte,dewpoint,temperature
   group      HUESensor
   model      lumi.weather
   room       Küche_OG,deCONZ_Geraete
   userReadings temperature:humidity.* {ReadingsVal("HUESensor66","temperature",0)}
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 28 August 2023, 18:49:41
Das mit dem -100 Grad ist tatsächlich ein Batterieproblem. Hier wird darüber diskutiert bzw. wie der Fehler beseitigt werden könnte.
Eine Lösung gibt es aber anscheinend nicht und das Problem hat auch anscheinend nicht jeder.

https://github.com/dresden-elektronik/deconz-rest-plugin/issues/1748
https://forum.phoscon.de/t/its-time-to-fix-aqara-battery-bug/2368

Habe mir die Tipps in diesem Thread nochmal angeschaut, wie man den -100 Grand Ausschlag umgehen könnte.
Möchte nicht schon bei 80 oder 85 die Batterie wechseln, wenn es grundsätzlich noch funktioniert.
Am liebsten wäre es mir, wenn es den -100 Grad Wert gleich gar nicht aufgezeichnet würde.


Probiere derzeit testweise den Tip von @DeeSPe mit readingsChange.

Hier wird aber immer auch ein Temperaturwert von 0 Grad mit ausgelesen. Dadurch ist in der Graphen ein kleiner Sprung.
Ist hier in meiner Syntax etwas falsch oder geht es nicht anders?

So sieht es im Event Manager aus:

2023-08-28 18:13:33 HUEDevice HUESensor65 humidity: 63.26
2023-08-28 18:13:33 HUEDevice HUESensor65 temperature: 23.15
2023-08-28 18:13:33 HUEDevice HUESensor65 absFeuchte: 13.1
2023-08-28 18:13:33 HUEDevice HUESensor65 dewpoint: 15.8
2023-08-28 18:13:44 HUEDevice HUESensor65 humidity: 63.33
2023-08-28 18:13:44 HUEDevice HUESensor65 temperature: 23.12
2023-08-28 18:13:44 HUEDevice HUESensor65 absFeuchte: 13.1
2023-08-28 18:13:44 HUEDevice HUESensor65 dewpoint: 15.8
2023-08-28 18:21:01 HUEDevice HUESensor65 humidity: 60.03
2023-08-28 18:21:01 HUEDevice HUESensor65 temperature: 23.12
2023-08-28 18:21:01 HUEDevice HUESensor65 absFeuchte: 12.4
2023-08-28 18:21:01 HUEDevice HUESensor65 dewpoint: 14.9
2023-08-28 18:21:11 HUEDevice HUESensor65 humidity: 60.02
2023-08-28 18:21:11 HUEDevice HUESensor65 temperature: 0
2023-08-28 18:21:11 HUEDevice HUESensor65 absFeuchte: 2.9
2023-08-28 18:21:11 HUEDevice HUESensor65 dewpoint: -6.1
2023-08-28 18:28:59 HUEDevice HUESensor65 humidity: 59.92
2023-08-28 18:28:59 HUEDevice HUESensor65 temperature: 23.14
2023-08-28 18:28:59 HUEDevice HUESensor65 absFeuchte: 12.4
2023-08-28 18:28:59 HUEDevice HUESensor65 dewpoint: 14.9
2023-08-28 18:29:09 HUEDevice HUESensor65 humidity: 59.74
2023-08-28 18:29:09 HUEDevice HUESensor65 temperature: 0
2023-08-28 18:29:09 HUEDevice HUESensor65 absFeuchte: 2.9
2023-08-28 18:29:09 HUEDevice HUESensor65 dewpoint: -6.1
2023-08-28 18:38:07 HUEDevice HUESensor65 humidity: 58.61
2023-08-28 18:38:07 HUEDevice HUESensor65 temperature: 23.18
2023-08-28 18:38:07 HUEDevice HUESensor65 absFeuchte: 12.1
2023-08-28 18:38:07 HUEDevice HUESensor65 dewpoint: 14.6
2023-08-28 18:38:18 HUEDevice HUESensor65 humidity: 58.5
2023-08-28 18:38:18 HUEDevice HUESensor65 temperature: 0
2023-08-28 18:38:18 HUEDevice HUESensor65 absFeuchte: 2.8
2023-08-28 18:38:18 HUEDevice HUESensor65 dewpoint: -6.4

So habe ich es eingerichtet:

attr HUESensor65 oldreadings temperatur
define HundertGradProb_Kueche readingsChange HUESensor65 temperature (.+) {$1!=-100?$1:OldReadingsVal('HUESensor65','temperature',0)}

Evlt. spielen auch die event-on-xx-readings eine Rolle und es ist hier immer noch etwas falsch?


Im Temperatursensor:
attr HUESensor66 event-on-change-reading temperature

Im Feuchtigkeitssensor:
attr HUESensor65 event-on-update-reading humidity,absFeuchte,dewpoint,temperatureund
defmod HundertGradProb_Kueche readingsChange HUESensor65 temperature (.+) {$1!=-100?$1:OldReadingsVal('HUESensor65','temperature',0)}attr HUESensor65 userReadings temperature:humidity.* {ReadingsVal("HUESensor66","temperature",0)}

Hier wären noch Listings, falls diese benötig werden:

Vom readingsChange
Internals:
   CFGFN     
   DEF        HUESensor65 temperature (.+) {$1!=-100?$1:OldReadingsVal('HUESensor65','temperature',0)}
   FUUID      64ec93bd-f33f-f59f-0a0f-569e62f0168d00c4
   NAME       HundertGradProb_Kueche
   NOTIFYDEV  HUESensor65
   NR         16404
   NTFY_ORDER 00-HundertGradProb_Kueche
   STATE      active
   TYPE       readingsChange
   READINGS:
     2023-08-28 14:31:57   state           active
   helper:
     bm:
       readingsChangeDefine:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        28.08. 14:31:57
         max        0.00300002098083496
         tot        0.00300002098083496
         mAr:
           HASH(0x326f2c8)
           HundertGradProb_Kueche readingsChange HUESensor65 temperature (.+) {$1!=-100?$1:OldReadingsVal('HUESensor65','temperature',0)}
       readingsChangeExec:
         cnt        28
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        28.08. 18:28:59
         max        0.00606489181518555
         tot        0.0284314155578613
         mAr:
           HASH(0x326f2c8)
           HASH(0x46f7e50)
Attributes:
   room       Küche_OG

vom Feuchtesensor:

Internals:
   DEF        sensor 65  IODev=deCONZ
   FUUID      6339d54c-f33f-f59f-fd73-38e1cf0c416bc676
   FVERSION   31_HUEDevice.pm:0.267300/2022-11-21
   ID         S65
   INTERVAL   
   IODev      deCONZ
   NAME       HUESensor65
   NR         180
   STATE      ???
   TYPE       HUEDevice
   eventCount 3889
   has_events 1
   manufacturername LUMI
   modelid    lumi.weather
   name       Küche-OG
   on         1
   reachable  1
   swversion  20161129
   type       ZHAHumidity
   uniqueid   00:15:8d:00:02:b5:45:19-01-0405
   Helper:
     DBLOG:
       absFeuchte:
         DbLog:
           TIME       1693240698.7579
           VALUE      2.8
       dewpoint:
         DbLog:
           TIME       1693240698.7579
           VALUE      -6.4
       humidity:
         DbLog:
           TIME       1693240698.7579
           VALUE      58.5
       temperature:
         DbLog:
           TIME       1693240698.7579
           VALUE      0
   READINGS:
     2023-08-25 07:47:09   IODev           deCONZ
     2023-08-28 18:38:18   absFeuchte      2.8
     2023-08-28 18:38:18   battery         62
     2023-08-28 18:38:18   batteryPercent  62
     2023-08-28 18:38:18   dewpoint        -6.4
     2023-08-28 18:38:18   humidity        58.5
     2023-08-28 18:38:18   lastseen        2023-08-28T16:38Z
     2023-08-28 18:38:18   reachable       1
     2023-08-28 18:38:18   temperature     0
   helper:
     devtype    S
     state     
     update_timeout 1
     bm:
       HUEDevice_Attr:
         cnt        5
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 16:12:24
         max        4.10079956054688e-05
         tot        0.000176906585693359
         mAr:
           set
           HUESensor65
           event-on-update-reading
           humidity
       HUEDevice_Get:
         cnt        18
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 20:22:56
         max        0.0016319751739502
         tot        0.00275421142578125
         mAr:
           HASH(0x46f7e50)
           HUESensor65
           ?
       HUEDevice_Set:
         cnt        749
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.08. 07:48:47
         max        0.0166151523590088
         tot        0.37520694732666
         mAr:
           HASH(HUESensor65)
           HUESensor65
           ?
     configList:
     json:
       ep         1
       etag       06e5311cf6e3ee49c03f027b48e04d8f
       lastannounced
       lastseen   2023-08-28T16:38Z
       manufacturername LUMI
       modelid    lumi.weather
       name       Küche-OG
       swversion  20161129
       type       ZHAHumidity
       uniqueid   00:15:8d:00:02:b5:45:19-01-0405
       config:
         battery    62
         offset     0
       state:
         humidity   5850
         lastupdated 2023-08-28T16:38:18.718
     setList:
Attributes:
   IODev      deCONZ
   alias      KUECHE_LUFTFEUCHTIGKEIT
   event-on-update-reading humidity,absFeuchte,dewpoint,temperature
   group      HUESensor
   model      lumi.weather
   oldreadings temperatur
   room       Küche_OG,deCONZ_Geraete
   userReadings temperature:humidity.* {ReadingsVal("HUESensor66","temperature",0)}


Vom Temperatursensor

Internals:
   DEF        sensor 66  IODev=deCONZ
   FUUID      6339d54c-f33f-f59f-a638-827bd2277898bf64
   FVERSION   31_HUEDevice.pm:0.267300/2022-11-21
   ID         S66
   INTERVAL   
   IODev      deCONZ
   NAME       HUESensor66
   NR         181
   STATE      ???
   TYPE       HUEDevice
   eventCount 217
   has_events 1
   manufacturername LUMI
   modelid    lumi.weather
   name       Küche-OG
   on         1
   reachable  1
   swversion  20161129
   type       ZHATemperature
   uniqueid   00:15:8d:00:02:b5:45:19-01-0402
   Helper:
     DBLOG:
       temperature:
         DbLog:
           TIME       1693240698.87764
           VALUE      23.7
   READINGS:
     2023-08-25 07:47:09   IODev           deCONZ
     2023-08-28 18:38:18   battery         62
     2023-08-28 18:38:18   batteryPercent  62
     2023-08-28 18:38:18   lastseen        2023-08-28T16:38Z
     2023-08-28 18:38:18   reachable       1
     2023-08-28 18:38:18   temperature     23.7
   helper:
     devtype    S
     state     
     update_timeout 1
     bm:
       HUEDevice_Attr:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 12:13:22
         max        0.00174713134765625
         tot        0.00174713134765625
         mAr:
           set
           HUESensor66
           event-on-change-reading
           temperature
       HUEDevice_Get:
         cnt        13
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        27.08. 12:10:32
         max        9.01222229003906e-05
         tot        0.000715732574462891
         mAr:
           HASH(0x443be50)
           HUESensor66
           ?
       HUEDevice_Set:
         cnt        158
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        25.08. 07:48:47
         max        0.0166890621185303
         tot        0.102755546569824
         mAr:
           HASH(HUESensor66)
           HUESensor66
           ?
     configList:
     json:
       ep         1
       etag       02177d57f093c9b793470e99211a44c6
       lastannounced
       lastseen   2023-08-28T16:38Z
       manufacturername LUMI
       modelid    lumi.weather
       name       Küche-OG
       swversion  20161129
       type       ZHATemperature
       uniqueid   00:15:8d:00:02:b5:45:19-01-0402
       config:
         battery    62
         offset     0
       state:
         lastupdated 2023-08-28T16:38:18.844
         temperature 2370
     setList:
Attributes:
   IODev      deCONZ
   alias      KUECHE_TEMPERATUR
   event-on-change-reading temperature
   group      HUESensor
   model      lumi.weather
   room       Küche_OG,deCONZ_Geraete
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: sash.sc am 30 August 2023, 09:29:01
Du wirst dann wohl bei eintreffen der Temperatur eine Abfrage auf Plausibilität machen müssen.

Z. B. Ob die Temperatur größer 0 Grad ist oder ob die Differenz zum letzten Wert nicht größer wie 10 Grad ist.

Ich habe bei manchen Daten die ich mir per httpmod aus dem Netz hole, solche Anfragen gemacht. Wenn ok, dann schreibe den Wert in ein reading.

Gruß Sascha
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: MadMax-FHEM am 30 August 2023, 10:21:45
Zitat von: sash.sc am 30 August 2023, 09:29:01Du wirst dann wohl bei eintreffen der Temperatur eine Abfrage auf Plausibilität machen müssen.

Z. B. Ob die Temperatur größer 0 Grad ist oder ob die Differenz zum letzten Wert nicht größer wie 10 Grad ist.

Ich habe bei manchen Daten die ich mir per httpmod aus dem Netz hole, solche Anfragen gemacht. Wenn ok, dann schreibe den Wert in ein reading.

Gruß Sascha

Ja sowas wollte ich auch grad vorschlagen ;)

Du schickst doch eh die Daten (temperature) von einem Sensor zum anderen Sensor.

Warum machst du das nicht einfach nur, wenn die Daten/Werte "plausibel" sind?
(ansonsten nichts oder den alten Wert)

Also in deinem userReadings einfach eine Abfrage auf "Plausibilität"...

Ich würde auch erst mal die ganzen event-on-... wegmachen.
Bzw. gehe ich so vor: erst mal alles umsetzen was ich möchte (weil mehr Events wird es nicht geben, ich muss also damit auskommen ;)  )
Wenn das dann (eine Zeitlang) läuft, dann schaue ich mal in den Eventmonitor (mit Filter) was da so rumkommt.
Wenn es eh nicht viel ist: lasse ich es auch einfach mal...

Wenn es mehr ist oder ich "weiß" (schwer vermute ;) ), dass es unnötige Events gibt, dann schränke ich ein.

Wenn dann etwas nicht mehr geht: wird wohl etwas zu stark eingeschränkt worden sein...

Gruß, Joachim
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 30 August 2023, 15:50:51
Zitat von: sash.sc am 30 August 2023, 09:29:01Du wirst dann wohl bei eintreffen der Temperatur eine Abfrage auf Plausibilität machen müssen.
Zitat von: MadMax-FHEM am 30 August 2023, 10:21:45Also in deinem userReadings einfach eine Abfrage auf "Plausibilität"...

Werde mich wohl damit beschäftigen müssen; wie ich dies dann in das unserReadings alles hinein bekomme.
Geht das dann mit Pearl?


Was ich aber trotzdem nicht ganz verstehe ist, warum jetzt die "0" Grad Werte ankommen.
Durch folgendes sollte doch der vorherige Temperaturwert aktuell bleiben, falls der -100 Grad Wert gemeldet wird.
Die Temperaturwerte werden ja sonst richtig übertragen und sind auch plausibel; außer den -100 Grad.

attr HUESensor65 oldreadings temperatur
define HundertGradProb_Kueche readingsChange HUESensor65 temperature (.+) {$1!=-100?$1:OldReadingsVal('HUESensor65','temperature',0)}

Soll ich dann diesen Teil auch wieder löschen?

Zitat von: MadMax-FHEM am 30 August 2023, 10:21:45Ich würde auch erst mal die ganzen event-on-... wegmachen.

Sammeln sich dann nicht zu viele nicht benötigten Daten?
Dafür wären die eigentlich gedacht gewesen.

Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: rabehd am 30 August 2023, 18:17:27
Zitat von: Ruggy am 30 August 2023, 15:50:51Geht das dann mit Pearl?
vielleicht  ;D https://www.pearl.de/ (https://www.pearl.de/)
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 30 August 2023, 20:12:58
 :-[  :))

Meinte Perl.

Deshalb habe ich mir mal sogar das Buch "Perl für Dummies" gekauft  ;)
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Ruggy am 30 August 2023, 20:14:54
Ist das "+" im Beitrag #21 genannten Syntax richtig oder sollte es .* heißen?

temperature (.+)
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: sash.sc am 31 August 2023, 05:47:12
Geht auch ohne perl.
Ich habe so eine Abfrage mit einem doif gelöst.Bei mir ist sag Problem, das ich zwischendurch null Werte bekomme und diese filtern wollte.

(Euro_Dollar:ED2] != 0) (setreading Euro_Dollar Euro_Dollar {(ReadingsVal("Euro_Dollar","ED2",0))})

Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: MadMax-FHEM am 31 August 2023, 08:42:34
Zitat von: sash.sc am 31 August 2023, 05:47:12Geht auch ohne perl.
ReadingsVal? ;)

Gruß, Joachim
Titel: Aw: Xiaomi Temperatursensor zeitweise auf -100 Grad
Beitrag von: Beta-User am 31 August 2023, 13:21:16
Zitat von: sash.sc am 31 August 2023, 05:47:12Geht auch ohne perl.
Ich habe so eine Abfrage mit einem doif gelöst.Bei mir ist sag Problem, das ich zwischendurch null Werte bekomme und diese filtern wollte.

(Euro_Dollar:ED2] != 0) (setreading Euro_Dollar Euro_Dollar {(ReadingsVal("Euro_Dollar","ED2",0))})

Danke für die Info.

War mir neu, das DOIF nicht in Perl geschrieben ist ;) ....