NEWS
CO2 Ampel mit MQTT und ESP8266
-
Ich habe jetzt den CO2 Sensor erhalten. Wollte Mal eben auf einem NodeMCU das Programm aufspielen, na was soll ich sagen? Ich bin kläglich gescheitert. Habe mir VS Code heruntergeladen und versucht mich da einzulesen, das Programm ist überhaupt nicht Mal ebenso zu erlernen, da fehlt mir wohl das Grundwissen. Könntest du eventuell eine Anleitung im Bezug auf die Software schreiben? Aber wenn ich mir das so angucke ist das wahrscheinlich so aufwendig als würde ich fragen "schreib Mal ne Anleitung wie ich ein Haus Baue"
Ich glaube das Projekt ist nichts für jedermann. Mal schauen wie ich mir die Zeit nehmen kann um das ganze zu realisieren.Gruß Christian
-
@cvidal Hi. Du kannst auch einfach die fertige Binary auf deine NodeMCU bzw. ESP8266 laden. Dann musst du nicht compilieren!
Ein gutes Programm zum aufspielen ist z.B. Nodemcu flasher.
Die Binary findest du hier: https://github.com/Eisbaeeer/CO2light/blob/main/binary/firmware.bin
Gruß Eisbaeeer -
@eisbaeeer
So ich habe die Teile heute bekommen und direkt mal getestet.
Läuft sehr gut, ich hatte keine Probleme. Danke dir.Gruß Christian
-
@cvidal Demnächst kommt eine neue Version raus. Du kannst in Github das repo abbonieren, dann bekommst du Bescheid, wenn sich was ändert.
Gruß Lars -
Die Version 2.0 ist jetzt auf Github verfügbar. Im Dashboard kann jetzt auch eine manuelle Kalibrierung angestoßen werden.
-
Added manual calibration via dashboard (takes 20 minutes on fresh air)
-
Changed structure of code
-
Moved default boarders of CO2 colors
-
Updated framework
-
Changed brightness to slider
Grüße Eisbaeeer
-
-
@eisbaeeer Danke für die neue Version.
Ich habe mir gerade die V2.0 mit OTA draufgeladen, lief Problemlos.
Ich kann über iobroker die Brightness nicht mehr verstellen.
Bei V1.3 ging das noch.Gruß Christian
-
@cvidal Uuups. Gerade mit der Version 2.1 gefixt.
Gruß Eisbaeeer -
@eisbaeeer
Super, dimmen über Mqtt geht wieder.
Habe wieder über OTA geflasht aber sobald ich auf das Dashboard zugreife stürzt der NodeMCU ab und Bootet neu.
Wenn ich über Kabel flashe dann bekomme ich auch keinen zugriff auf das Dashboard. Das Wlan netz wird aber geöffnet.
Kannst du das bestätigen? -
@cvidal Wired. Ja, kann ich bestätigen. Ich werde den Code auf NeoPixelBus umbauen, da Adafruit-Neopixel das Wifi von den ESP8266 killt. Am besten du nutzt erstmal die 1.3 wieder, bis ich das gefixt habe.
Gruß Eisbaeeer -
@cvidal sagte in CO2 Ampel mit MQTT und ESP8266:
@eisbaeeer
Super, dimmen über Mqtt geht wieder.
Habe wieder über OTA geflasht aber sobald ich auf das Dashboard zugreife stürzt der NodeMCU ab und Bootet neu.
Wenn ich über Kabel flashe dann bekomme ich auch keinen zugriff auf das Dashboard. Das Wlan netz wird aber geöffnet.
Kannst du das bestätigen?Hier kommt die Lösung. Allerdings muss der Din Pin der WS2812 auf einen anderen Port angeschlossen werden. Bitte ab sofort nur noch den Pin GPIO3 dafür verwenden. Ich habe in der README jetzt auch einen Anschlussplan hinterlegt.
Github: https://github.com/Eisbaeeer/CO2light/releases/tag/V2.2
Gruß Eisbaeeer
-
Hallo Eisbaeeer,
finde dein Projekt sehr interessant, und das Design ist wirklich gut gelungen.
So wie ich das jetzt verstanden habe, wenn ich die CO2 Ampel bei dir im Shop bestelle, ist das Gehäuse (zusmmengebaut) auch mit dabei. Ich müsste lediglich noch den Bausatz zusammen fügen und in das Gehäuse einsetzen, oder?Was mich auch noch interessieren würde, kann man, bei dir im Shop, den Bausatz auch ohne Gehäuse beziehen?
Und wenn ich schon am Fragen bin
Besteht die Möglichkeit einen CO-Sensor mit zu integrieren?
Hintergrund:
Ich würde diese Ampel gerne bei mir in der Küche an die Wand montieren.
In der Küche befindet sich eine Gastherme.
Deswegen hatte ich mir gedacht, einen CO-Sensor, in der Art (nur als Beispiel anzusehen), mit zu integrieren.
Der CO-Sensor sollte eben an einer anderen Stelle anbringbar sein, wie die CO2 Ampel.Dankeschön
Gruß, Karsten -
@hydrotec sagte in CO2 Ampel mit MQTT und ESP8266:
Hallo Eisbaeeer,
finde dein Projekt sehr interessant, und das Design ist wirklich gut gelungen.
So wie ich das jetzt verstanden habe, wenn ich die CO2 Ampel bei dir im Shop bestelle, ist das Gehäuse (zusmmengebaut) auch mit dabei. Ich müsste lediglich noch den Bausatz zusammen fügen und in das Gehäuse einsetzen, oder?Ja, so ist es im Moment.
Was mich auch noch interessieren würde, kann man, bei dir im Shop, den Bausatz auch ohne Gehäuse beziehen?
Ja das können wir sicher machen. Schreib mir eine Mail, ich schicke dir ein Angebot. Im Moment habe ich mit Zulieferer Probleme. Ware ist unterwegs, aber die 7 Tage kann ich im Moment nicht einhalten.
Und wenn ich schon am Fragen bin
Besteht die Möglichkeit einen CO-Sensor mit zu integrieren?
Hintergrund:
Ich würde diese Ampel gerne bei mir in der Küche an die Wand montieren.Grundsätzlich geht das schon. Ist aber ein anderer Sensor. Das müsste ich mir anschauen.
In der Küche befindet sich eine Gastherme.
Deswegen hatte ich mir gedacht, ein -
Danke für die schnelle Rückmeldung.
Werde mich die Tage bei dir melden.
info@kidbuild.de
ist richtig, oder@eisbaeeer sagte in CO2 Ampel mit MQTT und ESP8266:
... Im Moment habe ich mit Zulieferer Probleme. ...
Hör mir bloß auf, das ist derzeit echt eine Krankheit, nicht nur im IT-Bereich
(bald schlimmer wie Covid, ups, hab ich das echt laut gesagt )Grundsätzlich geht das schon. Ist aber ein anderer Sensor. Das müsste ich mir anschauen.
Das wäre echt nett von dir, wenn du da mal ein Auge drauf wirfst.
Du weißt bestimmt, eher wie ich, was geht, oder auch nicht. -
@eisbaeeer Wenn ich es gleich noch schaffe löte ich kurz um und teste das mal.
Danke für die schnelle Hilfe. -
@eisbaeeer sagte in CO2 Ampel mit MQTT und ESP8266:
Hier kommt die Lösung. Allerdings muss der Din Pin der WS2812 auf einen anderen Port angeschlossen werden. Bitte ab sofort nur noch den Pin GPIO3 dafür verwenden. Ich habe in der README jetzt auch einen Anschlussplan hinterlegt.
Github: https://github.com/Eisbaeeer/CO2light/releases/tag/V2.2
Gruß Eisbaeeer
Habe es jetzt mal kurz umgelötet und die V2.2 aufgespielt. Läuft einwandfrei.
Gruß Christian
-
@Eisbaeeer Vielen Dank für das schöne Projekt!
Ich habe das seit ca. 2 Wochen als Prototyp auf einem Breadboard am Laufen, vorher lief es > ein Jahr als ESPEasy, aber ohne LED.
Ich hätte dazu ein paar Fragen:- Wie bzw. wo genau ist der Sensor verbaut? Er braucht ja "Luft" um die Messungen durchführen zu können und wenn ich die Bilder richtig interpretiere liegt er auf dem Boden auf und das Gehäuse ist komplett geschlossen?
- Hält der Holzleim das Holz und das Plexiglas zusammen?
und Anmerkungen:
- Ich hatte zuerst ein 0,96" SSD1306-Display dran und habe mir dann bei AliExpress 1,3" Displays bestellt. Display getauscht --> nur Rauschen. Nach einiger Untersuchung habe ich rausgefunden: Die Displays wurden als SSD1306 verkauft, aber tatsächlich waren es SH110X. Habe die passende Library (
#include <Adafruit_SH110X.h>
) genommen und den Code (Initialisierung ist etwas anders) angepasst, sodass es dann auch damit funktionierte. Evtl. wäre es möglich das als Konfigurationsmöglichkeit (im Code) aufzunehmen. - Ich lasse die Werte per MQTT in FHEM einlaufen. Dort wird der CO2-Sensor als Device angelegt. Da die clientId einen zufälligen Bestandteil enthält, wurden immer neue Devices angelegt. Ich habe den Code angepasst um an der Stelle die MAC-Adresse zu verwenden,
clientId += String(random(0xffff), HEX);
habe ich mitclientId += WiFi.macAddress();
ersetzt. Könnte vielleicht auch aufgenommen werden, falls für andere interessant. - Ich würde gern noch den Sensor BME280 integrieren, da die Temperatur, die der MH-Z19 ausgibt, eher ein grober Schätzwert ist. Aber andere Sensorik steht ja eh auf der Agenda.
Viele Grüße, R3.
-
@r3 sagte in CO2 Ampel mit MQTT und ESP8266:
- Ich lasse die Werte per MQTT in FHEM einlaufen. Dort wird der CO2-Sensor als Device angelegt. Da die clientId einen zufälligen Bestandteil enthält, wurden immer neue Devices angelegt. Ich habe den Code angepasst um an der Stelle die MAC-Adresse zu verwenden,
clientId += String(random(0xffff), HEX);
habe ich mitclientId += WiFi.macAddress();
ersetzt. Könnte vielleicht auch aufgenommen werden, falls für andere interessant.
Hallo R3,
Nur interessehalber, warum zufälliger Bestandteil?
Die ClientID kann man doch fest hinterlegen, oder geht das bei Arduino nicht?
OT
Kleiner Tip, bei FHEM hättest auch einfach mit MQTT2 und RegEx arbeiten können.
Und bei ioBroker ist es egal wie die ID zusammengestellt ist, da arbeitest du mit topics und Wildcards.
Wenn du interesse hast, dann können wir uns gerne, in einem neuen Thread, austauschen.
OT Ende
Gruß, Karsten
- Ich lasse die Werte per MQTT in FHEM einlaufen. Dort wird der CO2-Sensor als Device angelegt. Da die clientId einen zufälligen Bestandteil enthält, wurden immer neue Devices angelegt. Ich habe den Code angepasst um an der Stelle die MAC-Adresse zu verwenden,
-
Hallo @hydrotec
@hydrotec said in CO2 Ampel mit MQTT und ESP8266:
Nur interessehalber, warum zufälliger Bestandteil?
Die ClientID kann man doch fest hinterlegen, oder geht das bei Arduino nicht?@Eisbaeeer hat die
clientId
folgendermaßen zusammengebaut:// Create a random client ID String clientId = "CO2Light-"; clientId += String(random(0xffff), HEX);
Also an CO2Light- wird noch eine Zufallszahl gehangen. Hatte dort auch erst eine feste Zahl hinterlegt, aber falls man mal mehrere CO2-Lampen hat ...
OT
Kleiner Tip, bei FHEM hättest auch einfach mit MQTT2 und RegEx arbeiten können.
Und bei ioBroker ist es egal wie die ID zusammengestellt ist, da arbeitest du mit topics und Wildcards.Habe das Gerät unter Verwendung von
MQTT2
mit dem TemplateMQTT2_CLIENT_general_bridge
angelegt, hat dann eine recht umfangreiche RegEx. Für mehrere würde ich aber wieder eine Unterscheidung brauchen, deshalb die MAC-Adresse.Grüße, R3.
-
@r3 sagte in CO2 Ampel mit MQTT und ESP8266:
@Eisbaeeer Vielen Dank für das schöne Projekt!
Ich hätte dazu ein paar Fragen:
- Wie bzw. wo genau ist der Sensor verbaut? Er braucht ja "Luft" um die Messungen durchführen zu können und wenn ich die Bilder richtig interpretiere liegt er auf dem Boden auf und das Gehäuse ist komplett geschlossen?
Nein, der Sensor ist aussen am Boden angebracht.
- Hält der Holzleim das Holz und das Plexiglas zusammen?
Ja bis jetzt schon. Bei den nächsten Würfeln (ab sofort) werde ich eine andere Methode verwenden. Die wird aber nicht verraten
- Ich hatte zuerst ein 0,96" SSD1306-Display dran und habe mir dann bei AliExpress 1,3" Displays bestellt. Display getauscht --> nur Rauschen. Nach einiger Untersuchung habe ich rausgefunden: Die Displays wurden als SSD1306 verkauft, aber tatsächlich waren es SH110X. Habe die passende Library (
#include <Adafruit_SH110X.h>
) genommen und den Code (Initialisierung ist etwas anders) angepasst, sodass es dann auch damit funktionierte. Evtl. wäre es möglich das als Konfigurationsmöglichkeit (im Code) aufzunehmen.
So etwas am besten als "Issue" in Github erfassen. Oder im Code realisieren und als Pull-request in Github einkippen.
- Ich lasse die Werte per MQTT in FHEM einlaufen. Dort wird der CO2-Sensor als Device angelegt. Da die clientId einen zufälligen Bestandteil enthält, wurden immer neue Devices angelegt. Ich habe den Code angepasst um an der Stelle die MAC-Adresse zu verwenden,
clientId += String(random(0xffff), HEX);
habe ich mitclientId += WiFi.macAddress();
ersetzt. Könnte vielleicht auch aufgenommen werden, falls für andere interessant.
Issue in Github erfassen, dann wird es realisiert.
- Ich würde gern noch den Sensor BME280 integrieren, da die Temperatur, die der MH-Z19 ausgibt, eher ein grober Schätzwert ist. Aber andere Sensorik steht ja eh auf der Agenda.
Ja, ich weiß nur noch nicht, ob ich weiterhin den DHT-22 verwende oder den BME280, der etwas teurer ist.
Grüße Eisbaeeer -
Wenn ihr Wünsche habt, sollten aber schon eher konkret sein, bitte als Issue erfassen. Die Client-ID habe ich mal exemplarisch erfasst. Hilft mir ungemein, da ich bei so vielen Projekten sonst eventuell das ein oder andere vergesse
https://github.com/Eisbaeeer/CO2light/issues