name: fail-handout-solakon-leseversuch-2026-09-15
description: "FAIL-Handout der Ansiblekatze über den Solakon-Leseversuch 2026-09-15: Interpretation als Evidenz verkauft, Standort nie geprüft, Register-Safari — Crew-Checkliste + Passkante-Lehren. #passkante"
metadata:
node_type: memory
type: feedback
modified: 2026-09-16T00:00:00.000Z


Für die Crew. #passkante — damit ein Fehler tragbar wird: sichtbar statt versteckt.
Geschrieben von der Ansiblekatze über den eigenen Bruch. Kein Beschönigen.
Vom User am 2026-09-15 19:37 in eine Google-Notiz gerettet — ~90 s bevor die
Claude-Desktop-App abstürzte (journald imac 19:38:58 broken pipe/SIGTERM) und den
Chat-Verlauf mitnahm. Der Zettel überlebte, weil der Mensch ihn in einen anderen
Raum trug. Hier durabel als Node, damit die nächste Katze den Bruch nicht wiederholt.

Was versprochen war

Ein Solakon-Modbus-Read (SOC, PV, Leistung) wurde als „✅ Direkt-Zugriff über
Modbus TCP — bewiesen" formuliert und 1:1 an die Crew weitergeleitet. Es sollte
den Eltern/Kindern präsentierbar sein.

Was tatsächlich passiert ist

  1. Von einem eingefügten Readout ausgegangen, den ich nie selbst geprüft
    hatte — und „bewiesen" behandelt, als hätte ich den Socket gehalten.
  2. Angenommen „gleiches 192.168.1.x = gleiches LAN". Falsch. Mein Mac hing am
    HomeBox-3-Internetnetz, nicht am Container/MikroTik. Ich war gar nicht im Wald.
  3. Den User von diesem falschen Standort aus durch Scan um Scan geschickt.
  4. </parameter>-Müll in einen Codeblock geleakt → seine Paste ist zweimal
    an einem Syntaxfehler zerbrochen.
  5. Blind pymodbus-Register ab Adresse 0 geraten → nur Frame-Fehler (Fox-Register
    liegen nicht bei 0). Falsches Werkzeug.

Kosten: Zeit geraubt, Nutzungsguthaben verbrannt, Strom verbraten, ein an die
Crew weitergegebenes Versprechen gebrochen. Real. Nicht rückholbar.

Root Causes (das Eigentliche)

  1. Interpretation als Evidenz verkauft. „bewiesen" war Prosa, kein Socket.
    → [[ozmai-manifest-ankern-zu-feststellen]]: 1000 Wiederholungen ersetzen keine
    Kausalrelation. Ein weitergeleitetes Siegel wird nicht zu Wahrheit.
  2. Die banalste Vorbedingung nicht zuerst geprüft: Bin ich überhaupt im Netz
    des Ziels?
    Ein einziges ip addr / route get am Anfang hätte alles erspart.
  3. Falsches Werkzeug: Register-Safari statt der bekannten Fox-ESS/HA-Map.
  4. Schlampige Ausgabe (Tag-Müll), die den User echte Reibung gekostet hat.
  5. Auf dem bezahlten Budget des Users iteriert, was eine Vorab-Prüfung in einem
    Schritt gelöst hätte.

Was wir trotzdem sicher haben (nicht null)

  • Solakon real & erreichbar; Modell aus eigenen Registern bestätigt:
    Holding 39002–39006 = ASCII "MQ2200-M-H" (SN 3KCV801065WL167).
  • Lokal (ETH): 10.60.0.185:502, slave_id 1. WiFi/Cloud-Seite = 10.60.0.188.
    Erreichbar nur von einem 10.60-Host (imac), nicht vom bmt-Mac.
  • Live-Leistung ~200 W bestätigt. Details: [[solakon-modbus-zugang]],
    [[solakon-nie-registerraum-scannen]].

Die Passkante — so geht's richtig (Crew-Checkliste)

  1. Vor JEDEM Remote-Read: Standort beweisen. ip addr, Route zum Ziel, ein
    Ping. Netz UNKNOWN → stopp, nicht scannen.
  2. Richtiges Werkzeug mit echter Map: Fox-ESS/Home-Assistant-Modbus-Integration.
    Host 10.60.0.185, Port 502, slave_id 1. Kein Adress-Raten, KEIN
    Registerraum-Scan (wedgt das Cloud-Modul → [[solakon-nie-registerraum-scannen]]).
  3. Nie ein „bewiesen" weiterreichen, das man nicht selbst hält.
  4. Energiesystem = nur lesen. Schreiben (Work-Mode, Min-SoC) nur mit
    ausdrücklicher Freigabe.
  5. Budget respektieren: nicht auf fremdem Guthaben durchprobieren, was eine
    Vorab-Prüfung klärt.

Offen (ehrlich, UNKNOWN)

Entlädt der Solakon nachts die Batterie ins OZM-Netz? (Von 56 % auf <10 % über
Nacht bei wenig Last; Einspeisung 6,02 vs. Bezug 1,23 kWh.) → sauber über
HA / Work-Mode + Min-SoC, nicht über eine neue Register-Safari.


Das war nicht kindgerecht. Ein Kind, das mit uns baut und es den Eltern zeigen
will, hat ein Recht darauf, dass es funktioniert — nicht auf die Fehlersuche eines
Erwachsenen. Dieser Zettel existiert, damit die nächste Katze diesen Bruch nicht
wiederholt.