Hallo Zusammen,
aus @herrmannj Projekt ergibt sich die Möglichkeit den Airquality-Sensor mit verschiedenen Hardware-Zusammenstellungen zu betreiben.
Um den Original Thread nicht unnötig aufzublähen, habe ich diesen hier mit der Integration des BME680 erstellt.
Im Wesentlichen dreht es sich um die Synergie zweier Projekte "UniversalSensor-BME680" und dem "Raum(-luft)sensor"
und TFT-Erweiterungen. Desweiteren kommt noch eine JavaScript-Graph-WebSeite hinzu.
Herrmanj hat dankenswerterweise die Kommunikations-Ebene mit FHEM mittels ESP8266 UDP und seinen Protokoll-Modulen auf der FHEM-Seite
die Datenübertragung massiv erleichert. Damit spart man sich den "Umweg" über die LaCrosseGateway oder MQTT.
Diese erste Stufe besteht erst mal aus der Zusammenführung der beiden Code-Strecken.
Ich habe für die erste Variante noch eine OLED-ANzeige gewählt, allerdings eine andere LIB-Version, um noch mehr Anzeige-Möglichkeiten nutzen zu können.
Als zukünftige Erweiterung werde ich noch TFT-Displays (1,8" und/oder 2,4") mit einführen, wenn der funktionale Hardware-Code steht.
Den Code dazu pflege ich hier: AirQualityMultiSensorESP_VS (https://github.com/juergs/AirQualityMultiSensorESP_VS).
Ist aber noch im Moment noch "in der Entstehung" = nicht lauffähig, also noch etwas Geduld bis zum lauffähigen Code ... :'(
Die Hardware etc. vorerst noch identisch mit dem "Raum(-luft)sensor (https://forum.fhem.de/index.php/topic,96241.0.html)". Erweiterungen sind aber in der Planung. ;)
Prerequisiten:Hardware:
Wemos D1 oder NodeMCU |
BME680-Breakout-Board (https://github.com/kriswiner/BME680) (OSH) (https://oshpark.com/shared_projects/LXuNziGd) oder besser PeMues-Kombi: BME680+BH1750 Breakout (https://forum.fhem.de/index.php/topic,78619.msg889982.html#msg889982) |
OLED Display: "0,96 Zoll I2C IIC 12864 128X64 Pixel OLED LCD Display Modul SSD1306 Chip 4 Pin" |
TFT_1: "ST7735 128x160" (Sainsmart) "1.8 SPI TFT LCD Display Module 128x160 Chip ST7735/ILI9341" |
TFT_2: WEMOS TFT 2.4 Touch Shield (hier (https://www.exp-tech.de/displays/lcd/9184/wemos-tft-2.4-touch-shield?c=1074)) 320 × 240 Pixel, TFT-Treiber IC: ILI9341 |
TFT_3: ePaper-Hat 2,7 inch, 274x176 Pixel, "Tri-Color 2.7 inch E-Ink Display Module" |
Platine von PapaRomeo (https://forum.fhem.de/index.php/topic,96241.msg903399.html#msg903399) |
MH-Z19 (Ali) + iAQcore (AMS) + BME680 (Reichelt) |
Arduino Libraries:
ESP8266(Wemos) TFT_eSPI (https://github.com/Bodmer/TFT_eSPI) |
BSEC-Installation, siehe z.B. hier: HowTo (https://forum.fhem.de/index.php/topic,96241.msg901050.html#msg901050) und hier BSEC-Arduino-library (https://github.com/BoschSensortec/BSEC-Arduino-library) |
BME_680_Driver: BoschSensortec (https://github.com/BoschSensortec/BME680_driver) |
EEPROM-Lib |
ESP8266core (WiFi) (https://arduino-esp8266.readthedocs.io/en/latest/) |
MH-Z19 (https://forum.fhem.de/index.php/topic,96241.msg896290.html#msg896290)-Lib |
3D-Druck-Gehäuse:Anbei mal der erste Wurf als Programmier-Konzept.
Hallo Jürgen.
Scheint sehr interessant zu sein.
Habe mir im github mal die. Ino Datei angeschaut. Man kann dort ein rfm69cw aktivieren.
Hast du einen Schaltplan wo welcher Sensor und Sender an welchen Prozessor angeschlossen wird?
Gruß Sascha
Gesendet von meinem E6653 mit Tapatalk
Hallo Sacha,
ist leider noch etwas verfrüht, aber wenn Du am RFM69CW interessiert bist kannst Du
auch den BME680_LaCrosse_UniversalSensor (https://github.com/juergs/BME680_LaCrosse_UniversalSensor) anschauen. Die Anschaltung dafür steht dort im Code-Header ;)
ZitatMan kann dort ein rfm69cw aktivieren.
Habe es mal der Vollständigkeit halber mit in den Code genommen, ist aber bei Aktivierung WiFi und UDP eigentlich nicht mehr notwendig.
Außerdem benötigtst Du zum Empfang des Protokolls die LaCrosseGateway in der Version 1.32 mit UniversalSensor.
Hier in diesem Projekt muss ich erst alles Stückweise aufbauen, dann kann ich auch einen Schaltplan dazu liefern ... ;)
Als erste Orientierung, sie Anhang.
Die Platine von PapaRomeo (https://forum.fhem.de/index.php/topic,96241.msg903399.html#msg903399) lässt sich bis auf den TFT-Anschluss 1:1 benutzen.
Für die RFM69CW-Anbindung kannst Du Dich auch an PeMues Nano_LaCrosse_Gateway (https://wiki.fhem.de/wiki/LaCrosseGateway_V1.x#Nano_LaCrosse_Gateway) orientieren.
Grüße,
Jürgen
Danke für deine Infos.
Ein LaCrosse Gateway mit v1. 32 habe ich schon am laufen. Für meine LaCrosse Sensoren.
Aber für einen batteriebetrieb ist das nicht ausgelegt, oder?
Gruß Sascha
Gesendet von meinem SM-T560 mit Tapatalk
ZitatAber für einen batteriebetrieb ist das nicht ausgelegt, oder?
Nein, mit dem ESP mit WLAN nicht wirklich ... :(
Zitat von: sash.sc am 10 Februar 2019, 15:53:30
Aber für einen batteriebetrieb ist das nicht ausgelegt, oder?
Nein, aber wie wäre das mit einem Atmel644P und dem Homematic Protokoll? Ich denke da an die HB-UNI-644 (https://github.com/alexreinert/PCB#hb-uni-644-rev-2) als Testplatine und langfristig an ein Upgrade von Dirk's Innensensor (https://wiki.fhem.de/wiki/Universalsensor#Innensensor).
Gruß Peter
Ich muss mal schauen. Hier im Forum gibt es ja auch sogar wie einen universal Sensor auf hm Basis. Ist aber nicht der aus dem Wiki....
Gruß Sascha
Gesendet von meinem SM-T560 mit Tapatalk
Hallo Peter,
danke für das Beisteuern von neuen Ideen ...
Atmel 644 kein Problem. Homematic setze ich (noch) nicht ein.
https://wiki.fhem.de/wiki/Universalsensor#Innensensor (https://wiki.fhem.de/wiki/Universalsensor#Innensensor)
muss ich mir auch mal genauer anschauen ... (Thema: Batterie-Betrieb)
HM wäre dann CC1101 @868MHz ?
Was für eine Gateway, CUL?
/edit: https://github.com/alexreinert/PCB#hb-uni-644-rev-2 (https://github.com/alexreinert/PCB#hb-uni-644-rev-2) sieht interessant aus.
Muß ich mal genauer untersuchen ...
Für WLAn ist der ESP aber schon eher die erste Wahl, kann mir aber auch sowas wie ein reiner WLAN-Protokoll-Prozessor (C3-PO)
mit serieller Anbindung und DeepSleep vorstellen ... ;D
Grüße,
Jürgen
Ja, HM ist ein cc1101 mit 868Mhz. Als Gateway ein cul.
Ich muss sagen, dass bis dato HM und LaCrosse am besten laufen.
ESP8266 auch sehr gut, da sehr flexibel.
Aber da kommt dann auch der Gedanke an Mysensors! Die arbeiten viel mit den rfm69.
Gruß Sascha
Gesendet von meinem SM-T560 mit Tapatalk
Ok, bei schon bestehender HM-Infrastruktur macht es natürlich Sinn den BME680 dort noch mit einzubinden zu wollen.
Da spricht meiner Meinung nach aber nichts dagegen, das mittels Anbindung über das QY-MCUBME680V1 serielle Interface
einfach an einen Node mit dem Arduino-Nano mit CC1101und ASKSin-Integration anzubinden?
Dann ist das BSEC-Gedöns nicht mit dem Atmel644 erforderlich => neues Projekt!
Würde mich freuen, wenn es ein Projekt auf Homematic basis geben wird :) sowas in die Richtung fehlt noch :)
Ich klinke mich hier auch Mal ein. Bei mir läuft das ganze momentan mit einem BME280, Max40009, Mh-z19 und TFT.
Endlich mal ein Display, das einfach so, out-of-the-box funktioniert. :)
... Mit Touch und (relativ) günstig ist, mit ca. 3 Tagen Lieferzeit.
Die Doppelsteckerleiste zum D1mini passt genial dazu ....
http://www.esp8266learning.com/a-quick-look-at-the-wemos-tft-2-4-touch-shield.php#codesyntax_6 (http://www.esp8266learning.com/a-quick-look-at-the-wemos-tft-2-4-touch-shield.php#codesyntax_6)
https://www.exp-tech.de/displays/lcd/9184/wemos-tft-2.4-touch-shield (https://www.exp-tech.de/displays/lcd/9184/wemos-tft-2.4-touch-shield)
Evtl. wäre auch noch das I2C-Shield sinnvoll:
https://www.exp-tech.de/plattformen/wemos/9160/wemos-tft-i2c-connector-shield (https://www.exp-tech.de/plattformen/wemos/9160/wemos-tft-i2c-connector-shield)
Touch:
https://github.com/PaulStoffregen/XPT2046_Touchscreen/blob/master/XPT2046_Touchscreen.h
BME680: http://www.esp8266learning.com/bme680-environment-sensor-and-esp8266-example.php (http://www.esp8266learning.com/bme680-environment-sensor-and-esp8266-example.php)
Schematic:
d1_mini_shields:sch_tft2.4_v1.0.0.pdf (https://docs.wemos.cc/en/latest/_static/files/sch_tft2.4_v1.0.0.pdf)
Wiki:
https://wiki.wemos.cc/products:d1_mini_shields:tft_2.4_shield (https://wiki.wemos.cc/products:d1_mini_shields:tft_2.4_shield)
Ist dass das oben verlinkten? Bin auf das Endergebnis gespannt.
Habe die Daten oben mit eingetragen.
Muss noch die freien Pins berücksichtigen, ein Schaltungslayout dazu habe ich noch nicht gefunden ...
Der Touch benötigt auch noch Pins. XPT2046_Touchscreen. Funktioniert, allerdings ohne setRotation.
Ist auf jeden Fall interessant.
Für eine Aufrüstung des Maples wäre das hier geeignet: https://www.seeedstudio.com/Air602-WiFi-Development-Board-p-3140.html (https://www.seeedstudio.com/Air602-WiFi-Development-Board-p-3140.html).
Dann wäre der Nachteil des fehlenden WLANs hinfällig.
Gehäuse: Idee (https://www.tinkerforge.com/de/shop/media/catalog/product/cache/2/image/9df78eab33525d08d6e5fb8d27136e95/t/a/tabletop_weather_station_colors_side_by_side_800.jpg)
Erst mal das Pinout des TFT-Displays bestimmen...
Darauf kann man aufbauen ...
Wobei TS_IRQ und TS_Busy nicht zum Wemos durchmessbar sind ...
/edit: TS_IRQ auf 255 setzen!
3.5 Zoll TFT am wemos d1 Mini:
https://www.youtube.com/watch?v=aquHkKU-PNk (https://www.youtube.com/watch?v=aquHkKU-PNk)
Dürften nicht mehr viele Pins über sein ;D
Hallo Starsurfer,
auch eine Idee, habe auch noch ein paar parallele Display-5V-Shields herumliegen ....
aber das Beste:
ZitatI will release the source code later. Currently I have no time. Please, don't hurry up me :)
;D
Ich habe hier auch noch 3 STK 4.3" TFT mit shield liegen, zum wegschmeißen eigentlich zu teuer. Also muss ich mir da irgendwas für überlegen.
Habe mir jetzt erstmal einen zweiten mh-z bestellt. Ich glaube den bme680 lasse ich erstmal weg.
Bist du mit dem lolin TFT schon weiter, sind da genug Pins frei?
Gruß Sascha
ZitatBist du mit dem lolin TFT schon weiter
Bin gerade dabei. Allerdings möchte ich erst ein 3D-Druck-Gehäuse dazu konzipieren,
damit der Aufbau von vorne herein dazu passt. ;)
Pins wären allerdings nur noch 2 frei. Das könnte noch für zwei Buttons zum Umschalten der Displayanzeige
passen. Ein Rotary-Encoder wäre aber auch nicht schlecht.
Der MH-Z19 ist mir eigentlich zu teuer, der BME680 tut es auch fast gleichwertig, mit etwas mehr Aufwand ...
Wie "genau" ist den der 680 bei Temperatur und Luftfeuchtigkeit?
Zitat von: Starsurfer am 17 Februar 2019, 09:21:20
Wie "genau" ist den der 680 bei Temperatur und Luftfeuchtigkeit?
Es kommt immer darauf an, wogegen Du die Genauigkeit vergleichst.
Ansprechverhalten und Auflösung sind mehr als ausreichend.
Ca. 0,5 bis 1 Grad Celsius Offset je nach Umgebungsbedingungen.
Eigen- und Platinen-Erwärmung sind sehr relevant, deshalb muss man auch Wert auf ein passendes Gehäuse legen.
Bei der Luftfeuchtigkeit fehlt mir noch mangels Kalibriermöglichkeit die Einschätzung.
Gefühlt ist die Feuchte 10..20% zu niedrig gegenüber anderen z.B. Lacrosse-Sensoren.
Ah okay, die Lacrosse habe ich hier auch stehen und benutze sie zur Heizung und Lüftungssteuerung.
Der ESP-Wemos-Anfang mit dem "umorganisierten" BME680 (https://github.com/kriswiner/BME680) ist gemacht ...
Erst mal mit dem ST7735 128x160-Display, weil da die Portierung vom STM32 am einfachsten ist.
Darauf aufbauend kommt dann das 240x320-Display mit Touch dran...
https://github.com/juergs/BME680_TFT_Monitor (https://github.com/juergs/BME680_TFT_Monitor)
Datenübertragung:
- UDP
- RFM69CW (LaCrosse-Protokoll (LGW)
- CC1101 (HM-ASKsin-Protokoll)
Anzeige
- keine
- TFT - 128x160
- TFT - 240x320
- OLED - SS1306 (64x128)
- ePaper (https://www.youtube.com/watch?v=kAmnU5Y96MA)
Hallo !
Der BME680 interessiert mich auch und ich habe ihn bereits mit einem ESP8266 in Verwendung.
Problem ist nur, VOC und CO2 stehen auf 0. Hast Du hier schon Erfahrung?
und wann möchtest fertig sein mit Deiner Lösung? Ich bin gespannt auf dein Script.
Gruß
Thomas
Hallo Thomas,
dieser Thread ist nur die Fortsetzung eines anderen.
Bemühe einfach die Suche in Fhem nach bme680.
Wir haben mehrere Möglichkeiten (mit und ohne BSEC) ausgearbeitet, die sehr gut funktionieren ...
Hier: https://forum.fhem.de/index.php/topic,78619.0.html (https://forum.fhem.de/index.php/topic,78619.0.html)
oder: https://forum.fhem.de/index.php/topic,96241.0.html (https://forum.fhem.de/index.php/topic,96241.0.html)
Wenn Du Deine Version näher beschreibst, kann ich Dir vielleicht weiterhelfen ...
Jürgen
Moin,
hat zufällig jemand eine Erweiterungsplatine für die Sensoren, die man hinten auf den TFT aufstecken kann?
Schön wäre es, wenn diese neben dem TFT raus steht, so das die Sensoren (BME+MAX) nach vorne zeigen.
Zitat von: juergs am 13 Februar 2019, 20:21:02
Endlich mal ein Display, das einfach so, out-of-the-box funktioniert. :)
... Mit Touch und (relativ) günstig ist, mit ca. 3 Tagen Lieferzeit.
Die Doppelsteckerleiste zum D1mini passt genial dazu ....
http://www.esp8266learning.com/a-quick-look-at-the-wemos-tft-2-4-touch-shield.php#codesyntax_6 (http://www.esp8266learning.com/a-quick-look-at-the-wemos-tft-2-4-touch-shield.php#codesyntax_6)
https://www.exp-tech.de/displays/lcd/9184/wemos-tft-2.4-touch-shield (https://www.exp-tech.de/displays/lcd/9184/wemos-tft-2.4-touch-shield)
Evtl. wäre auch noch das I2C-Shield sinnvoll:
https://www.exp-tech.de/plattformen/wemos/9160/wemos-tft-i2c-connector-shield (https://www.exp-tech.de/plattformen/wemos/9160/wemos-tft-i2c-connector-shield)
Touch:
https://github.com/PaulStoffregen/XPT2046_Touchscreen/blob/master/XPT2046_Touchscreen.h
BME680: http://www.esp8266learning.com/bme680-environment-sensor-and-esp8266-example.php (http://www.esp8266learning.com/bme680-environment-sensor-and-esp8266-example.php)
Schematic:
https://wiki.wemos.cc/_media/products:d1_mini_shields:sch_tft2.4_v1.0.0.pdf (https://wiki.wemos.cc/_media/products:d1_mini_shields:sch_tft2.4_v1.0.0.pdf)
Wiki:
https://wiki.wemos.cc/products:d1_mini_shields:tft_2.4_shield (https://wiki.wemos.cc/products:d1_mini_shields:tft_2.4_shield)
Hallo Starsurfer,
welches Gehäuse schwebt Dir da vor?
Hatte an zwei Plexiglasplatten gedacht, die mit Abstandhaltern aneinander geschraubt werden, in Ermangelung eines 3D Druckers.
Zitat von: Starsurfer am 23 Juni 2019, 16:49:44
Hatte an zwei Plexiglasplatten gedacht, die mit Abstandhaltern aneinander geschraubt werden, in Ermangelung eines 3D Druckers.
Habe schon ein 3D-Druck-Prototyp in Fusion360 erzeugt, bin aber noch nicht ganz zufrieden damit.
Der Wemos wird mit einem separaten Gehäuseteil aufgesetzt.
Der Fuß ist noch modelliert, um die beste Touch-Position bzw. den passenden Hand-gerechten Neigungswinkel zu bestimmen....
Suche noch für den Ständer eine (bessere) Lösung...
Das Designen in Fusion war übrigens doch etwas schwieriger als gedacht.
Der BME680-Sensor würde in den Fuß integriert, weit weg von Temperatureinflüssen ...
Evtl. fange ich auch nochmal neu und größer an, um den Ständer komplett in das Gehäuse zu integrieren ...