IP-Symcon-Modul zur direkten, lokalen Steuerung von Intex PureSpa Whirlpools (Tuya, ab 2024) – ohne MQTT-Server und ohne Docker-Brücke.
Das komplette Tuya-3.5-Protokoll (AES-GCM + Session-Key-Handshake) ist in
reinem PHP (openssl + hash_hmac) im Modul nachgebaut.
Echtzeit per Push: Das Modul hält über einen automatisch angelegten Client-Socket eine ständige Verbindung zum Spa (Port 6668) offen, handelt einmalig den Session-Key aus und empfängt danach Geräte-Pushes sofort – jede Änderung (auch aus der Intex-App oder von den Tasten) erscheint ohne Verzögerung. Ein Heartbeat (alle 12 s) hält die Verbindung am Leben, ein langsamer Komplett-Abgleich dient als Sicherheitsnetz. Es wird nicht ständig neu verbunden → stabil, kein Flackern.
- Modul installieren (Modules → Hinzufügen → dieses Repo).
- Instanz anlegen (heißt nach dem Anlegen „Intex SPA local").
- In der Konfiguration IP-Adresse und Local Key des Spa eintragen.
- „Verbindung testen" klicken → die rohen Datenpunkte sollten erscheinen.
- Kachel zur Visualisierung hinzufügen – fertig.
Der Local Key ist der AES-Schlüssel des Geräts und technisch zwingend nötig (nur mit der IP allein lässt sich ein Tuya-3.5-Gerät nicht ansprechen). Zwei Wege, ihn einzutragen:
- Manuell – im Feld „Tuya Local Key" eintragen (16 Zeichen).
- Automatisch über die Tuya-Cloud – im Aufklapp-Bereich Device-ID, Cloud Access-ID, Secret und Region eintragen, dann „Gerät suchen / Key holen".
Hinweis: Aus Sicherheitsgründen ist im öffentlichen Code kein Local Key hinterlegt – er bleibt ausschließlich in deiner IP-Symcon-Instanz.
- Power, Heizung, Filter, Sprudler, Jets, Hygienisierung, Soll-/Ist-Temperatur
- Kachel mit Steuerung und Wochen-Zeitplan
- Anbindung an den offiziellen Energie Manager (PV-Überschuss-Heizung)
- Manueller Heiz-Vorrang inkl. einmaliger Push-Erinnerung
| Funktion | DP | Hinweis |
|---|---|---|
| Power | 104 | |
| Heizung | 108 | |
| Filter | 106 | manuelle Taste |
| Sprudler | 107 | |
| Jets | 105 | |
| Hygiene | 103 | |
| Soll-Temp | 109 | °F |
| Ist-Temp | 110 | °F |
| Heizstatus | 117 | enum off/heat (nur lesen) |
Nach lokalem Schalten hinkt die volle Tuya-Statusabfrage kurz nach; das Modul hält den geschalteten Wert daher 90 s lang (Grace), damit die Kachel nicht zurückspringt. Kleine Geräte-Pushes (≤ 4 Datenpunkte) gelten dagegen sofort als Wahrheit, damit auch App-/Tastenänderungen unmittelbar erscheinen.
MIT – siehe LICENSE.