KapfenbergWas ist schiefgelaufen?Einstieg und BetriebLokal statt Cloud

Der Name steht an drei Stellen, und nur eine siehst du

Lokal heißt kein Gerät wie im Konto, Umlaute speichert die Firmware gar nicht — und das Display verschwieg den Hausstrom wegen einer Einstellung in der Cloud.

Das Wandbedienfeld zeigt 33,3 Grad, 41 Prozent Luftfeuchte und 173 Watt, darunter Knöpfe für Heizung und Klima.
Das Wandbedienfeld zeigt 33,3 Grad, 41 Prozent Luftfeuchte und 173 Watt, darunter Knöpfe für Heizung und Klima.

Ein Gerät im Haus hat nicht einen Namen. Es hat bis zu drei: einen auf dem Gerät, einen in Home Assistant und einen im Konto des Herstellers — bei mir Shelly.

Solange alle drei gleich lauten, merkt das niemand. Sie bleiben aber nicht gleich — und die Stelle, an der man gerade nachsieht, ist fast nie die, an der die Antwort steht.

Erstens: lokal hat kein Gerät einen Namen

Sechzehn Shelly-Geräte hängen hier im Haus, alle sauber benannt. In der App jedenfalls.

Lokal abgefragt hatte kein einziges einen Namen. Alle liefen unter ihrer Werkskennung. Die Namen existieren ausschließlich im Shelly-Konto.

Für die lokale Einbindung heißt das: Die Geräte kommen namenlos herein, als Buchstaben-Zahlen-Kombinationen.

Es gibt zwei Wege, und einer ist besser:

Weg Folge
vorher lokal benennen der Name steht dort, wo das Gerät ist
hinterher in Home Assistant benennen der Name steht nur dort, wo man ihn gerade sieht

Der erste Weg ist der sauberere, und zwar aus einem einzigen Grund: Wer in zwei Jahren vor dem Gerät steht und seine Weboberfläche aufmacht, liest dort den richtigen Namen — nicht eine Werkskennung.

Zweitens: Umlaute speichert die Firmware nicht

Das ist nachgemessen und nicht vermutet. Ein Name mit ö wurde an ein Gerät geschickt — nachweislich als ö — und kam zurück als:

Heizk?rper

Das Fragezeichen ist das Unicode-Ersatzzeichen. Die Firmware speichert im Gerätenamen kein Nicht-ASCII. Sie meldet das nicht als Fehler, sie nimmt den Namen an und verstümmelt ihn still.

Auf den Geräten stehen deshalb Heizkoerper Schlafzimmer und Licht Huetterl. Wer die Umlaute sehen will, benennt in Home Assistant um — dort gehen sie.

Das ist der Punkt, an dem die drei Namen zwangsläufig auseinandergehen, und zwar mit Absicht statt aus Nachlässigkeit. Das ist der ganze Unterschied.

Drittens: der Bereich schreibt mit

Home Assistant setzt beim Anlegen einer Entität gern den Bereich als Präfix davor. Aus einem Türkontakt wurde so ein Name mit Gang und Flur darin.

Das ist nicht falsch, aber es summiert sich: Bereich, Gerät, Entität, jeweils mit Wiederholungen. Nachgezogen auf etwas Lesbares, denn bei einem Türkontakt bedeutet „an“ offen — und wenn der Name das nicht hergibt, baut man die Bedingung verkehrt herum.

Und dann das Display, das den Hausstrom nicht zeigte

Die Frage war einfach: Das Wandbedienfeld zeigt oben rechts eine Leistung. Warum nicht die des ganzen Hauses? Bedienfeld und Hauszähler hängen im selben Raum.

Claude hat die lokale Schnittstelle befragt und ist zu einem klaren Ergebnis gekommen:

verfügbare Anzeigeelemente   Temperatur, Luftfeuchte, Uhr
Konfiguration                kein Vorkommen von Leistung, Raum oder Verbrauch
Schlüsselspeicher            leer
Systemkonfiguration          keine Raumangabe

Der Schluss: Geht nicht.

Jede dieser Messungen stimmt. Der Schluss war trotzdem falsch.

Die Antwort kam von mir, und sie stand in der App: Am Hauszähler war eingestellt „von der Energie des Raums ausschließen“. Die Raumanzeige des Bedienfelds hat den Zähler also bewusst übersprungen.

Als Voreinstellung ergibt das sogar Sinn. Ein Zähler am Hausanschluss misst alles, was im Haus verbraucht wird. Zählte er in die Raumsumme, stünde in dem Raum, in dem er zufällig hängt, das ganze Haus doppelt — samt allem aus anderen Räumen.

Für einen Zähler im Raum ist Ausschließen richtig. Für den Hausanschlusszähler, der zufällig in dem Raum mit dem Bedienfeld hängt, ist es genau verkehrt.

„In der lokalen Schnittstelle nicht vorhanden“ heißt nicht „gibt es nicht“ — nicht bei einem Gerät, das nachweislich an der Shelly-Cloud hängt, deren Einstellungen man lokal nicht sieht.

Beide Geräte meldeten auf Nachfrage brav verbunden: ja. Diese eine Zeile hätte reichen müssen, um die Suche für unvollständig zu halten.

Was ich dir rate

  1. Benenne Geräte lokal, nicht nur in Home Assistant. Der Name gehört dorthin, wo das Gerät ist — für den Tag, an dem jemand anderes davorsteht.
  2. Prüf, ob dein Gerät Umlaute überhaupt speichert. Es sagt dir nicht, dass es sie verwirft.
  3. Zieh Bereichspräfixe nach, besonders bei Sensoren, deren Zustand man richtig herum lesen muss.
  4. Frag bei Cloud-Geräten nicht nur die lokale Schnittstelle. Was dort fehlt, kann in der App stehen — und die App ist die Wahrheit, nicht deine Abfrage.
  5. Nimm verbunden: ja als Warnung. Es bedeutet: Es gibt eine zweite Stelle, an der etwas eingestellt sein kann, und du siehst sie nicht.

Und was heißt das?

Drei Namen für ein Gerät sind kein Fehler im Aufbau. Sie sind die Folge davon, dass drei Systeme dasselbe Ding verwalten — der Hersteller, dein Zuhause und du.

Unangenehm wird es nicht, wenn sie auseinandergehen, sondern wenn man vergisst, dass es drei sind. Dann fragt man eine Stelle, bekommt eine vollständige und korrekte Antwort, und hält sie für die ganze.

Genau das ist hier mit dem Bedienfeld passiert. Vier Abfragen, vier richtige Ergebnisse, ein falscher Schluss — und die Lösung war eine Einstellung, die in der lokalen Schnittstelle gar nicht vorkommt, weil sie am falschen Ende gesucht wurde.