NEWS
Tasmota MQTT daten auslesen
-
@digi-bit
benutze ein kleines Script:on({id: "mqtt.2.Wemos_BadEG.SENSOR"}, function(obj) { var stext = obj.state.val; obj = JSON.parse(obj.state.val); if (stext.indexOf("BME280") != -1) { setState("javascript.0.Geräte.Wemos.Wemos-BadEG.BME280_Temperatur", obj.BME280.Temperature); }; if (stext.indexOf("BME280") != -1) { setState("javascript.0.Geräte.Wemos.Wemos-BadEG.BME280_Taupunkt", obj.BME280.DewPoint); }; if (stext.indexOf("BME280") != -1) { setState("javascript.0.Geräte.Wemos.Wemos-BadEG.BME280_Luftdruck", obj.BME280.SeaPressure); }; if (stext.indexOf("BME280") != -1) { setState("javascript.0.Geräte.Wemos.Wemos-BadEG.BME280_Luftfeuchtigkeit", obj.BME280.Humidity); }; if (stext.indexOf("BH1750") != -1) { setState("javascript.0.Geräte.Wemos.Wemos-BadEG.BH1750_Helligkeit", obj.BH1750.Illuminance); }; if (stext.indexOf("S8") != -1) { setState("javascript.0.Geräte.Wemos.Wemos-BadEG.CO2", obj.S8.CarbonDioxide); }; });
noch ein tipp:
setze Altitude bei dem Wemos; dann bekommst du den Luftdruck über Meereshöhe (= seapressure).
Und mit dem MHZ19B hab ich schlechte Erfahrungen gemacht. Benutze lieber einen S8. -
@codierknecht sagte in Tasmota MQTT daten auslesen:
@digi-bit
Rechte Maustaste auf den JSON-Datenpunkt => Alias erstellen.
Diesen sinnvoll benennen und die Lesekonvertierung aktivieren:JSON.parse(val).ANALOG.A1
oder z.B. auchJSON.parse(val).BME280.Temperature
Beispiel:
@codierknecht sagte in Tasmota MQTT daten auslesen:
JSON.parse(val).BME280.Temperature
ohman...........
so einfach........... und ich schreibe für den kram immer Blockly's
Ich bedanke mich und schönes weekend !
mfg
Digi-Bit
-
@ticaki sagte in Tasmota MQTT daten auslesen:
sonoff adapter verwenden? btw. wieso wird der nicht umbenannt in Tasmota... Ja ich weiß wieso - trotzdem
ne, ist schon der MQTT
mfg
-
@digi-bit
Der sonoff parse den Kram schon von sich aus, das meinte ich damit. -
@ticaki sagte in Tasmota MQTT daten auslesen:
@digi-bit
Der sonoff parse den Kram schon von sich aus, das meinte ich damit.Ja, die Sensoren schon aber ich habe noch ein MAX7219 dran und das kann ich damit wohl nicht Steuern weil die Datenpunkte nicht da sind wie " DisplayText"
sonst wäre es eine nette Sache
mfg
-
Ups.... hab die angelegt, werde da mal mit testen.....
mfg
-
Den Datenpunkt "DisplayText" mußt Du im Sonoffadapter nicht händisch anlegen. Sobald Du unter Tasmota in der Konsole mit
displaytext
einen Text anzeigen läßt, wird der DP automatisch angelegt. -
@1topf sagte in Tasmota MQTT daten auslesen:
Den Datenpunkt "DisplayText" mußt Du im Sonoffadapter nicht händisch anlegen. Sobald Du unter Tasmota in der Konsole mit
displaytext
einen Text anzeigen läßt, wird der DP automatisch angelegt.Ahrg, jetzt weiss ich wieder wieso ich das mit MQTT mache
Bei Sonoff fehlen die werte :
Soweit eine schöne Idee reicht mir aber leider nicht aus , oder kann man vielleicht den Sonoff Adapter auf diese Werte erweitern ?
Wäre natürlich klasse dann.
mfg
Digi-Bit
-
@digi-bit sagte in Tasmota MQTT daten auslesen:
@codierknecht sagte in Tasmota MQTT daten auslesen:
@digi-bit
Rechte Maustaste auf den JSON-Datenpunkt => Alias erstellen.
Diesen sinnvoll benennen und die Lesekonvertierung aktivieren:JSON.parse(val).ANALOG.A1
oder z.B. auchJSON.parse(val).BME280.Temperature
Beispiel:
@codierknecht sagte in Tasmota MQTT daten auslesen:
JSON.parse(val).BME280.Temperature
ohman...........
so einfach........... und ich schreibe für den kram immer Blockly's
Ich bedanke mich und schönes weekend !
mfg
Digi-Bit
ag, geht doch nicht.
Ich hätte vielleicht dazu schreiben sollen das ich mir das Tasmota selber zusammen gestellt habe damit ich Sensoren BLE und den MAX7219 bei habe.
ich nehme mal an da er den /tasmota_CD3A44/SENSOR für die Sensoren UND das BLE benutz kommen ab und an mal die Alias daten nicht an und dadurch ergibt sich das hier dann :
Ist also auch nicht so Perfekt leider
Wie ich es dreh und wende irgend wo ist immer ein Hacken drin
Gibt es noch eine Möglichkeit ?
Und ne, 2 Chips zu verwenden will ich nicht wirklich, scheint aber mit ioBroker nicht anders zu gehen
mfg
Digi-Bit
-
JSON.parse(val).ANALOG.A1
val ? JSON.parse(val).ANALOG.A1 : -1
anstatt -1 ein sinnvolles
hat nicht geklappt value
einfügen -
@ticaki sagte in Tasmota MQTT daten auslesen:
val ? JSON.parse(val).ANALOG.A1 : -1
Mmmmmm
Vieleicht verstehe ich da was falsch
Ich erstelle das Alias:
ich bekomme auch einen datenpunkt und er schreibt auch den gewünschten Wert hinein
aber ich bekomme Fehlermeldungen im Protokoll ;(
was mach ich noch falsch ?`
mfg
Digi-Bit
-
@digi-bit sagte in Tasmota MQTT daten auslesen:
was mach ich noch falsch ?`
Mein Fehler zuviel c&p und zuwenig geguckt
hm weiß garnet ob das hier im alias geht - woanders gehts
kann sein das da noch
{}
drum müssen.const x = val ? JSON.parse(val) : undefined; if (x?.ANALOG?.A1) return x.ANALOG.A1; else return -1;
das könnte auch gehen
Aber nur wenn A1 nicht 0 sein kann
const x = val && JSON.parse(val)?.ANALOG?.A1 || -1;
alternative
val && JSON.parse(val).ANALOG ? JSON.parse(val).ANALOG.A1 : -1
Sag mir bitte was ging - die Anwendung von ? im 2. Vorschlag ist mir erst letzten bewusst geworden, bin mir noch net sicher das das in && Verkettungen geht.
-
@ticaki sagte in Tasmota MQTT daten auslesen:
val && JSON.parse(val).ANALOG ? JSON.parse(val).ANALOG.A1 : -1
Hi,
val && JSON.parse(val).ANALOG ? JSON.parse(val).ANALOG.A1 : -1
Diese Version macht am meisten Sinn, Ich habe einen Datenpunkt, KEINE Fehlermeldungen im Protokoll !
das einzige ist das es ab und an mal einen -1 wert gibt aber das kann ich bei influxdb rausfiltern und bei dem Blockly sollte es auch Wurst sein da ich erst werte ab 2000 auswerte, falls mal wieder die Therme spinnt und wieder Gas in mein Büro strömt und zig Feuerwehr Fahrzeuge vor dem Haus stehen.... ist nicht so klasse ..............
Ich werde nachher mal die anderen Daten rausfiltern und auch die von dem Flora Modulen in den Blumen ob das auch damit geht, aber ich bin da mal zuversichtig
val && JSON.parse(val).Flora6d39de ? JSON.parse(val).Flora6d39de.Moisture : -1
Das geht auch soweit halt auch ab und an mal ein -1 drin aber das ist bisher die beste Lösung für meine Bedürfnisse ^^
Ich bedanke mich recht Herzlich für seine Bemühungen und wünsche dir ein wunderschönen Sontag noch ! ! !
mfg
Digi-Bit