Hallo,
ich habe einen Tasmota-basierten Außensensor, der mir per MQTT Daten liefert. Der Broker nimmt die Daten auch entgegen und leitet sie an FHEM weiter.
Das entsprechende expanJSON hat kurzfristig (ca 24h) funktioniert, hat dann jedoch unvermittelt seien Betrieb eingestellt. Bin wirklich ratlos.
Die Daten die vom Device kommen:
{"Time":"2019-02-20T15:05:33","ANALOG":{"A0":1},"BME280":{"Temperature":12.9,"Humidity":48.8,"Pressure":1020.9},"TSL2561":{"Illuminance":7305.000},"PressureUnit":"hPa","TempUnit":"C"}
Hier ein List vom Device
Internals:
CHANGED
FUUID 5c6b3cfe-f33f-60ca-85d9-ed85ca75c7bad828
IODev Mosquitto
NAME Wettersensor2
NR 319
STATE Lufttemperatur: 4.7 °C Luftfeuchtigkeit: 75.0 % Luftdruck: 1019.1 hPa Beleuchtungsstärke 0.147 lux
TYPE MQTT_DEVICE
READINGS:
2019-02-19 23:38:54 ANALOG_A0 2
2019-02-19 23:38:54 BME280_Humidity 75
2019-02-19 23:38:54 BME280_Pressure 1019.1
2019-02-19 23:38:54 BME280_Temperature 4.7
2019-02-20 15:33:34 Messwerte {"Time":"2019-02-20T15:33:33","ANALOG":{"A0":1},"BME280":{"Temperature":13.0,"Humidity":47.4,"Pressure":1020.8},"TSL2561":{"Illuminance":8022.000},"PressureUnit":"hPa","TempUnit":"C"}
2019-02-19 23:38:54 PressureUnit hPa
2019-02-19 23:38:54 TSL2561_Illuminance 0.147
2019-02-19 23:38:54 TempUnit C
2019-02-19 23:38:54 Time 2019-02-19T23:38:52
2019-02-20 15:33:34 transmission-state incoming publish received
message_ids:
sets:
subscribe:
SmartHome/Wettersensor/SENSOR
subscribeExpr:
^SmartHome\/Wettersensor\/SENSOR$
subscribeQos:
SmartHome/Wettersensor/SENSOR 0
subscribeReadings:
SmartHome/Wettersensor/SENSOR:
cmd
name Messwerte
Attributes:
IODev Mosquitto
alias Wettersensoren
event-on-change-reading BME280_Pressure,BME280_Humidity,BME280_Temperature,TSL2561_Illuminance
room 80_Aussen
stateFormat {sprintf("Lufttemperatur: %.1f °C Luftfeuchtigkeit: %.1f %% Luftdruck: %.1f hPa Beleuchtungsstärke %.3f lux", ReadingsVal($name,"BME280_Temperature",undef), ReadingsVal($name,"BME280_Humidity",undef), ReadingsVal($name,"BME280_Pressure",undef), ReadingsVal($name,"TSL2561_Illuminance",undef))}
subscribeReading_Messwerte SmartHome/Wettersensor/SENSOR
Das entsprechende expandJSON
defmod ej_Wettersensor_Messwerte expandJSON Wettersensor2:Messwerte:.{.*}
attr ej_Wettersensor_Messwerte room 91_System
Komischerweise funktioniert ein ähnlich gestaltetes expandJSON bei einem anderen Tasmota Device tadellos.
Das Modul TASMOTA_DEVICE bekomme ich leider garnicht zum laufen. Hier werden weder die MQTT Readings gelesen und wenn das dann noch mal funktioniert wird das JSON nicht zerlegt.
Ich hab keine Ahnung, wo mein Fehler liegt.
Wenn weitere Infos gebraucht werden, liefere ich die natürlich gerne nach.
Grüße
Stephan
Gut, manchmals steht man wirklich vor seiner eigenen Dummheit :o
Wenn ein event on change reading gesetzt ist und das nicht auf das JSON zeigt, kann natürlich auch das expandJSON nicht funktionieren.
Event on change reading gelöscht, schon klappt auch das expandJSON wieder.