Feinstaubbelastung ist ein immer wichtigeres Thema, vor allem in Städten und dicht besiedelten Gebieten. Mit einem selbstgebauten Feinstaubsensor kannst Du die Luftqualität rund um Dein Zuhause ganz einfach überwachen und dabei auch noch etwas Geld sparen. In diesem Blogbeitrag zeige ich Dir, wie Du mit einem ESP8266 und dem Sensor PMS7003 von Plantower einen Feinstaubsensor für die Integration in Home Assistant baust.
Warum der PMS7003? Der PMS7003 gilt als besonders zuverlässiger Feinstaubsensor und bietet gegenüber anderen Modellen deutliche Vorteile in Genauigkeit, Zuverlässigkeit und Kosten. Alternativen wie der SDS011 oder der DHT22 liefern oft weniger genaue Daten oder haben eine geringere Lebensdauer, vor allem bei regelmäßiger Messung im Außenbereich. Mit der robusten Konstruktion und der hohen Sensitivität kann der PMS7003 sehr feine Partikel präzise erfassen und ist daher für unser Projekt ideal.
Zusätzlich erklären wir Dir, wie Du ein einfaches Gehäuse aus PVC-Rohren baust, damit der Sensor auch im Outdoor-Bereich sicher betrieben werden kann.
Voraussetzungen und Material
Bevor wir loslegen, hier eine kurze Liste der benötigten Materialien:
- ESP8266 (z.B. Wemos D1 Mini oder NodeMCU)
- PMS7003 Feinstaubsensor von Plantower
- Jumper-Kabel für die Verbindungen
- PVC-Rohre und Zubehör für ein Gehäuse (wenn der Sensor im Außenbereich genutzt wird)
- Home Assistant als zentrale Smarthome-Plattform
- ESPHome als Firmware für den ESP8266
- Optional: Lötkolben für stabile Verbindungen
Warum der PMS7003 die beste Wahl ist
Die meisten Feinstaubsensoren unterscheiden sich vor allem in Messgenauigkeit, Partikelspektrum und Lebensdauer. Hier ein Vergleich zwischen den gängigsten Sensoren:
- PMS7003 (Plantower): Misst PM1.0, PM2.5 und PM10 mit hoher Genauigkeit und ist langlebig, auch bei Outdoor-Einsatz.
- SDS011 (Nova Fitness): Misst nur PM2.5 und PM10 und ist weniger genau, besonders bei kleineren Partikeln (PM1.0).
- DHT22: Wird oft für Temperatur und Luftfeuchtigkeit verwendet, liefert jedoch keine Feinstaubwerte.
- HPMA115S0 (Honeywell): Ist ebenfalls ein sehr guter Sensor, jedoch teurer und oft schwerer zu beschaffen.
Schritt-für-Schritt-Anleitung: Feinstaubsensor mit ESPHome und PMS7003 erstellen
1. Verkabelung des PMS7003 mit dem ESP8266
Der erste Schritt ist die Verkabelung. Der PMS7003 hat mehrere Pins, aber wir brauchen nur einige davon:
- Pin 1 (VCC) des PMS7003 wird mit 3.3V des ESP8266 verbunden.
- Pin 2 (GND) geht an den GND-Pin des ESP8266.
- Pin 4 (RX) des PMS7003 wird mit TX (GPIO1) am ESP8266 verbunden.
- Pin 5 (TX) des PMS7003 geht an RX (GPIO3) des ESP8266.
Hinweis: Bei der Wahl des ESP8266-Modells kann es zu leichten Unterschieden bei der Pinbezeichnung kommen. Häufig genutzte Modelle sind der Wemos D1 Mini und NodeMCU.
2. ESPHome in Home Assistant installieren und einrichten
Falls Du ESPHome noch nicht in Deinem Home Assistant installiert hast, gehe wie folgt vor:
- Gehe in Home Assistant auf Einstellungen > Add-ons.
- Suche nach ESPHome und installiere das Add-on.
- Starte ESPHome und öffne die Weboberfläche.
3. Erstelle ein neues ESPHome-Projekt für den Feinstaubsensor
Jetzt konfigurieren wir den ESP8266 über ESPHome:
- Gehe in der ESPHome-Oberfläche auf Neues Gerät hinzufügen.
- Gib einen Namen für das Gerät ein, z.B. „Feinstaubsensor“.
- Wähle als Plattform ESP8266 und folge den Anweisungen.
Nach dem Anlegen des Projekts öffnet sich der YAML-Konfigurationseditor. Hier fügen wir nun den Code für den PMS7003 hinzu.
4. YAML-Code für den PMS7003 in ESPHome
Hier die genaue Konfiguration für den PMS7003:
esphome: name: feinstaubsensor platform: ESP8266 board: d1_mini wifi: ssid: "Dein_WLAN_Netzwerk" password: "Dein_WLAN_Passwort" # Über Home Assistant steuerbar machen api: # Logging aktivieren logger: # OTA Updates ermöglichen ota: uart: tx_pin: GPIO1 rx_pin: GPIO3 baud_rate: 9600 sensor: - platform: pmsx003 type: PMS7003 pm_1_0: name: "PM1.0 Feinstaub" pm_2_5: name: "PM2.5 Feinstaub" pm_10_0: name: "PM10.0 Feinstaub"
In diesem Code wird der Sensor PMS7003 über den UART-Port konfiguriert. Die Messwerte für PM1.0, PM2.5 und PM10 werden jeweils als separate Werte an Home Assistant gesendet.
5. Flashen der Firmware auf den ESP8266
- Verbinde den ESP8266 mit Deinem Computer und klicke in ESPHome auf Installieren.
- Wähle die USB-Methode und flashe die Firmware auf den ESP8266.
- Nach erfolgreichem Flashen startet der ESP8266 automatisch und verbindet sich mit Deinem WLAN.
6. Sensorwerte in Home Assistant anzeigen
Sobald der ESP8266 online ist, werden die Sensordaten automatisch in Home Assistant importiert. Gehe in Einstellungen > Geräte & Dienste und suche nach Deinem neuen Sensor „Feinstaubsensor“. Hier kannst Du die Daten visualisieren und weiterverarbeiten.
Outdoor-Gehäuse für den Feinstaubsensor bauen
Damit der Sensor auch draußen zuverlässig arbeitet, kannst Du ein einfaches Gehäuse aus PVC-Rohren bauen. So geht’s:
- Besorge Dir ein PVC-Rohr (ca. 10 cm Durchmesser), das als Grundkörper dient.
- Schneide ein paar kleine Löcher in das Rohr, damit Luft zirkulieren kann, und setze ein Mückennetz darüber, um Insekten fernzuhalten.
- Verschließe eine Seite des Rohrs mit einem Endstück und befestige den Sensor im Inneren. Die Kabel können durch eine dicht schließende Gummitülle nach außen geführt werden.
- Befestige das Gehäuse an einem geeigneten Platz, möglichst nicht in direktem Sonnenlicht, um falsche Messwerte zu vermeiden.
Zusammenfassung
Mit diesem DIY-Projekt kannst Du ganz einfach die Luftqualität rund um Dein Zuhause überwachen und Dir so einen Überblick über die Feinstaubbelastung verschaffen. Der PMS7003 ist dabei dank seiner Präzision und Langlebigkeit die perfekte Wahl, vor allem im Vergleich zu Alternativen wie dem SDS011. Mit der Integration in Home Assistant hast Du alle Werte stets im Blick und kannst bei Bedarf Automatisierungen erstellen, die Dich bei hohen Feinstaubwerten warnen.
Mit nur wenigen Materialien und etwas Geschick kannst Du zudem ein wetterfestes Gehäuse bauen und den Sensor auch im Außenbereich betreiben. Viel Erfolg beim Bauen und Programmieren!