KapfenbergDas spart mir …WasserLokal statt Cloud

Die Waschmaschine meldet sich — wenn man sie lässt

Programm, Temperatur und Schleuderdrehzahl aufs Telefon, lokal und ohne Herstellerkonto. Und warum dieselbe Marke in Meran gar nicht anbindbar war.

Der Nutzen ist denkbar klein und trotzdem spürbar: Ich gehe nicht mehr nachsehen, ob die Wäsche durch ist. Stattdessen kommt eine Mitteilung mit Programm, Temperatur und Schleuderdrehzahl.

Das Bemerkenswerte daran ist nicht die Meldung. Es ist, dass sie lokal entsteht — ohne Herstellerkonto, ohne Cloud, ohne App im Hintergrund. Und dass dieselbe Marke in meiner zweiten Wohnung überhaupt nicht anbindbar war.

Ein Punkt vorweg, weil er den ganzen Artikel einfärbt: Die Doku führt den ersten echten Waschgang mit eingeschaltetem WLAN noch als offenen Punkt. Die Textbausteine sind geprüft, eine Testnachricht ist zugestellt worden — der Ernstfall steht aus.

Gefunden wurde sie nicht, wo man sucht

Die Maschine antwortet nicht auf ping. Ein Netzscan findet sie nicht. Sie tauchte in der Clientliste eines WLAN-Satelliten auf, unter dem nichtssagenden Namen espressif — dem Chiphersteller. Offen war genau ein Port: 80.

Der Beweis kam über den Endpunkt selbst:

/http-read.json?encrypted=0   HTTP 200   {"response":"BAD REQUEST"}
/http-read.json?encrypted=1   HTTP 200   1264 Hex-Zeichen

Ein beliebiges Gerät liefert dort 404. Hier antwortet der Endpunkt — und die verschlüsselte Variante gibt die Statusdaten als Hex zurück.

Die Reihenfolge ist die Falle. Wer nur encrypted=0 probiert und „BAD REQUEST“ liest, hält das Gerät für stumm und hört auf. Die funktionierende Abfrage ist die zweite.

Neun Werte, kein Konto

Die verwendete Integration ist eine Zusatzintegration, kein eingebauter Bestandteil, und arbeitet rein lokal. Zur Einrichtung braucht sie nur die IP-Adresse der Maschine. Was ankommt:

Wert Beispiel
Zustand Idle
Programm 2
Temperatur 40 °C
Schleuderdrehzahl 1400 U/min
Restzeit 0 min
Füllstand 0 %
Startvorwahl 0 h
Fehlercode 0
Fernbedienbar ja

Damit lassen sich „läuft“, „fertig“ und „Fehler“ ableiten — ohne Zwischenstecker und ohne Cloud.

Zwei Fallen im Zustandsautomaten

Nachgelesen im Quelltext der Integration, nicht geraten.

Erste Falle: Zwei Codes heißen beide „Finished“. Der Automat kennt die Zustände 7 und 8, und beide kommen in Home Assistant als derselbe Text an. Wer nach einem Unterschied sucht, sucht vergebens — ein Auslöser auf Finished fängt von selbst beide.

Zweite Falle, die wichtigere: „Off“ ist erfunden. Die Integration setzt diesen Zustand, wenn das Gerät nicht erreichbar ist und zuletzt Finished oder Idle stand — damit die Sensoren etwas anzeigen statt „nicht verfügbar“.

Wer daraus eine Warnung „Waschmaschine offline“ baut, baut eine Warnung, die bei jeder schlafenden Maschine losgeht.

Am selben Abend bestätigt: Nach einem Neustart stand die Maschine auf Off, drei Zusatzfelder waren unknown beziehungsweise unavailable — und der Port war tatsächlich zu. Die Maschine schlief.

Praktische Folge: Eine Fehlerüberwachung auf den Fehlercode-Sensor hätte mit unknown zu kämpfen. Die Automatisierung löst deshalb auf den Maschinenzustand Error aus, nicht auf den Fehlercode. Das war beim Bauen eine Vermutung — jetzt ist es gemessen.

Die Eigenschaft, die alles bestimmt

Diese Maschine hängt nicht dauerhaft im WLAN. Sie muss aktiv darauf geschaltet werden und meldet sich nicht von selbst an. Ist sie aus, ist sie aus — es gibt keinen Bereitschaftsbetrieb, in dem noch etwas abzufragen wäre.

Off ist hier also der Normalzustand, nicht die Ausnahme:

Lage Was Home Assistant sieht
Maschine aus Off
an, WLAN nicht eingeschaltet Off
an, WLAN eingeschaltet echte Werte

Und damit die unbequeme Konsequenz: Die Fertigmeldung kommt nur, wenn das WLAN während des Waschgangs eingeschaltet war. Wer ohne WLAN wäscht, bekommt nichts. Daran lässt sich nichts bauen, das ist die Bauart des Geräts.

Warum der Auslöser Running → Finished lauten muss

Die erste Fassung ließ jeden Vorzustand zu. Das war zu lasch, und zwar genau wegen der Eigenschaft oben.

Wer das WLAN erst einschaltet, nachdem eine Wäsche durch ist, lässt die Entität von Off direkt auf Finished springen — und bekäme eine Fertigmeldung für etwas, das längst erledigt ist. Bei einem Gerät, das man von Hand ins Netz holt, ist das kein Sonderfall, sondern der Regelfall.

Running → Finished ist der einzige Übergang, der wirklich heißt: gerade eben fertig geworden. Bei 60 Sekunden Abfragetakt und einer Stunde Waschzeit wird Running garantiert gesehen.

Nebenbei erledigt dieselbe Bedingung einen zweiten Fall: Nach einem Neustart von Home Assistant gibt es keinen Vorzustand — auch das fällt durch.

Eine Lücke, die absichtlich offen bleibt

Reißt das WLAN genau am Programmende ab, sieht Home Assistant den Übergang nie, und die Meldung entfällt.

Der naheliegende Ausweg wäre, zusätzlich auf Running → Idle auszulösen. Das fängt den Fall — meldet aber auch einen abgebrochenen Waschgang als „fertig“. Abgebrochen und fertig sehen von außen gleich aus.

Eine falsche Fertigmeldung ist schlechter als eine fehlende. Auf die fehlende wartet niemand; die falsche schickt jemanden zur Maschine.

Deshalb bleibt es beim eindeutigen Auslöser. Das ist für mich die wichtigste Regel beim Bauen von Meldungen überhaupt, und sie gilt weit über Waschmaschinen hinaus.

Dieselbe Marke, zweite Wohnung, gar nichts

In Meran steht eine Maschine desselben Konzerns. Dort war die Anbindung von vornherein unmöglich — sie hat NFC statt WLAN. Man hält das Handy an die Blende. Es gibt kein Funkmodul im Netz, folglich auch nichts anzubinden.

Das wurde nicht vermutet, sondern ausgeschlossen: Das gesamte Subnetz wurde abgesucht, im Tiefschlaf und mit eingeschalteter Maschine. Gefunden wurden nur Fehlantworten des Routers und einer Türschloss-Bridge. Keine Schnittstelle.

Der Ersatz war schon da: ein Zwischenstecker mit Leistungsmessung. Aus dem Verbrauchsverlauf lässt sich „läuft“ und „fertig“ ableiten — gröber als der echte Programmstatus, aber es trägt.

Und dort verdient sich die Maschine ihren Platz noch auf eine zweite Art: Sie ist Stufe 1 beim Lastabwurf. Die Wohnung hat eine begrenzte Anschlussleistung; wenn es eng wird, fliegt zuerst die Waschmaschine. Der Grund ist gut: Sie nimmt ihr Programm nach einer Unterbrechung selbst wieder auf. Eine abgeschaltete Klimaanlage ist bei 29 Grad sofort spürbar — eine kurz unterbrochene Wäsche nicht.

Und was heißt das?

Was tatsächlich entfällt: der Gang ins Bad, um nachzusehen. Mehr nicht. Es ist eine der kleinsten Automationen im ganzen Haus und eine der am häufigsten nützlichen.

Was ich beim Kauf anders machen würde: Vor dem Kauf prüfen, ob das Gerät eine lokale Schnittstelle hat, nicht nur „App-Steuerung“. NFC an der Blende ist Marketing-seitig eine Funktion und für Hausautomation wertlos. Und ein Gerät, das sich selbst ins WLAN einbucht, ist deutlich mehr wert als eines, das man jedes Mal dazu überreden muss.

Der günstige Ausweg bleibt der Zwischenstecker. Er kostet unter 20 Euro, funktioniert an jeder Maschine jeden Alters und braucht keine Schnittstelle. Er sagt dir nicht, bei welcher Temperatur gewaschen wurde — aber er sagt dir, dass es vorbei ist. Und das ist der Teil, auf den man wartet.