FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Mikesch am 24 März 2021, 23:06:50

Titel: Sensor reading in stateFormat umwandeln aber wie?
Beitrag von: Mikesch am 24 März 2021, 23:06:50
Hallo zusammen,

ich habe mir mit einem "Wemos D1 mini" und "tasmota_sensors Firmware" ein Device gebaut mit zwei BMP280 und einen HTU21D Sensor.
Soweit war das etwas unlustig.
Die gekauften BMP280 können keine Feuchtigkeit messen, naja gut. Und man kann nur zwei i²C Adressen einstellen 0x76 und 0x77 ich wollte aber mehr als zwei anschließen. Deswegen der HTU21D.
MQTT habe ich konfiguriert bekommen.

Mein Problem ist das ich es nicht schaffe ein stateFormat aud dem MQTT String abzuleiten. Dadurch gibt es keine vernünftige Anzeige in FHEM.

Dieser sieht so aus:
{"Time":"2021-03-24T22:41:31","HTU21":{"Temperature":16.8,"Humidity":47.7,"DewPoint":5.6},"BMP280-76":{"Temperature":59.5,"Pressure":1016.5},"BMP280-77":{"Temperature":48.7,"Pressure":1016.7},"PressureUnit":"hPa","TempUnit":"C"}



{sprintf("T: %.1f H: %.1f D:%.1f", ReadingsVal($name,"HTU21_Temperature",0), ReadingsVal($name,"HTU21_Humidity",0), ReadingsVal($name,"dewpoint",0)),
("T: %.1f P: %.1f ", ReadingsVal($name,"BMP280-76_Temperature",0), ReadingsVal($name,"BMP280-76_Pressure",0)), ("T: %.1f P: %.1f ", ReadingsVal($name,"BMP280-77_Temperature",0), ReadingsVal($name,"BMP280-77_Pressure",0))}



Ich habe versucht den RegEx Ausdruck und den MQTT String mit https://regex101.com/ und anderen Seiten zu vergleichen aber die mecken alles an.

Hat jemand noch eine Idee wie man hier weiter kommt?
Titel: Antw:Sensor reading in stateFormat umwandeln aber wie?
Beitrag von: mike1969bln am 25 März 2021, 07:54:34

Guten Morgen,
Hier ein Tip auf die Schnelle: beschäftige dich mal mit dem Attribut readingList und der enthaltenen Funktion 
json2nameValue.