Günstiger und unauffälliger Pflanzensensor: Xiaomi Flower Monitor

Begonnen von stoxx, 17 September 2016, 14:28:54

Vorheriges Thema - Nächstes Thema

Invers

#195
Mein Sensor ist momentan nicht erreichbar, weil er wohl keinen Bock hat.
Meine alte Routine mit dem Cronjob meldet:
Internals:
   CFGFN
   NAME       Plant1
   NR         324
   STATE      error
   TYPE       dummy
   Readings:
     2016-11-11 20:00:12   Battery         100
     2016-11-11 20:00:12   Fertility       79
     2016-11-11 20:00:13   Firmware        2.6.2
     2016-11-11 20:00:10   Lux             26
     2016-11-11 20:00:11   Moisture        13
     2016-11-11 20:00:10   Temp            20.1
     2016-11-12 08:00:08   gattool         Fehler: connect error: Transport endpoint is not connected (107)
     2016-11-12 08:00:10   gattool_35      ---
     2016-11-12 08:00:10   gattool_38      ---
     2016-11-12 08:00:09   state           error
Attributes:
   alias      Pflanzensensor 1
   icon       weather_pollen
   room       1 testraum,Wohnzimmer
   userReadings Moisture,Fertility,Lux,Temp


Das neue Modul meldet:
Internals:
   BTMAC      C4:7C:8D:61:A5:18
   CFGFN
   DEF        C4:7C:8D:61:A5:18
   INTERVAL   3600
   NAME       Blume1
   NR         343
   STATE      active
   TYPE       XiaomiFlowerSens
   VERSION    0.1.42
   Readings:
     2016-11-12 08:24:58   battery         0
     2016-11-12 08:24:58   fertility       0
     2016-11-12 08:24:58   firmware        -30.-30.-30
     2016-11-12 08:24:58   lux             0
     2016-11-12 08:24:58   moisture        0
     2016-11-12 08:24:58   state           active
     2016-11-12 08:24:58   temperature     0
   Helper:
Attributes:
   group      Pflanzen
   room       Wohnzimmer
   verbose    5


Mein Log sagt dazu:
Device is not available.
Device is not available.
2016.11.12 08:30:50 4: Sub XiaomiFlowerSens (Blume1) - Starte Blocking Call
2016.11.12 08:30:50 4: Sub XiaomiFlowerSens_Run (Blume1) - Running nonBlocking
connect: No route to host (113)
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/74_XiaomiFlowerSens.pm line 272.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[1] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 274.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 274.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[4] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 275.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 275.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[7] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 276.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[9] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 277.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 277.
connect: No route to host (113)
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/74_XiaomiFlowerSens.pm line 295.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[0] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 297.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[2] in subtraction (-) at ./FHEM/74_XiaomiFlowerSens.pm line 298.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[4] in subtraction (-) at ./FHEM/74_XiaomiFlowerSens.pm line 298.
2016.11.12 08:30:50 1: PERL WARNING: Use of uninitialized value $data[6] in subtraction (-) at ./FHEM/74_XiaomiFlowerSens.pm line 298.
2016.11.12 08:30:50 4: Sub XiaomiFlowerSens_Run (Blume1) - Rückgabe an Auswertungsprogramm beginnt
2016.11.12 08:30:50 4: Sub XiaomiFlowerSens_Done (Blume1) - Abschluss!
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Invers

So, ich musste wirklich meinen Pi neu starten, um wieder Kontakt mit dem Sensor zu bekommen. Im Sensor Batterie raus und rein hat nicht geholfen. FHEM-Neustart auch nicht. Auch der Start des Scriptes (bei mir  /home/pi/plant1.sh), was eigentlich sonst in jeder Situation geholfen hatte, brachte diesmal nichts.

Nach dem Neustart des Pi geht nun alles wieder und ich habe nun folgenden List:

Internals:
   BTMAC      C4:7C:8D:61:A5:18
   CFGFN
   DEF        C4:7C:8D:61:A5:18
   INTERVAL   3600
   NAME       Blume1
   NR         343
   STATE      unreachable
   TYPE       XiaomiFlowerSens
   VERSION    0.1.42
   Readings:
     2016-11-12 08:51:58   battery         100
     2016-11-12 08:51:58   fertility       201
     2016-11-12 08:51:58   firmware        2.6.2
     2016-11-12 08:51:58   lux             167
     2016-11-12 08:51:58   moisture        19
     2016-11-12 08:51:20   state           unreachable
     2016-11-12 08:51:58   temperature     22.3
   Helper:
Attributes:
   group      Pflanzen
   room       Wohnzimmer
   verbose    5


Besonders verwirrend ist immer "state unreachable ", da ja der Sensor empfangen wurde.
Log zeigt:
2016.11.12 08:51:55 4: Sub XiaomiFlowerSens (Blume1) - Starte Blocking Call
2016.11.12 08:51:55 4: Sub XiaomiFlowerSens_Run (Blume1) - Running nonBlocking
2016.11.12 08:51:58 4: Sub XiaomiFlowerSens_Run (Blume1) - Rückgabe an Auswertungsprogramm beginnt
2016.11.12 08:51:58 4: Sub XiaomiFlowerSens_Done (Blume1) - Abschluss!


Ich denke, der Timeout müsste wahrscheinlich weiter erhöht werden, da der manuelle Aufruf des Scriptes fast immer erfolgreicher ist, wenn es Probleme gibt.
Erklären kann ich das natürlich aus Unwissenheit nicht.

hier zum Vergleich noch das List Dummy, der durch das Script befüllt wurde:
Internals:
   CFGFN
   NAME       Plant1
   NR         324
   STATE      done
   TYPE       dummy
   Readings:
     2016-11-12 09:04:50   Battery         100
     2016-11-12 09:04:49   Fertility       213
     2016-11-12 09:04:50   Firmware        2.6.2
     2016-11-12 09:04:48   Lux             183
     2016-11-12 09:04:49   Moisture        19
     2016-11-12 09:04:47   Temp            20.5
     2016-11-12 09:04:45   gattool         ---
     2016-11-12 09:04:46   gattool_35      Characteristic value/descriptor: cd 00 00 b7 00 00 00 13 d5 00 00 00 00 00 00 00
     2016-11-12 09:04:47   gattool_38      Characteristic value/descriptor: 64 10 32 2e 36 2e 32
     2016-11-12 09:04:51   state           done
Attributes:
   alias      Pflanzensensor 1
   icon       weather_pollen
   room       1 testraum,Wohnzimmer
   userReadings Moisture,Fertility,Lux,Temp


In dem Fall wahrscheinlich nicht so interessant, weil kein Fehler gemeldet wird.
Interessant ist aber die Tatsache, dass die Ausführung des Scrips mindestens 4 mal so lange dauert, wie die Ausführung per Modul.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

CoolTux

Du hast da gerade noch einen Bug offenbart. Ich wunderte mich wieso das unreachable nicht mit dem Log zusammen passt und dann viel mir ein wieso er nicht wieder auf active wechselt wenn er in die Timer gesteuerte Sub springt. Jetzt weiß ich das ich meine Abfrage erweitern muß.
Danke Dir


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Invers

state wurde eigentlich noch nie aktualisiert. Das hatte ich auch bereits viel weiter oben berichtet. Ist wohl untergegangen. Kein Wunder bei der Beitragsfrequenz. :-)
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Invers

Hier noch Log und List nach automatischer aktualisierung. Der Sensor wurde wieder nicht erfolgreich ausgelesen.

2016.11.12 09:42:14 5: Sub XiaomiFlowerSens (Blume1) - Request Timer wird aufgerufen
2016.11.12 09:42:14 4: Sub XiaomiFlowerSens (Blume1) - Starte Blocking Call
2016.11.12 09:42:14 4: Sub XiaomiFlowerSens_Run (Blume1) - Running nonBlocking
connect error: Transport endpoint is not connected (107)
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/74_XiaomiFlowerSens.pm line 272.
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value $data[1] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 274.
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 274.
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value $data[4] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 275.
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 275.
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value $data[7] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 276.
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value $data[9] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 277.
2016.11.12 09:42:19 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 277.
2016.11.12 09:42:23 4: Sub XiaomiFlowerSens_Run (Blume1) - Rückgabe an Auswertungsprogramm beginnt
2016.11.12 09:42:23 4: Sub XiaomiFlowerSens_Done (Blume1) - Abschluss!


Internals:
   BTMAC      C4:7C:8D:61:A5:18
   CFGFN
   DEF        C4:7C:8D:61:A5:18
   INTERVAL   3600
   NAME       Blume1
   NR         343
   STATE      unreachable
   TYPE       XiaomiFlowerSens
   VERSION    0.1.42
   Readings:
     2016-11-12 09:42:23   battery         100
     2016-11-12 09:42:23   fertility       0
     2016-11-12 09:42:23   firmware        2.6.2
     2016-11-12 09:42:23   lux             0
     2016-11-12 09:42:23   moisture        0
     2016-11-12 08:51:20   state           unreachable
     2016-11-12 09:42:23   temperature     0
   Helper:
Attributes:
   group      Pflanzen
   room       Wohnzimmer
   verbose    5
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

CoolTux

Doch der state ändert sich. Aber so schnell das du es nicht bemerkst.
Nach einem define ist er initial danach active wenn er ab ruft ist er Call Data oder so und wenn er fertig ist active. Alles in Abhängigkeit vom vorherigen state und da war schlicht unreachable noch nicht mit dabei. Lach.

connect error: Transport endpoint is not connected (107)

Das ist die Fehlermeldung vom gatttool. Da scheint es Probleme mit dem Sensor zu geben. Ich habe noch keine Fehlerbehandlung drin, das mache ich immer ganz zum Schluss wenn so ein paar Fehler aufgetreten sind. Zum Beispiel keine Readingsaktualisierung wenn keine Daten vorhanden sind.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Hagenuck1

Also den 107 Fehler hatte ich auch schon hinundwieder mal mit meinem alten sh-Script. Das ließ sich über eine BLE suche mit dem Hcitool meist beheben glaube ich.


Gesendet von iPhone mit Tapatalk

CoolTux

Ich habe nun die Bedingung für ein state active entsprechend gesetzt. Nun wird auch nach einem unreachable beim nächsten durchlauf ein active.
Ausserdem habe ich das timeout noch mal etwas erhöht.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

baukater

So hab heute morgen meine 2 Sensoren an den Start gebracht, geballte 3 Stunden bis das Ding lief.

Mit dem gatttool bekomme ich jetzt auch Werte angezeigt.

Ich hab das aktuelle Modul von heute geladen, bekomme aber als Status noch ein unreachable.

Was ich noch nicht verstanden habe, ist ob ich neben dem Module auch das Script benötige oder ob das
damit unnötig ist.

Wenn ich irgendwie mit Werten oder Tests unterstützen kann, gerne.
FB7490,Raspi 2/3,HM-Lan,Jeelink Classic (868),Logilink BT0015 Bluetooth 4.0, 2x mySmartUSB light,RS485USB , entities:272 device:14 channel:27 virtual:1, 6 x HM-LC-BL1-FM,4 x HM-LC-SW4-WM, 1 x HM-LC-SW2-FM,1 x Fensterkontakt,1 1x Türkontakt, 1 1x Bewegungsmelder, DECT-200,DECT100,6xAuthentic Xiaom

CoolTux

Es reicht einzig und alleine das Modul.

@All
Es sollte natürlich vermieden werden das das Script und das Modul zusammen betrieben werden. Dann blockiert es sich gegenseitig.


@Invers könnte das Deine Probleme verursacht haben?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

baukater

ok, ich habe nur das Modul eingebunden, muss also noch etwas anderes sein.
FB7490,Raspi 2/3,HM-Lan,Jeelink Classic (868),Logilink BT0015 Bluetooth 4.0, 2x mySmartUSB light,RS485USB , entities:272 device:14 channel:27 virtual:1, 6 x HM-LC-BL1-FM,4 x HM-LC-SW4-WM, 1 x HM-LC-SW2-FM,1 x Fensterkontakt,1 1x Türkontakt, 1 1x Bewegungsmelder, DECT-200,DECT100,6xAuthentic Xiaom

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Invers

Zitat@Invers könnte das Deine Probleme verursacht haben?
Nein. Mein Cronjob wird nur um 8, 14 und 20 Uhr einmal abgearbeitet, oder halt bei Bedarf per Hand.
Da gibt es sicherlich keine Konflikte.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Invers

Mein Sensor ist/war offenbar nach fhem-Neustart nicht sofort erreichbar.
Wird denn nach Neustart wirklich automatisch eingelesen?

connect error: Transport endpoint is not connected (107)
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/74_XiaomiFlowerSens.pm line 272.
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value $data[1] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 274.
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 274.
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value $data[4] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 275.
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 275.
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value $data[7] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 276.
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value $data[9] in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 277.
2016.11.12 14:41:02 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/74_XiaomiFlowerSens.pm line 277.
2016.11.12 14:41:06 4: Sub XiaomiFlowerSens_Run (Blume1) - Rückgabe an Auswertungsprogramm beginnt


Und hier noch ein List, nachdem per statusRequest aktualisiert wurde:
Internals:
   BTMAC      C4:7C:8D:61:A5:18
   CFGFN
   DEF        C4:7C:8D:61:A5:18
   INTERVAL   3600
   NAME       Blume1
   NR         343
   STATE      unreachable
   TYPE       XiaomiFlowerSens
   VERSION    0.1.45
   Readings:
     2016-11-12 14:42:42   battery         100
     2016-11-12 14:42:42   fertility       243
     2016-11-12 14:42:42   firmware        2.6.2
     2016-11-12 14:42:42   lux             1283
     2016-11-12 14:42:42   moisture        20
     2016-11-12 14:42:35   state           unreachable
     2016-11-12 14:42:42   temperature     21
   Helper:
Attributes:
   group      Pflanzen
   room       Wohnzimmer
   verbose    5


Log: (Hoffe, ich habe den Anfang mit erwischt bei Copy)

2016.11.12 14:42:30 4: Sub XiaomiFlowerSens (Blume1) - Starte Blocking Call
2016.11.12 14:42:30 4: Sub XiaomiFlowerSens_Run (Blume1) - Running nonBlocking
2016.11.12 14:42:35 1: Timeout for XiaomiFlowerSens_Run reached, terminated process 11080
2016.11.12 14:42:35 3: (Blume1) - The BlockingCall Process terminated unexpectedly. Timedout
2016.11.12 14:42:35 4: Sub XiaomiFlowerSens (Blume1) - Starte Blocking Call
2016.11.12 14:42:35 4: Sub XiaomiFlowerSens_Run (Blume1) - Running nonBlocking
2016.11.12 14:42:35 4: Sub XiaomiFlowerSens_Run (Blume1) - Rückgabe an Auswertungsprogramm beginnt
2016.11.12 14:42:35 4: Sub XiaomiFlowerSens_Done (Blume1) - Abschluss!
2016.11.12 14:42:38 4: Sub XiaomiFlowerSens (Blume1) - Starte Blocking Call
2016.11.12 14:42:38 4: Sub XiaomiFlowerSens_Run (Blume1) - Running nonBlocking
2016.11.12 14:42:42 4: Sub XiaomiFlowerSens_Run (Blume1) - Rückgabe an Auswertungsprogramm beginnt
2016.11.12 14:42:42 4: Sub XiaomiFlowerSens_Done (Blume1) - Abschluss!


Mit state erschliesst sich mir immer noch nicht. Wenn ich state auswerten möchte, um zu sehen, ob ich wirklich frische Werte bekommen habe, sollte dann da nicht ok, done, erledigt, oder Ähnliches stehen? So kann man ja state nicht wirklich nutzbringend verwenden. Habe ich da grundsätzlich was falsch verinnerlicht?
Also ich meine statt
2016-11-12 14:42:35   state           unreachable
z.B.
2016-11-12 14:42:42   state           done
also 2016-11-12 14:42:42, wie bei den restlichen Readings.
der Timestamp sollte sich auch bei unreachable ändern, damit man sieht, wann der letzte Ausleseversuch erfolgte und fehlschlug.
Hoffentlich habe ich keinen Knoten im Hirn.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

mi.ke

Zitat von: Invers am 12 November 2016, 15:02:34
Mit state erschliesst sich mir immer noch nicht. Wenn ich state auswerten möchte, um zu sehen, ob ich wirklich frische Werte bekommen habe, sollte dann da nicht ok, done, erledigt, oder Ähnliches stehen? So kann man ja state nicht wirklich nutzbringend verwenden. Habe ich da grundsätzlich was falsch verinnerlicht?
Also ich meine statt
2016-11-12 14:42:35   state           unreachable
z.B.
2016-11-12 14:42:42   state           done
also 2016-11-12 14:42:42, wie bei den restlichen Readings.
der Timestamp sollte sich auch bei unreachable ändern, damit man sieht, wann der letzte Ausleseversuch erfolgte und fehlschlug.
Hoffentlich habe ich keinen Knoten im Hirn.


Tach.

Nach jeden Neustart wird abgefragt. Und es ändert sich auch das timestamp bei jeder Anderung

done als state gab es nur beim Script.
Sieht aus, als wäre eine alter chron-Job noch aktiv.


Meine state Anzeige habe ich so gelöst.
Pflanze.* {
if(ReadingsVal("$NAME","state","state") eq "active") {fhem("attr $NAME stateFormat T:temperature°C H:moisture% D:fertility L:lux B:battery")}
else {fhem("attr $NAME stateFormat state")};
}


Immer aktuelle Werte und alle Fehlermeldungen

Cheers mi.ke

PS.
Leon,
ein Vorschlag.
Lass doch mal die "alten" Zwischenversionen hier im thread stehen, nicht immer löschen.
Dann kann man Dir vielleich besser bei der Fehlersuche helfen....
...Nur ne Idee
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara