Robins Blog – Technik und Multimedia

Fhem: Revisited – Air-Qualitysensor BME 680 – Temperatur – Luftfeuchte – Luftdruck über MQTT getestet – Tasmota

Nachdem ich den Air-Quality-Sensor BME 680 ungefähr ein Jahr getestet habe  (-> siehe Blogbeitrag) und mit dem Ergebnis nicht zufrieden war, habe ich ihn mir noch mal untersucht. Der Sensor lieferte mir unzuverlässige Meßergebnisse. Die Lösung ist mir erst später aufgefallen. Laut Datenblatt verträgt der Sensor  nur 3,3V, jedoch auf dem Board ist ein 5V  Regler drauf, der es ermöglicht, den bme 680 auch mit 5 V zu versorgen.

Während die Stromversorgung von 5V nun stabile Ergebnisse übermittelte, schaute ich nach einer neuen Firmware nach. Stehengeblieben bin ich bei  – wie soll es  auch anders sein – bei Tasmota.
Die Beschaltung mit einem dazugehörigen wemos D1 blieb gleich.

Also, Tasmota , Typ Generic:
Wemos: 5V / D1 / D2 / GND
bme680: VCC / SCL / SDA / GND

 

In Fhem kann das ganze dann so aussehen:

Um die Luftqualität für andere Geräte (tabletUI, ALEXA, Telegram) noch transparenter zu machen, habe ich zusätzliche Readings gemacht.

Luftqualiliteral
gut
2019-05-18 11:18:05
Luftqualiliteral_ALEXA
Die Raumluft im Büro ist gut
2019-05-18 11:18:05
Luftqualino
3
2019-05-18 11:18:05

Das Fhem-Script sieht dann so aus:

defmod doif_Sonoff_bme680 DOIF ([Sonoff_bme680:BME680_PRESENCE] eq "Offline" ) \
(setreading Sonoff_bme680 Luftqualiliteral Fehler)\
(setreading Sonoff_bme680 Luftqualiliteral_ALEXA Es ist ein Fehler aufgetreten)\
(setreading Sonoff_bme680 Luftqualino 0)\
(setreading Sonoff_bme680 BME680_Gas 0)\
(setreading Sonoff_bme680 BME680_Humidity 0)\
(setreading Sonoff_bme680 BME680_Pressure 0)\
(setreading Sonoff_bme680 BME680_Temperature 0)\
DOELSEIF (([Sonoff_bme680:BME680_Gas] > 10) && [Sonoff_bme680:BME680_Gas] < 200) \ (setreading Sonoff_bme680 Luftqualiliteral schlecht)\ (setreading Sonoff_bme680 Luftqualiliteral_ALEXA Die Raumluft im Büro ist schlecht)\ (setreading Sonoff_bme680 Luftqualino 1)\ DOELSEIF (([Sonoff_bme680:BME680_Gas] > 200) && ([Sonoff_bme680:BME680_Gas] )< 350 )\ (setreading Sonoff_bme680 Luftqualiliteral mäßig)\ (setreading Sonoff_bme680 Luftqualiliteral_ALEXA Die Raumluft im Büro ist moderat)\ (setreading Sonoff_bme680 Luftqualino 2) \ DOELSEIF ([Sonoff_bme680:BME680_Gas] > 350) \
(setreading Sonoff_bme680 Luftqualiliteral gut)\
(setreading Sonoff_bme680 Luftqualiliteral_ALEXA Die Raumluft im Büro ist gut)\
(setreading Sonoff_bme680 Luftqualino 3)
attr doif_Sonoff_bme680 do always
attr doif_Sonoff_bme680 room Logik

und

defmod ej12 expandJSON Sonoff_bme680.*:.*:.{.*}
attr ej12 room Logik

Wichtig: Ich habe hier nicht das standardmäßige Tasmota Image genommen, sondern die Firmware mit minimalen Devices kompiliert. Wer einen Wemos D1 mit diesem Image haben möchte, dem kann ich für 8,95 Euro inkl. Versand (unversichert) einen geflashten Wemos zuschicken. Kontakt per eMail.

 

 

 

Die mobile Version verlassen