Erfahre, wie du eine einfache Raumluftanzeige baust, die mit dem Raspberry Pi Pico die Temperatur und Luftfeuchtigkeit überwacht. Sobald die Temperatur einen kritischen Wert überschreitet, leuchtet eine rote LED als Warnsignal auf. Mit einem 3D-Drucker lässt sich ein passendes Gehäuse herstellen.

Was brauchst du?
- Raspberry Pi Pico + USB-Kabel
- DHT22 Temperatur- und Feuchtigkeitssensor
- 16×2 LCD Display mit I2C Schnittstelle
- rote LED
- 220-Ohm-Widerstand
- Jumperkabel
- 3D-Drucker (für das Gehäuse)
Schritt 1: DHT22 mit dem Pi Pico verbinden
Der DHT22 ist ein Sensor zur Messung von Temperatur und Luftfeuchtigkeit, der sich prima mit dem Raspberry Pi Pico verwenden lässt. Der Sensor hat vier Pins, von denen wir nur drei verwenden. Jeder Pin hat eine spezifische Funktion.

- VCC (Pin 1): Der VCC-Pin ist der Stromversorgungspin. Er versorgt den Sensor mit Energie. Der DHT22 benötigt eine Spannung von 3,3V bis 5V. Wir verbinden diesen Pin daher mit dem 3.3V-Ausgang (Pin 36) des Raspberry Pi Pico.
- Data (Pin 2): Dieser Pin ist der Datenpin. Er sendet die gemessenen Werte für Temperatur und Luftfeuchtigkeit an den Mikrocontroller. Der Datenpin des DHT22 wird mit dem GPIO15 (Pin 20) am Raspberry Pi Pico verbunden. Dieser Pin kommuniziert später die Messwerte direkt an den Mikrocontroller.
- GND (Pin 4): GND steht für Ground (Erdung) und ist der Pin, der mit dem Masseanschluss des Systems verbunden wird. Der GND-Pin des DHT22 wird mit einem GND-Pin (z. B. Pin 18) am Raspberry Pi Pico verbunden. Die Erdung ist notwendig, damit ein stabiler Stromkreis besteht.
- Pin 3 (nicht genutzt): Der dritte Pin des DHT22 wird im Normalfall nicht benötigt und bleibt deshalb frei. Er erfüllt keine Funktion im Betrieb.
Hinweis: Ein Pull-up-Widerstand (ca. 10 kOhm) zwischen VCC und Data kann bei längeren Leitungen die Stabilität des Signals verbessern, ist aber in den meisten Fällen nicht zwingend notwendig.
Schritt 2: LCD-Display anschließen
Für die Anzeige der Messwerte verwenden wir ein 16×2 LCD-Display mit I2C-Schnittstelle. Durch die I2C-Schnittstelle wird die Verkabelung mit dem Pi Pico einfacher, da nur vier Pins benötigt werden.

- SDA (Serial Data): Der SDA-Pin überträgt die Daten und wird mit dem GPIO20 (Pin 26) am Raspberry Pi Pico verbunden.
- SCL (Serial Clock): Der SCL-Pin überträgt das Taktsignal, das die Datenübertragung synchronisiert. Verbinde SCL mit GPIO21 (Pin 27) am Raspberry Pi Pico.
- VCC und GND: Diese Pins versorgen das LCD-Display mit Strom. Verbinde VCC mit dem 3.3V-Ausgang (Pin 36) am Pico und GND mit einem GND-Pin (z. B. Pin 38) des Pico.
Hinweis: Auf unserem Blog findest du auch eine ausführliche Anleitung zu der Nutzung des LCD-Displays mit dem Raspberry Pi Pico!
Schritt 3: Rote Warn-LED zur Raumluft-Überwachung
Falls die Temperatur einen kritischen Wert überschreitet, soll die rote LED leuchten. Verbinde die LED mit einem 220-Ohm-Vorwiderstand an den Raspberry Pi Pico.

- Anode (+) der LED wird mit GPIO4 (Pin 6) am Raspberry Pi Pico verbunden.
- Kathode (-) der LED wird mit einem GND-Pin des Raspberry Pi Pico verbunden.
Hinweis: Der Widerstand ist notwendig, um die LED zu schützen und eine Überlastung zu vermeiden.
Schritt 4: Messwerte anzeigen lassen
Jetzt kommen wir zum Programmieren! Der folgende Code steuert das LCD-Display und den DHT22-Sensor, damit Temperatur und Luftfeuchtigkeit gemessen und auf dem Display angezeigt werden. Er sorgt außerdem dafür, dass die LED aufleuchtet, wenn die Temperatur zu hoch wird.
# Bibliotheken laden
from utime import sleep
from machine import I2C, Pin
from machine_i2c_lcd import I2cLcd
from dht import DHT22
# Initialisierung DHT22-Sensor
dht22_sensor = DHT22(Pin(15, Pin.IN, Pin.PULL_UP))
# Initialisierung LCD-Display
i2c = I2C(0, sda=Pin(20), scl=Pin(21), freq=100000)
lcd = I2cLcd(i2c, 0x27, 2, 16)
# Initialisierung Rote LED
led = Pin(4, Pin.OUT)
while True:
# Messung mit dem DHT22 durchführen
dht22_sensor.measure()
temp = dht22_sensor.temperature()
humi = dht22_sensor.humidity()
# Display-Zeilen ausgeben
zeile_oben = "Temp: "+str(temp)+" C"
zeile_unten = "Humidity: "+str(humi)+"%"
lcd.clear()
lcd.putstr(zeile_oben + "\n" + zeile_unten)
# Warn-LED leuchtet, falls Temperatur > 25°C
if temp >= 25:
led.value(1)
else:
led.value(0)
# Warte 5 Sekunden, bis Sequenz erneut ausgeführt wird
sleep(5)
Der Code läuft in einer Schleife und misst alle 5 Sekunden die Temperatur und Luftfeuchtigkeit. Liegt die Temperatur über 25°C, wird die Warn-LED aktiviert.
Hinweis: Um das LCD-Display zu nutzen, benötigst du die beiden Bibliotheken machine_i2c_lcd.py und lcd_api.py. Diese musst du selbst auf dem Pi Pico speichern. Du findest die Dateien in unserem Artikel zum LCD-Display.
Schritt 4: Passendes Gehäuse 3D-drucken
Zu guter Letzt verleihen wir dem Projekt mit einem 3D-gedruckten Gehäuse ein professionelles Aussehen. Für das Gehäuse könnt ihr eine eigene 3D-Vorlage entwerfen oder auf Plattformen wie Thingiverse nach Vorlagen suchen. Achtet darauf, dass das Gehäuse Öffnungen für den DHT22-Sensor hat, damit die Luft ungehindert eindringen und die Messung nicht verfälscht wird.


Fazit
Mit dem Raspberry Pi Pico lässt sich in wenigen Schritten eine funktionsfähige Raumluft-Anzeige bauen – mit einem 3D-Drucker das passende Gehäuse drucken!
Auf unserem Blog findest du hier weitere spannende Raspberry Pi Pico Projekte!







