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
Auto Amazon Links: Keine Produkte gefunden. http_request_failed: Es wurde keine gültige URL übermittelt. URL: https://ws-eu.amazon-adsystem.com/widgets/q?SearchIndex=All&multipageStart=0&multipageCount=20&Operation=GetResults&Keywords=B07T2MB9SV|B0754N794H&InstanceId=0&TemplateId=MobileSearchResults&ServiceVersion=20070822&MarketPlace=DE Cache: AAL_34c82d8cf5e3d3c0643142c8f353fc29
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.
Danke. Es funktioniert bei mir mit dem „Tasmota Sensors“ Image.
Hallo mich würde das auch interssiern. FHEM habe ich. Tasmota erkennt den bme680. Verbindung zum mqtt ist auch da.
Aber wie kann ich dein Fhem-Script dort einbinden ?
Danke
Reimund