Von Zigbee zu ESPHome: SmartHome Bett-Sensor mit dauerhafter Stromversorgung

Seit längerem habe ich einen Bettsensor, welches meinem SmartHome bescheid gibt, wann alle Bewohner im Bett liegen. Dies hatte ich mit einem Zigbee-Sensor gelöst. Da es hier eine dauerhafte Stromversorgung gab, musste ich eine andere Lösung suchen. In einem meiner früheren Artikel „Einfache Modifikation zum Zigbee-Drucksensor“ habe ich gezeigt, wie man einen Zigbee-Sensor modifizieren kann, um Druckveränderungen, wie z.B. das Liegen im Bett, zu erkennen und Aktionen im Smart Home auszulösen.

Obwohl Zigbee eine fantastische Lösung ist, bin ich in der Praxis auf ein Problem gestoßen: Die Batterien des Zigbee-Bett-Sensors gehen schnell leer, besonders bei häufigem Einsatz als Schlafsensor. Daher habe ich mich entschlossen, auf eine Lösung mit permanenter Stromversorgung zu setzen. In diesem Tutorial zeige ich dir, wie du mithilfe von ESPHome und einem ESP8266 einen Bett-Schlafsensor realisieren kannst, der zuverlässig läuft und nicht von Batterien abhängig ist.

Warum ein Wechsel von Zigbee zu ESPHome?

Zigbee ist praktisch, weil es ein robustes Funkprotokoll ist und wenig Strom verbraucht. Jedoch ist gerade bei Sensoren, die über längere Zeiträume Daten liefern sollen, die Batterie ein Schwachpunkt. Vor allem, wenn der Sensor regelmäßig einen Status übertragen muss, um den Zustand zu überwachen, entlädt sich die Batterie schnell.

ESPHome bietet hier eine ideale Lösung. Es läuft auf kleinen, kostengünstigen Mikrocontrollern wie dem ESP8266 und unterstützt MQTT oder direkte Integrationen in ioBroker oder Home Assistant. Durch den Betrieb über eine konstante Stromquelle entfällt das Problem des Batterieverschleißes, und der Sensor ist immer online.


Was brauchst du für die neue Lösung?

Für den Wechsel von Zigbee auf eine ESPHome-Lösung benötigst du folgende Komponenten:

  • ESP8266 (z.B. Wemos D1 Mini): Dies ist ein kleines, WLAN-fähiges Mikrocontroller-Board, das perfekt für ESPHome-Anwendungen geeignet ist.
  • Alarmmatte oder druckempfindlicher Sensor: Eine Matte oder ein Sensor, der erkennt, ob jemand auf dem Bett liegt.
  • USB-Netzteil: Um den ESP8266 dauerhaft mit Strom zu versorgen.
  • ESPHome: Zum Flashen und Konfigurieren des ESP8266.

Schritt 1: Alarmmatte statt Zigbee-Drucksensor

In meinem früheren Artikel habe ich einen Zigbee-Drucksensor verwendet, um zu erkennen, ob jemand auf dem Bett liegt. Diese Funktion übernimmt nun eine Alarmmatte oder ein druckempfindlicher Sensor, den du einfach unter die Matratze oder den Topper legst. Die Alarmmatte wird über den GPIO-Pin des ESP8266 angeschlossen und registriert Druckveränderungen, sobald sich jemand ins Bett legt.


22. Juni 2025 13:38


Schritt 2: ESP8266 mit ESPHome flashen

Damit der ESP8266 die Daten der Alarmmatte auswerten und an dein Smart Home senden kann, musst du ihn mit ESPHome flashen und konfigurieren. Hier eine grobe Anleitung:

  1. ESPHome installieren: Wenn du ESPHome noch nicht installiert hast, kannst du dies einfach über Home Assistant oder ioBroker tun.Falls du Home Assistant nutzt, findest du ESPHome als Add-on im offiziellen Add-on-Store. Bei ioBroker installierst du das ESPHome-Plugin direkt über die Adapterverwaltung.
  2. ESP8266 flashen: Verbinde deinen ESP8266 (z.B. Wemos D1 Mini) über USB mit deinem Computer und flashe ESPHome mit den richtigen WLAN-Einstellungen.
  3. MQTT einrichten: Richte MQTT ein, damit der ESP8266 über das WLAN mit deinem Smart Home kommunizieren kann.


22. Juni 2025 13:38


Schritt 3: Die Alarmmatte an den ESP8266 anschließen

Nun verbindest du die Alarmmatte mit dem ESP8266:

  • GPIO-Pin D5 wird mit einem der beiden Drähte der Alarmmatte für Bewohner 1 verbunden.
  • GPIO-Pin D6 wird mit einem der beiden Drähte der Alarmmatte für Bewohner 2 verbunden.
  • Der zweite Draht der Matte (für beide Bewohner) kommt an Ground (GND) des ESP8266.

Hierdurch kann der ESP8266 den Zustand der Matte überwachen und feststellen, ob jemand im Bett liegt.


Schritt 4: ESPHome Konfiguration für den Schlafsensor

Der ESP8266 wird nun so konfiguriert, dass er den Status der Alarmmatte überwacht und per MQTT an ioBroker oder Home Assistant sendet. Hier ist die angepasste Konfiguration, die sowohl Bewohner1 als auch Bewohner2 berücksichtigt:

esphome:
  name: bett_status
  platform: ESP8266
  board: d1_mini

wifi:
  ssid: "Dein_WLAN_SSID"
  password: "Dein_WLAN_PASSWORT"  # Platzhalter für dein WLAN-Passwort

  # Optional: statische IP konfigurieren
  # manual_ip:
  #   static_ip: 192.168.1.XX
  #   gateway: 192.168.1.1
  #   subnet: 255.255.255.0

  # Fallback hotspot (wird aktiviert, wenn keine WLAN-Verbindung möglich ist)
  ap:
    ssid: "Bett Status Fallback Hotspot"
    password: "Dein_Fallback_Hotspot_Passwort"  # Platzhalter für dein Fallback-Hotspot-Passwort

mqtt:
  broker: "192.168.XXX.XXX"  # IP oder Hostname deines MQTT-Brokers
  # username: ""     # Optional: MQTT-Benutzername
  # password: ""     # Optional: MQTT-Passwort

# Logging aktivieren
logger:

# Aktivierung des OTA (Over the Air Updates)
ota:

# GPIO Pins für die Taster (D1 Mini: D5 und D6)
binary_sensor:
  - platform: gpio
    id: button_bewohner1
    pin:
      number: D5
      mode: INPUT_PULLUP
      inverted: true
    name: "Bett Bewohner1"
    filters:
      - delayed_on: 1s  # 1 Sekunde Timeout nach Tasterdruck
      - delayed_off: 1s
    on_press:
      - mqtt.publish:
          topic: "bett/bewohner1"
          payload: "true"
    on_release:
      - mqtt.publish:
          topic: "bett/bewohner1"
          payload: "false"

  - platform: gpio
    id: button_bewohner2
    pin:
      number: D6
      mode: INPUT_PULLUP
      inverted: true
    name: "Bett Bewohner2"
    filters:
      - delayed_on: 1s  # 1 Sekunde Timeout nach Tasterdruck
      - delayed_off: 1s
    on_press:
      - mqtt.publish:
          topic: "bett/bewohner2"
          payload: "true"
    on_release:
      - mqtt.publish:
          topic: "bett/bewohner2"
          payload: "false"

Schritt 5: Automatisierungen in ioBroker oder Home Assistant einrichten

Nun, da der Sensor betriebsbereit ist, kannst du in deinem Smart Home verschiedene Automatisierungen festlegen, die auf dem Status der Sensoren basieren. So kannst du etwa Lichter ausschalten, die Nachtbeleuchtung einschalten oder die Temperatur der Heizung auf Nachtbetrieb umstellen, sobald jemand im Bett liegt.


Fazit: Zuverlässiger Schlafsensor mit konstanter Stromversorgung

Die Umstellung von Zigbee auf ESPHome bietet eine stabile und langfristig wartungsfreie Lösung für die Schlafüberwachung. Anstatt ständig Batterien zu wechseln, hast du mit dem ESP8266 und der Alarmmatte eine zuverlässige Methode, um dein Smart Home genau dann in den „Schlafmodus“ zu versetzen, wenn es nötig ist.

Dank der Integration in ioBroker oder Home Assistant kannst du zahlreiche Automatisierungen umsetzen, von der Lichtsteuerung bis hin zur Temperaturregelung. Die Umstellung mag anfangs etwas aufwändiger erscheinen, lohnt sich jedoch durch den hohen Komfortgewinn und die Vermeidung häufiger Batteriewechsel.

Wenn du mehr über die ursprüngliche Zigbee-Lösung erfahren möchtest, schau dir gerne meinen Artikel „EinfacheModifikation zum Zigbee-Drucksensor“ an.


Mit dieser Anleitung kannst du deinen eigenen Schlafsensor mit konstanter Stromversorgung umsetzen und dein Smart Home auf einfache Weise erweitern. Viel Erfolg beim Nachbauen!


22. Juni 2025 13:38

Hat dir der Beitrag gefallen?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert