NEWS
[Erledigt]BME280 mit ESP8266 von MQTT auf Webserver als Text
-
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@jabba76 Super kannst Du mit das noch für die anderen 2 Parameter machen? - Also Feuchte und Druck?
Temperatur {"topic":"mqtt/0/esp1/temperature","payload":"23.29","acknowledged":true,"timestamp":1637516687490,"lastchange":1637516687490,"from":"system.adapter.mqtt.0","_msgid":"f040134c.cbdcc"} Luftdruck {"topic":"mqtt/0/esp1/pressure","payload":"1005.47","acknowledged":true,"timestamp":1637516998692,"lastchange":1637516998692,"from":"system.adapter.mqtt.0","_msgid":"dbf9aa3b.50ede8"} Luftfeuchte {"topic":"mqtt/0/esp1/humidity","payload":"46.25","acknowledged":true,"timestamp":1637516998692,"lastchange":1637516998692,"from":"system.adapter.mqtt.0","_msgid":"f94a5ec3.dd7da"}
-
@mickym
Also Du hast immer noch Strings drin - hast Du die Adapterkonfig geändert - na auch egal. Ich empfehle aber ggf. die Option auszumachen - aber wahrscheinlich sind die DP im mqtt bereits Zeichenketten - aber egal.Ich habs anhand des flows nun rekonstruiert:
Diesen Teil ersetzt Du
durch durch folgede Change Node und setzt die iobroker In Nodes davor:
Ach und schau dass Deine iobroker In Nodes auf
Du bekommst erst was raus, wenn alle Parameter einmal geschickt wurden, dann immer bei jeder Änderung - egal von welchem Parameter.
-
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@mickym
Also Du hast immer noch Strings drin - hast Du die Adapterkonfig geändert - na auch egal. Ich empfehle aber ggf. die Option auszumachen - aber wahrscheinlich sind die DP im mqtt bereits Zeichenketten - aber egal.Ich habs anhand des flows nun rekonstruiert:
Diesen Teil ersetzt Du
durch durch folgede Change Node und setzt die iobroker In Nodes davor:
Ach und schau dass Deine iobroker In Nodes auf
Du bekommst erst was raus, wenn alle Parameter einmal geschickt wurden, dann immer bei jeder Änderung - egal von welchem Parameter.
wenn ich importiern möchte zeigt er mit das: Error: Eingabe ist kein JSON-Array ? und zeichenkette ist jetzt aus.
Das mit dem Parameter schon nicht schlecht also der Text wird sich dann ändern wenn sich der Wert ändert ok.
-
@jabba76 Nein die Eingabe rauskommen sind normale skalare Werte Du musst aber aufhören Objekte einzugeben:
also bitte auf value und sende msg bei start in deinen iobroker in NOdes umstellen.
{"topic":"0_userdata/0/testType","payload":19.5,"acknowledged":false,"timestamp":1636835207813,"lastchange":1636835207813,"from":"system.adapter.node-red.0","_msgid":"2465ec6b.e48df4"}
Wenn Du auf value einstellst, dann wird die payload genau 19.5. Also ein normaler nummerischer Wert kein JSON oder sonst was.
-
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@jabba76 Nein die Eingabe rauskommen sind normale skalare Werte Du musst aber aufhören Objekte einzugeben:
also bitte auf value und sende msg bei start in deinen iobroker in NOdes umstellen.
ok verstanden das mache ich, aber dein spoiler kann ich nicht importieren Error: Eingabe ist kein JSON-Array ? makieren kopieren importieren geht nicht
-
@jabba76 sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@jabba76 Nein die Eingabe rauskommen sind normale skalare Werte Du musst aber aufhören Objekte einzugeben:
also bitte auf value und sende msg bei start in deinen iobroker in NOdes umstellen.
ok verstanden das mache ich, aber dein spoiler kann ich nicht importieren Error: Eingabe ist kein JSON-Array ? makieren kopieren importieren geht nicht
Dann hast Du nicht alles kopiert - und es fehlt entweder die ECKIGE Klammer oben oder unten beim Import.
Ist eh nur eine Change Node - kannst auch selbst machen - ist ja relativ einfach:
-
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@jabba76 sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@jabba76 Nein die Eingabe rauskommen sind normale skalare Werte Du musst aber aufhören Objekte einzugeben:
also bitte auf value und sende msg bei start in deinen iobroker in NOdes umstellen.
ok verstanden das mache ich, aber dein spoiler kann ich nicht importieren Error: Eingabe ist kein JSON-Array ? makieren kopieren importieren geht nicht
Dann hast Du nicht alles kopiert - und es fehlt entweder die ECKIGE Klammer oben oder unten beim Import.
Ist eh nur eine Change Node - kannst auch selbst machen - ist ja relativ einfach:
hast du recht gehabt nicht richtig kopiert
obwohl select all gedrückt
das funktioniert mit dem esp1 jetzt habe ich noch esp2 ist aber noch nicht angeschlossen muss ich das genauso machen wie für den ersten ? bin mal gespannt ob sich die Werte aktualisieren werden -
@jabba76 Ja geht genauso. siehst ja dass Du noch mal topic setzen musst im originalen Flow - wenn das dann in eine Ausgabe soll. Ich habe die nächsten paar Stunden bissi wenig Zeit - kann nur sporadisch helfen. Wie gesagt die Ausgabe solltest Du bereits bekommen, wenn Du sende msg bei Start.
-
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@jabba76 Ja geht genauso. siehst ja dass Du noch mal topic setzen musst im originalen Flow - wenn das dann in eine Ausgabe soll. Ich habe die nächsten paar Stunden bissi wenig Zeit - kann nur sporadisch helfen. Wie gesagt die Ausgabe solltest Du bereits bekommen, wenn Du sende msg bei Start.
ok noch eine Frage wozu ist das unten im Bild ?
da steht was von esp3 usw brauche ich das -
@jabba76 nein esp03 nicht.
-
@mickym
ok wenn ich den esp2 noch nicht habe sollten sich die werte auch jetzt schon automatisch ändern ?
oder funktioniert das dann erst wenn alles da ist?mfg
-
@jabba76 Na in der Template node für den 1. sollte schon was rauskommen. Die Ergebnisse siehst ja immer im Kontextmenü in den Flowvariablen und können dann ja via HTTP abgerufen werden.
Du kannst auch immer eine Debug Node an alle Deine 3 iobroker in Nodes und an die JOIN Node machen - um zu sehen, ob jeder Datenpunkt geliefert hat und wie das zusammengesetzte Objekt aussieht.
-
@mickym sagte in BME280 mit ESP8266 von MQTT auf Webserver als Text:
@jabba76 Na in der Template node für den 1. sollte schon was rauskommen. Die Ergebnisse siehst ja immer im Kontextmenü in den Flowvariablen und können dann ja via HTTP abgerufen werden.
Du kannst auch immer eine Debug Node an alle Deine 3 iobroker in Nodes und an die JOIN Node machen - um zu sehen, ob jeder Datenpunkt geliefert hat und wie das zusammengesetzte Objekt aussieht.
Hallo ja es funktioniert! hast du gut gemacht ohne dich hätte ich das nicht geschafft habe das nicht so richtig verstanden was zb die change node macht also die Grundfunktion weiss ich schon aber was man da reinschreiben muss/soll K.a
Habe auch schon den zweiten Sensor angeschlossenein kleines Bild:
Danke nochmal bin dir Bier/Kaffee schuldig
-
@jabba76 Na das freut mich.
- Deine Freude darüber ist mir Lohn genug.
Also viel Spaß.
-
Hallo und Frohe nach Weihnachten hoffe habt Ihr alle alles gut überstanden
Es funktioniert alles Prima habe aber eine Frage die Sensoren senden auch Status (Zeitstempel) den würde ich gerne auch auf dem Display haben wollen weil dadurch weiß ich dann ob der/die Sensoren noch leben falls der Akku Tod ist.
Ausgabe vom Sensor
{"topic":"mqtt/0/esp1/status","payload":"ESP01 alive","acknowledged":true,"timestamp":1640703212978,"lastchange":1640703212978,"from":"system.adapter.mqtt.0","_msgid":"87ba97f9.24cca8"}
könntest du mir nochmal helfen wenn du Zeit hast? es ist schon etwas schwierig für mich das da einzubinden vor allem muß diese Zeitstempel wohl noch umformatiert werden
Danke mfg
Update: hab da etwas rum gefummelt
habe Funktion node eingesetzt mit:
msg.payload = new Date().toString(); return msg;
ausgabe ist jetzt so:
Temperatur Terrasse: Temperatur: 5.74 °C Feuchtigkeit: 87.62 % Luftdruck: 986.13 hPa Status: Tue Dec 28 2021 16:36:47 GMT+0100 (Central European Standard Time) Temperatur Kinderzimmer: Temperatur: 22.75 °C Feuchtigkeit: 49.7 %
was muss ich in der node ändern damit "GMT+0100 (Central European Standard Time)" nicht angezeigt wird?
den Luftdruck vom Kinderzimmer habe ich weggelassen brauche ich nicht zwei malam Bilderrahmen sieht schon ziemlich gut aus
mfg
-
@jabba76 Mach keine Function Node - erweitere die Change Node und formatiere das Datum doch so wie Du es gerne hast. Willst Du den TimeStamp von beiden Nodes oder einen insgesamt?
-
danke das du dich meldest
naja wenn beide auf den BR passen und noch alles lesbar ist, dann würde ich beide haben wollen halt als Info ob sie noch leben
was muß ich da in der Change Node eintragen damit das eingebunden wird ?
-
@jabba76 Dein Flow sieht ungefähr noch so aus??
-
ja
-
@jabba76 sagte in [Erledigt]BME280 mit ESP8266 von MQTT auf Webserver als Text:
ja
Nun dann musst ja die beiden Template Nodes noch anpassen:
Ich habs mal aktualisiert genannt.
Wie hättest Du den Zeitstempel denn gerne formatiert? Wochentag? Datum in welcher Form? Uhrzeit in welcher Form?