Du hast deinen eigenen Sensor mit ESPHome gebaut, geflasht und voller Stolz in Home Assistant integriert. Doch nach ein paar Stunden oder Tagen kommt die Ernüchterung: Der Sensor ist "Unavailable". Im Logbuch steht ständig:
WARNING Disconnected from API: Timeout while waiting for message response
Oder schlimmer: Das Gerät startet alle paar Sekunden neu (Boot Loop).
Bevor du deinen Lötkolben aus dem Fenster wirfst: In 90% der Fälle liegt es nicht an deinem Code, sondern an der Physik (Strom) oder dem Netzwerk. Hier ist die Checkliste, mit der ich meine ESP-Flotte stabil halte.
Fehlerursache 1: Der "Brownout" (Strommangel)
Dies ist der Killer Nr. 1 für ESP32 und ESP8266. Wenn der Chip das WLAN aktiviert, entsteht eine kurze Stromspitze (Spike). Hängt dein Board an einem billigen, dünnen USB-Kabel oder einem alten Handynetzteil? Dann bricht die Spannung kurz von 5V auf 4.5V ein. Das Ergebnis: Der Chip stürzt ab, startet neu, aktiviert WLAN, stürzt wieder ab. Ein klassischer Boot-Loop.
Die Lösung:
- Das Kabel: Nutze hochwertige USB-Kabel mit dickem Aderquerschnitt. Die dünnen Kabel, die bei Gadgets dabei liegen, sind oft Müll.
- Das Netzteil: Ein ESP32 braucht stabile Spannung. Nutze ein Marken-Netzteil mit mindestens 2A.
- Kondensator-Trick: Wenn du direkt 5V einspeist, löte einen 1000µF Kondensator zwischen 5V und GND. Das puffert die Lastspitzen ab.
Fehlerursache 2: mDNS und das Netzwerk-Chaos
ESPHome nutzt standardmäßig mDNS (mein-sensor.local), damit Home Assistant das Gerät findet. In vielen Netzwerken (besonders mit FritzBox oder Repeatern) funktioniert diese Namensauflösung aber oft schlecht. Home Assistant "verliert" das Gerät, obwohl es eigentlich online ist.
Die Lösung: Statische IP Zwinge den ESP auf eine feste Adresse. Das macht die Verbindung "bulletproof".
Öffne dein ESPHome YAML-File und ändere den wifi Block:
YAML
wifi:
ssid: "DeinWLAN"
password: "DeinPasswort"
# Erzwinge eine feste IP (außerhalb des DHCP-Bereichs deines Routers!)
manual_ip:
static_ip: 192.168.178.60
gateway: 192.168.178.1
subnet: 255.255.255.0
api:
encryption:
key: "HIER_STEHT_DEIN_LANGER_KEY"
reboot_timeout: 0s # Wichtig! Verhindert Neustarts, nur weil API kurz weg ist
Pro-Tipp: Setze reboot_timeout: 0s unter api. Standardmäßig startet sich ein ESPHome Gerät nach 15 Minuten neu, wenn es Home Assistant nicht erreicht. Das ist oft unnötig und sorgt für Datenlücken.
Fehlerursache 3: Schlechte Hardware (Der "Montags-Chip")
Manchmal liegt es am Board selbst. Es gibt viele billige Klone auf dem Markt, deren Spannungsregler (LDO) minderwertig sind und schnell überhitzen.
Ich setze mittlerweile fast ausschließlich auf ESP32 Dev Kits von Az-Delivery oder die originalen NodeMCU V3. Sie kosten 1-2 Euro mehr, laufen aber jahrelang stabil durch.
- Meine Empfehlung (3er Pack): AZDelivery ESP32 NodeMCU Module
Notfall-Plan: Das Gerät ist "Gebricked"?
Du hast einen Fehler in die YAML geflasht und das Gerät bootet nicht mehr, sodass du kein Update mehr über WLAN (OTA) machen kannst?
Du musst es nicht ausbauen! Fast alle modernen ESPHome-Configs haben einen "Safe Mode". Der Trick: Schalte den Strom 10-mal hintereinander schnell an und aus. Der ESP startet dann in einen abgesicherten Modus (Safe Mode), deaktiviert deine fehlerhaften Automationen und startet nur das WLAN. Jetzt kannst du über Home Assistant eine korrigierte Firmware aufspielen.
Fazit
Wenn dein ESP zickt:
Tausche zuerst das USB-Kabel und Netzteil. (Meistens war es das schon).
Vergib eine Statische IP in der Config.
Setze reboot_timeout: 0s.
Damit wird aus dem Bastel-Projekt eine solide Smart-Home-Lösung.
Top comments (0)