|
| 1 | +# 2.9.9b1 - WebSocket & Native Wallbox-Steuerung (Beta) |
| 2 | + |
| 3 | +--- |
| 4 | + |
| 5 | +## ⚠️ BETA-VERSION — WICHTIGE HINWEISE |
| 6 | + |
| 7 | +> **Dies ist eine Beta-Version und NICHT für den produktiven Einsatz gedacht!** |
| 8 | +> |
| 9 | +> - 🧪 **Nur zum Testen** — diese Version kann noch Fehler enthalten. |
| 10 | +> - 💾 **Backup erstellen!** — Vor der Installation unbedingt ein Home Assistant-Backup anlegen. |
| 11 | +> - 🔄 **Downgrade möglich** — Bei Problemen kann jederzeit auf die stabile Version 2.3.0 zurückgewechselt werden (über HACS → Version auswählen). |
| 12 | +> - 🐛 **Fehler melden** — Bitte Fehler und Auffälligkeiten auf [GitHub Issues](https://github.com/derolli1976/enpal/issues) melden, damit wir sie vor dem stabilen Release beheben können. |
| 13 | +> - 📊 **Historische Daten** — Beim Wechsel der Datenquelle (HTML → WebSocket) können sich Sensor-IDs ändern. Bestehende Historien-Daten bleiben erhalten, aber neue Sensoren starten ohne Historie. |
| 14 | +
|
| 15 | +--- |
| 16 | + |
| 17 | +## 🎉 Neue Funktionen |
| 18 | + |
| 19 | +### 1. WebSocket-Verbindung (Echtzeit-Daten) |
| 20 | + |
| 21 | +**Was ist das?** |
| 22 | +Bisher hat die Integration regelmäßig die Webseite der Enpal Box abgefragt und die dort angezeigten Daten ausgelesen (sogenanntes "HTML-Scraping"). Das funktioniert, ist aber langsam und kann bei Änderungen an der Webseite brechen. |
| 23 | + |
| 24 | +Die neue WebSocket-Verbindung nutzt stattdessen die **native Schnittstelle** der Enpal Box — dieselbe Technik, die auch die Weboberfläche intern verwendet. Die Daten werden dabei **direkt und in Echtzeit** an Home Assistant übertragen. |
| 25 | + |
| 26 | +**Vorteile auf einen Blick:** |
| 27 | +- ⚡ **Schnellere Updates** — Sensor-Werte werden sofort aktualisiert, statt nur alle 60 Sekunden |
| 28 | +- 🔒 **Stabiler** — Keine Abhängigkeit von der HTML-Struktur der Webseite |
| 29 | +- 📉 **Weniger Systemlast** — Eine dauerhafte Verbindung statt ständiger Seitenaufrufe |
| 30 | +- 📊 **Mehr Sensoren** — Die WebSocket-API liefert zusätzliche aggregierte Werte (z.B. Tagesverbrauch, Gesamthausleistung) |
| 31 | + |
| 32 | +### 2. Native Wallbox-Steuerung (ohne Add-on!) |
| 33 | + |
| 34 | +**Was ist das?** |
| 35 | +Bisher war zum Steuern der Wallbox ein separates Home Assistant Add-on nötig, das als Vermittler zwischen Home Assistant und der Enpal Box fungierte. Das war umständlich einzurichten und eine zusätzliche Fehlerquelle. |
| 36 | + |
| 37 | +**Neu: Direkte Wallbox-Steuerung** — Im WebSocket-Modus kommuniziert die Integration jetzt **direkt** mit der Wallbox-Seite der Enpal Box. Das separate Wallbox Add-on wird im WebSocket-Modus **nicht mehr benötigt**! |
| 38 | + |
| 39 | +**Vorteile auf einen Blick:** |
| 40 | +- 🚫 **Kein Extra-Add-on nötig** — Weniger Abhängigkeiten, einfachere Installation |
| 41 | +- ⚡ **Schnellere Reaktion** — Direkter Befehlsweg ohne Umweg über ein Add-on |
| 42 | +- 🔧 **Einfachere Einrichtung** — Wallbox-Steuerung einfach in den Integrationseinstellungen aktivieren |
| 43 | +- 🔄 **Zuverlässiger** — Keine Probleme mehr durch Add-on-Abstürze oder -Updates |
| 44 | + |
| 45 | +**Unterstützte Wallbox-Funktionen:** |
| 46 | +- Laden starten / stoppen |
| 47 | +- Lademodus wechseln: Eco, Solar, Full, Smart |
| 48 | +- Wallbox-Status auslesen (Modus, Verbindungsstatus) |
| 49 | + |
| 50 | +### 3. Automatische Erkennung der besten Datenquelle |
| 51 | + |
| 52 | +Bei der Einrichtung erkennt die Integration automatisch, ob die Enpal Box WebSocket unterstützt. Du musst dich nicht mit technischen Details befassen — die Integration wählt selbst die beste verfügbare Methode: |
| 53 | + |
| 54 | +- **Auto-detect (empfohlen)** — Prüft automatisch, ob WebSocket verfügbar ist |
| 55 | +- **WebSocket (Echtzeit)** — Erzwingt die neue WebSocket-Verbindung |
| 56 | +- **HTML-Polling (Legacy)** — Nutzt die bisherige Methode (für ältere Enpal-Boxen) |
| 57 | + |
| 58 | +--- |
| 59 | + |
| 60 | +## 🔧 Installation der Beta |
| 61 | + |
| 62 | +### Über HACS: |
| 63 | +1. In HACS → **Enpal Solar** öffnen |
| 64 | +2. Auf die **drei Punkte** (⋮) klicken → **Version auswählen** |
| 65 | +3. Version **2.9.9b1** auswählen und installieren |
| 66 | +4. Home Assistant **neu starten** |
| 67 | + |
| 68 | +### Ersteinrichtung: |
| 69 | +Die Integration erkennt beim Einrichten automatisch die beste Datenquelle. Es sind keine speziellen Einstellungen nötig. |
| 70 | + |
| 71 | +### Bestehende Installation upgraden: |
| 72 | +1. Beta-Version über HACS installieren (siehe oben) |
| 73 | +2. Home Assistant neu starten |
| 74 | +3. **Einstellungen** → **Geräte & Dienste** → **Enpal Webparser** → **Konfigurieren** |
| 75 | +4. Bei **Datenquelle** die gewünschte Option wählen (oder "Auto-detect" belassen) |
| 76 | +5. Ggf. **Wallbox-Steuerung aktivieren** (erfordert im HTML-Modus weiterhin das Add-on) |
| 77 | +6. Speichern — die Integration lädt automatisch neu |
| 78 | + |
| 79 | +--- |
| 80 | + |
| 81 | +## ⚠️ Bekannte Einschränkungen (Beta) |
| 82 | + |
| 83 | +- **WebSocket-Verfügbarkeit**: Nicht alle Enpal-Boxen unterstützen WebSocket. Die Integration erkennt das automatisch und fällt im Zweifelsfall auf HTML-Polling zurück. |
| 84 | +- **Sensor-Unterschiede**: Im WebSocket-Modus stehen teilweise andere Sensoren zur Verfügung als im HTML-Modus (ca. 88 gemeinsame Sensoren, 45 nur in HTML, 18 nur in WebSocket). Siehe [Sensor-Vergleich](SENSOR_COMPARISON.md) für Details. |
| 85 | +- **Wallbox-Steuerung**: Die native Wallbox-Steuerung wurde mit begrenzter Hardware-Vielfalt getestet. Bitte Rückmeldung geben, ob alles funktioniert! |
| 86 | +- **Verbindungsstabilität**: Die WebSocket-Verbindung wird automatisch bei Abbruch neu aufgebaut. In seltenen Fällen kann es zu kurzen Aussetzern kommen. |
| 87 | + |
| 88 | +--- |
| 89 | + |
| 90 | +## 📋 Zurück zur stabilen Version |
| 91 | + |
| 92 | +Falls Probleme auftreten: |
| 93 | + |
| 94 | +1. In HACS → **Enpal Solar** öffnen |
| 95 | +2. Auf die **drei Punkte** (⋮) klicken → **Version auswählen** |
| 96 | +3. Version **2.3.0** (stabile Version) auswählen und installieren |
| 97 | +4. Home Assistant **neu starten** |
| 98 | + |
| 99 | +Alle bisherigen Sensoren und Einstellungen bleiben erhalten. |
| 100 | + |
| 101 | +--- |
| 102 | + |
| 103 | +## ℹ️ Kompatibilität |
| 104 | + |
| 105 | +- **Rückwärtskompatibel**: Bestehende Installationen werden automatisch migriert. Die Datenquelle wird auf "HTML" gesetzt, damit alles wie gewohnt funktioniert. |
| 106 | +- **Wallbox Add-on**: Im HTML-Modus wird das Add-on weiterhin benötigt. Nur im WebSocket-Modus entfällt das Add-on. |
| 107 | +- **Keine Breaking Changes**: Bestehende Sensoren und historische Daten bleiben unverändert. |
| 108 | + |
| 109 | +--- |
| 110 | + |
| 111 | +## 🙏 Feedback erwünscht! |
| 112 | + |
| 113 | +Als Beta-Version lebt diese Version von eurem Feedback. Bitte meldet: |
| 114 | + |
| 115 | +- ✅ Was funktioniert gut? |
| 116 | +- ❌ Was funktioniert nicht? |
| 117 | +- 💡 Was fehlt oder könnte verbessert werden? |
| 118 | + |
| 119 | +Rückmeldungen bitte auf [GitHub Issues](https://github.com/derolli1976/enpal/issues) oder in den [GitHub Discussions](https://github.com/derolli1976/enpal/discussions). |
| 120 | + |
| 121 | +Vielen Dank an alle Tester! 🎉 |
| 122 | + |
| 123 | +--- |
| 124 | + |
| 125 | +## 🔍 Technische Details |
| 126 | + |
| 127 | +- Blazor SignalR WebSocket-Protokoll mit MessagePack-Encoding |
| 128 | +- Abstrakte API-Schicht (`EnpalApiClient`) für austauschbare Datenquellen |
| 129 | +- `EnpalWebSocketClient` für Echtzeit-Daten, `EnpalHtmlClient` als Legacy-Wrapper |
| 130 | +- `WallboxBlazorClient` für direkte Wallbox-Steuerung über die `/wallbox`-Seite |
| 131 | +- Automatische Reconnect-Logik mit Keep-Alive-Pings |
| 132 | +- Config Flow mit Auto-Detection, manueller Auswahl und Options Flow |
| 133 | +- Automatische Migration bestehender Konfigurationen (inkl. Umbenennung `use_wallbox_addon` → `use_wallbox`) |
| 134 | +- Credits: WebSocket-Protokoll basiert auf dem Reverse-Engineering von @arigon |
0 commit comments