ESP32 Präsenzmelder mit LD2410 und ESPHome bauen
Ein normaler PIR-Bewegungsmelder erkennt Bewegungen ziemlich zuverlässig. Sitzt man allerdings ruhig am Schreibtisch oder auf dem Sofa, wird es schwieriger. Genau hier sind Radar-Präsenzmelder interessant. Mit einem günstigen LD2410 und einem ESP32 lässt sich für relativ wenig Geld ein eigener Präsenzsensor bauen, der sich direkt über ESPHome in Home Assistant integrieren lässt.
Der LD2410 arbeitet mit 24-GHz-mmWave-Radar und kann neben deutlichen Bewegungen auch wesentlich kleinere Bewegungen erkennen. Damit eignet sich der Sensor beispielsweise für Büro, Wohnzimmer, Küche oder Bad.
In dieser Anleitung bauen wir einen einfachen ESP32-Präsenzmelder und binden ihn anschließend über ESPHome in Home Assistant ein.
Hinweis: Dieser Artikel enthält Affiliate-Links. Bei einem Kauf über einen gekennzeichneten Link erhalte ich eine kleine Provision. Für dich bleibt der Preis unverändert.
Was brauchen wir für den ESP32-Präsenzmelder?
Das Projekt kommt mit erstaunlich wenig Hardware aus. Im Grunde benötigen wir nur einen ESP32, das LD2410-Modul, einige Kabel und eine USB-Stromversorgung.
- ESP32 Development Board
- HLK-LD2410 beziehungsweise LD2410B oder LD2410C
- Dupont-Kabel
- USB-Netzteil und passendes USB-Kabel
- optional kleines Kunststoffgehäuse
ESP32 Development Boards:
ESP32 Boards bei Amazon ansehen*
LD2410 mmWave-Sensor:
LD2410 Präsenzsensor bei Amazon ansehen*
Dupont-Kabel:
Dupont-Kabel bei Amazon ansehen*
Was ist der LD2410?
Der LD2410 ist ein kompakter Radar-Präsenzsensor von Hi-Link. Er arbeitet im 24-GHz-Bereich und unterscheidet sich damit deutlich von den klassischen PIR-Bewegungsmeldern, die man aus vielen Smart-Home-Systemen kennt.
Ein PIR-Sensor reagiert vor allem auf Veränderungen der Wärmestrahlung. Bewegt sich eine Person deutlich durch den Raum, funktioniert das sehr gut. Wer längere Zeit ruhig am Schreibtisch sitzt, kann vom Sensor dagegen irgendwann als abwesend betrachtet werden.
Der LD2410 erkennt sowohl bewegte als auch relativ ruhige Ziele. Genau das macht ihn als Präsenzmelder interessant.
Was kostet der Selbstbau?
Wer ESP32-Boards und Kabel ohnehin in der Bastelkiste liegen hat, benötigt praktisch nur noch den LD2410. Selbst wenn alle Teile neu gekauft werden, bleibt das Projekt vergleichsweise günstig.
| Bauteil | ungefährer Preis |
|---|---|
| ESP32 | ca. 5–10 Euro |
| LD2410 | ca. 5–10 Euro |
| Kabel | ca. 1–3 Euro |
| Gehäuse optional | ca. 3–8 Euro |
Damit landet man häufig irgendwo im Bereich von 10 bis 25 Euro. Der genaue Preis hängt natürlich stark davon ab, welche Komponenten bereits vorhanden sind.
LD2410 mit dem ESP32 verbinden
Die Kommunikation zwischen ESP32 und LD2410 erfolgt über UART. Dadurch benötigen wir neben der Spannungsversorgung lediglich RX und TX.
Für dieses Beispiel verwenden wir GPIO16 und GPIO17 des ESP32.
| LD2410 | ESP32 |
|---|---|
| VCC | 5V / VIN |
| GND | GND |
| TX | GPIO16 (RX) |
| RX | GPIO17 (TX) |
Wichtig ist die gekreuzte Verbindung der seriellen Datenleitungen. TX des LD2410 kommt an RX des ESP32 und RX des LD2410 an TX des ESP32.
[Bild-Platzhalter: Schaltplan ESP32 mit LD2410, VCC, GND, RX und TX]
Prüfe vor dem Anschluss trotzdem die Beschriftung und Dokumentation deiner konkreten LD2410-Platine. Gerade bei Modulen verschiedener Anbieter kann sich die Anordnung der Anschlüsse unterscheiden.
ESPHome auf dem ESP32 installieren
Für die Software verwenden wir ESPHome. Das hat einen großen Vorteil: Wir müssen keine eigene Firmware programmieren. Der ESP32 lässt sich anschließend direkt in Home Assistant integrieren.
Falls du gerade erst mit ESP32 und ESPHome anfängst, lohnt sich auch ein Blick in meine weiteren ESP-Projekte auf smarthome-tricks.de. Ein ähnlich einfacher Einstieg ist beispielsweise ein selbst gebauter ESPHome Temperatursensor.
ESPHome-Konfiguration für den LD2410
ESPHome unterstützt den LD2410 direkt. Wir müssen deshalb hauptsächlich die UART-Schnittstelle konfigurieren und anschließend die LD2410-Komponente aktivieren.
uart:
id: ld2410_uart
tx_pin: GPIO17
rx_pin: GPIO16
baud_rate: 256000
parity: NONE
stop_bits: 1
ld2410:
uart_id: ld2410_uart
Damit ist die grundlegende Kommunikation zwischen ESPHome und dem Radar-Sensor hergestellt.
Präsenz als Binary Sensor ausgeben
Für Home Assistant ist vor allem die Information interessant, ob der LD2410 gerade eine Person erkennt. Dafür können wir entsprechende Binary Sensoren bereitstellen.
binary_sensor:
- platform: ld2410
has_target:
name: "Präsenz"
has_moving_target:
name: "Bewegtes Ziel"
has_still_target:
name: "Ruhiges Ziel"
Nach dem Übertragen der ESPHome-Konfiguration erscheinen damit mehrere Entitäten in Home Assistant. Besonders interessant ist Präsenz. Diese Entität kannst du später direkt für Automationen verwenden.
Entfernung mit dem LD2410 messen
Der LD2410 liefert noch deutlich mehr Informationen. ESPHome kann beispielsweise die Entfernung eines erkannten bewegten oder ruhigen Ziels anzeigen.
sensor:
- platform: ld2410
moving_distance:
name: "Entfernung Bewegung"
still_distance:
name: "Entfernung ruhiges Ziel"
detection_distance:
name: "Erkennungsentfernung"
Diese Werte sind vor allem während der Einrichtung hilfreich. Du kannst damit recht gut nachvollziehen, in welchem Bereich der Sensor eine Person erkennt.
[Bild-Platzhalter: Home Assistant mit Präsenz, ruhigem Ziel und Entfernungswerten des LD2410]
LD2410 richtig positionieren
Bevor du den Sensor fest in ein Gehäuse einbaust, würde ich einige Positionen ausprobieren. Radar verhält sich anders als ein PIR-Sensor.
Der Sensor kann je nach Material auch durch dünne Kunststoffabdeckungen oder andere nichtmetallische Materialien hindurch erkennen. Dadurch lässt sich der LD2410 relativ unauffällig in einem kleinen Kunststoffgehäuse unterbringen.
Metall sollte sich dagegen nicht direkt vor der Antenne befinden.
Kleine Elektronikgehäuse bei Amazon ansehen*
Empfindlichkeit einstellen
Der LD2410 unterteilt seinen Erfassungsbereich in verschiedene Entfernungsbereiche, die häufig als Gates bezeichnet werden. Für diese Bereiche lässt sich die Empfindlichkeit getrennt einstellen.
Das ist wichtiger, als es zunächst klingt. Ein zu empfindlich eingestellter Radar-Sensor kann beispielsweise Bewegungen außerhalb des gewünschten Bereichs erkennen. Je nach Einbauort können auch Ventilatoren, Vorhänge oder andere bewegliche Objekte zu unerwünschten Erkennungen führen.
Ich würde deshalb zunächst mit den Standardwerten beginnen und anschließend beobachten, wie sich der Sensor im Alltag verhält. Erst danach würde ich Reichweite und Empfindlichkeit verändern.
Präsenzmelder für die Lichtsteuerung verwenden
Jetzt kommt der interessante Teil. Sobald der ESP32 in Home Assistant eingebunden ist, lässt sich der Präsenzsensor wie jeder andere Binary Sensor verwenden.
Eine einfache Automation könnte das Licht einschalten, sobald Präsenz erkannt wird. Bleibt der Raum anschließend beispielsweise zwei Minuten leer, wird das Licht wieder ausgeschaltet.
Gegenüber einem normalen Bewegungsmelder hat das einen großen Vorteil: Wer ruhig auf dem Sofa sitzt oder am Schreibtisch arbeitet, muss nicht regelmäßig mit den Armen wedeln, damit das Licht eingeschaltet bleibt.
PIR und LD2410 kombinieren
Eine besonders interessante Variante ist die Kombination aus PIR und mmWave. Der PIR-Sensor reagiert sehr schnell auf eine Person, die den Raum betritt. Der LD2410 übernimmt anschließend die eigentliche Präsenzüberwachung.
Beide Sensoren lassen sich problemlos an einem ESP32 betreiben. Für ein späteres Projekt könnte man daraus einen kompletten Raumsensor mit PIR, LD2410, Temperatur, Luftfeuchtigkeit und eventuell einem Helligkeitssensor bauen.
Wo eignet sich der LD2410 besonders?
Ich würde einen solchen Präsenzmelder vor allem dort einsetzen, wo Menschen längere Zeit relativ ruhig bleiben.
- Arbeitszimmer: Licht bleibt beim Arbeiten am PC eingeschaltet.
- Wohnzimmer: Anwesenheit wird auch beim Fernsehen erkannt.
- Küche: Beleuchtung bleibt beim Kochen aktiv.
- Bad: Licht und Lüfter lassen sich abhängig von tatsächlicher Präsenz steuern.
- Hobbyraum: Beleuchtung bleibt auch bei ruhigen Arbeiten eingeschaltet.
LD2410 oder fertiger Zigbee-Präsenzmelder?
Wer einfach nur einen funktionierenden Präsenzsensor möchte, findet inzwischen auch zahlreiche fertige Zigbee- und Matter-Modelle. Der Selbstbau mit ESP32 und LD2410 hat dafür andere Vorteile.
Du kannst Empfindlichkeit und Sensorwerte sehr detailliert auswerten und den ESP32 später um zusätzliche Sensoren erweitern. Außerdem bleibt die Verarbeitung lokal und die Integration über ESPHome passt sehr gut zu Home Assistant.
Wer lieber ein fertiges Gerät einsetzen möchte, findet hier eine Auswahl:
Zigbee-mmWave-Präsenzmelder bei Amazon ansehen*
Stromverbrauch des ESP32-Präsenzmelders
Für dieses Projekt würde ich von Anfang an einen festen USB-Stromanschluss einplanen. Ein mmWave-Sensor arbeitet dauerhaft und der ESP32 hält zusätzlich seine WLAN-Verbindung. Ein Batteriebetrieb ist deshalb für diesen Aufbau wenig sinnvoll.
Ein kleines USB-Netzteil reicht vollkommen aus. Wer den Sensor dauerhaft montiert, kann Netzteil und Kabel beispielsweise hinter einem Möbelstück verstecken.
Mögliche Erweiterungen
Der eigentliche Vorteil des Selbstbaus zeigt sich spätestens bei der nächsten Ausbaustufe. Auf dem ESP32 stehen noch genügend Möglichkeiten für weitere Sensoren zur Verfügung.
- BME280 für Temperatur und Luftfeuchtigkeit
- BH1750 für die Helligkeitsmessung
- PIR-Sensor für schnelle Bewegungserkennung
- RGB-LED als Statusanzeige
- Taster für lokale Aktionen
Aus dem einfachen Präsenzmelder wird damit schnell ein kompletter Raumsensor für Home Assistant.
Fazit: Günstiger Präsenzmelder für Home Assistant
Der ESP32 und der LD2410 sind eine interessante Kombination für ein kleines Smart-Home-Wochenendprojekt. Die Hardware kostet nicht viel, ESPHome unterstützt den Radarsensor direkt und Home Assistant bekommt anschließend deutlich mehr Informationen als von einem einfachen PIR-Bewegungsmelder.
Besonders gut gefällt mir, dass das Projekt später problemlos erweitert werden kann. Wer ohnehin mit ESP32 und ESPHome arbeitet, kann aus dem Präsenzmelder einen kompletten Raumsensor mit Temperatur, Luftfeuchtigkeit, Helligkeit und weiteren Funktionen bauen.
* Affiliate-Link: Bei einem Kauf über einen gekennzeichneten Link erhalte ich eine Provision. Für dich bleibt der Preis unverändert.

