Umweltdatensensor mit dem NodeMCU ESP8266

Um was geht's?

ich möchte hier kurz ein Beispielprojekt für den ESP8266 aufzeigen, da man mit sehr einfachen Mitteln und sehr schnell, auch ohne tiefere Kenntnisse, Wifi Sensoren mit dem ESP selbst bauen kann.


Ein dafür sehr gut geeignetes Einsteigerprojekt ist dieses zur Feinstaubmessung aufrufende Projekt von luftdaten.info. Ich habe das nachgebaut und die Sensoren in meine Loxone eingebunden. Das schöne an dem Projekt ist, dass man das Ganze nur zusammenstecken muss und damit recht schnell einen sehr leistungsfähigen Sensor hat. Preislich ist es auch sehr interessant, der Feinstaubsensor kostet zwar ein paar Euro's, aber das ist auch der besondere Sensor in diesem Beispiel. Die NodeMCU ESP8266 und die Standardsensoren sind im Kleingeldbereich. Der Gesamtpreis des Projektes wird mit ca. 26 Euro angegeben.

https://luftdaten.info/

dort gibt es eine Einkaufsliste zur Bestellung direkt aus China (keine Angst davor, der Versand funktioniert nach meiner Erfahrung mit etwas Geduld blendend), eine sehr ausführliche Aufbauanleitung und Hilfestellung. Das sollte für Jeden machbar sein.

Im Grundausbau können bereits Feinstaubwerte, Temperatur und Luftfeuchtigkeit ausgewertet werden. Über den zusätzlich Anschluss eines BME280 kann auch der Luftdruck ausgewertet werden, dies ist ohne Änderung der Firmware und nur durch Konfiguration möglich, also gleich mitbestellen.

Auch kann man die Daten im Standard zusätzlich an https://opensensemap.org/ senden.


Für alle die mehr wollen (habe ich selbst noch nicht ausprobiert):

Die Firmware ist Open Source und kann mit eigenen Sensoren erweitert werden, hier sind dann aber schon tiefere Kenntnisse notwendig.


Integration

Das grundsätzliche Vorgehen zur Einbindung in die Loxone über virtuelle Eingänge sollte bekannt sein. Sonst hier lesen: Virtueller HTTP-Eingang

Die Lösung zu Einbindung wurde bereits im Forum diskutiert, ich habe es von dort auch übernommen:

https://www.loxforum.com/forum/german/software-konfiguration-programm-und-visualisierung/99258-daten-von-luftdaten-auslesen


  1. Die Daten können von der lufdaten.info Seite eingelsen werden:
  2. die Daten von meinem Sensor über die lokale IP im json format auslesen:
  • http://{ip-des-sensors}/data.json
  • wie unter https://luftdaten.info/faq/#toggle-id-8 beschrieben.
  • dann ein virtueller Eingang und wie oben beschrieben die Werte auslesen... ein Beispiel wie das json bei mir aussieht (Daten sind nicht sinnvoll, Sensor liegt im Büro und der Sensor muss erstmal warm laufen)

{"software_version": "NRZ-2017-099", "age":"8", "sensordatavalues":[{"value_type":"SDS_P1","value":"23.43"},{"value_ty pe":"SDS_P2","value":"12.40"},{"value_type":"tempe rature","value":"22.00"},{"value_type":"humidity", "value":"38.60"},{"value_type":"BME280_temperature ","value":"21.39"},{"value_type":"BME280_humidity" ,"value":"33.28"},{"value_type":"BME280_pressure", "value":"99483.39"},{"value_type":"samples","value ":"592028"},{"value_type":"min_micro","value":"236 "},{"value_type":"max_micro","value":"223698"},{"v alue_type":"signal","value":"-77"}]}