FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: eisimeister am 31 Juli 2019, 10:47:54

Titel: Sonoff S20 Tasmota mit DS18B20 Sensoren
Beitrag von: eisimeister am 31 Juli 2019, 10:47:54
Hallo,

Ich habe erfolgreich eine Sonoff S20 Tasmota mit zwei DS18B20 Sensoren per MQTT mit folgendem Code am laufen:

defmod Sonoff_S20_sonoff2 MQTT_DEVICE
attr Sonoff_S20_sonoff2 IODev Mosquitto
attr Sonoff_S20_sonoff2 event-on-change-reading state,status,Zeit
attr Sonoff_S20_sonoff2 eventMap ON:on OFF:off
attr Sonoff_S20_sonoff2 publishSet on off cmnd/poollicht/power
attr Sonoff_S20_sonoff2 subscribeReading_sensor tele/poollicht/SENSOR
attr Sonoff_S20_sonoff2 subscribeReading_state stat/poollicht/POWER
attr Sonoff_S20_sonoff2 subscribeReading_status tele/poollicht/STATE


Das Toggle funktioniert und ich kann die Steckdose schalten und bekomme den Powerstatus retour.
Die Sensorenabfrage läuft auch und liefert folgendes bspw. retour:

{"Time":"2019-07-30T14:31:55","DS18B20-1":{"Id":"0118334EC0FF","Temperature":18.4},"DS18B20-2":{"Id":"031731EDB6FF","Temperature":29.6},"TempUnit":"C"}

Beim Widget-Label kommt alles an mit:
data-type="label" data-device="Sonoff_S20_sonoff2" data-get="sensor"

Nur wie bekomme ich jetzt die Temperaturwerte einzeln zum Weiterverarbeiten fürs FTUI?

Vielen Dank für eure Hilfe schon mal!
Titel: Antw:Sonoff S20 Tasmota mit DS18B20 Sensoren
Beitrag von: Gisbert am 31 Juli 2019, 11:06:03
Hallo eisimeister,

dafür musst du beim MQTT_DEVICE-Modul, welches älter ist, und das ich auch nutze, die Informationen aufteilen (Stichwort: JSON).
Dazu musst du folgende(s) Device(s) definieren:
define ej3 expandJSON .*:SENSOR:.{.*}
define ej3a expandJSON .*:STATE:.{.*Wifi.*}

Mit letzterem bekommst du die Wifi-Daten extrahiert.
Mit userReadings kannst du dann noch den Messstellen sinnvolle Namen verpassen.
***Frage an JSON-Experten: kann man beide Definitionen in einer einzigen vereinen?

Es gibt neuere Module, da ist das vermutlich alles bereits implementiert; da kenne ich mich aber nicht aus.

Viele​ Grüße​ Gisbert​
Titel: Antw:Sonoff S20 Tasmota mit DS18B20 Sensoren
Beitrag von: rudolfkoenig am 31 Juli 2019, 11:18:53
ZitatEs gibt neuere Module, da ist das vermutlich alles bereits implementiert; da kenne ich mich aber nicht aus.
Das neuere Modul nennt sich MQTT2_DEVICE, und braucht als IODev entweder MQTT2_CLIENT (statt MQTT) oder MQTT2_SERVER (das wiederum auch gleich mosquitto/vernemq/rabbitMQ/etc ersetzt).
Titel: Antw:Sonoff S20 Tasmota mit DS18B20 Sensoren
Beitrag von: eisimeister am 31 Juli 2019, 11:26:42
kann ich bei dem neueren modul die einzelnen werte (JSON) dann direkt ansprechen? und mit welchem command werden diese dann am besten ausgelesen?
Titel: Antw:Sonoff S20 Tasmota mit DS18B20 Sensoren
Beitrag von: rudolfkoenig am 31 Juli 2019, 11:41:12
JSON wird automatisch ausgepackt und (FHEM-ueblich) jede JSON Variable als Event weitergereicht und als Reading gespeichert.
Apropos Tasmota/Sonoff: dafuer gibt es jede Menge vorkonfigurierte Templates.
Titel: Antw:Sonoff S20 Tasmota mit DS18B20 Sensoren
Beitrag von: eisimeister am 31 Juli 2019, 16:57:13
Hat sich mit dem Update auf die aktuelle Version und MQTT2 erledigt. Da gibts die Daten in eigenen Feldern. Vielen Dank!!