NEWS
[Javascript] Midas (Aquatemp) Poolheizung
-
Das ist das was ich nicht verstehe. Anmeldung und Token erstellen klappt alles.
Der Response gibt auch 200 zurück und damit sollte doch eigentlich alles schön sein. Aber object_result ist leer.
Daher hatte ich befürchtet, dass die API geändert wurde. Wenn das Skript bei Euch aber noch läuft kann das ja auch nicht der Fall sein.08:50:53.746 info javascript.0 (430) script.js.Regeln_Komfort.Pool_Wärmepumpe_steuern: {"statusCode":200,"body":{"error_code":"0","error_msg":"Success","error_msg_code":"","object_result":[],"is_reuslt_suc":true},"headers":{"date":"Tue, 09 May 2023 06:50:53 GMT","content-type":"application/json;charset=UTF-8","transfer-encoding":"chunked","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"cloud.linked-go.com","port":443,"hostname":"cloud.linked-go.com","hash":null,"search":null,"query":null,"pathname":"/cloudservice/api/app/device/deviceList.json","path":"/cloudservice/api/app/device/deviceList.json","href":"https://cloud.linked-go.com/cloudservice/api/app/device/deviceList.json"},"method":"POST","headers":{"x-token":"2F9BE34BC92372C50CE6E84DB074140B","accept":"application/json","content-length":0}}} 08:50:53.747 info javascript.0 (430) script.js.Regeln_Komfort.Pool_Wärmepumpe_steuern: []
-
Das ist wirklich spooky. Aber vielleicht bin ich ja auch der einzige, bei dem es noch funktioniert?
-
Also ich habe es nochmal mit meiner Rückgabe verglichen und es ist in der Tat so, dass der Server mit bei "object_result" ein gut gefülltes Array zurückgibt. Bei Dir ist das leer.
Der Rest ist identisch!
{ "statusCode": 200, "body": { "error_code": "0", "error_msg": "Success", "error_msg_code": "", "object_result": [ { "device_status": "ONLINE", "device_name": null, "is_fault": false, "device_id": "xxx", "device_code": "xxxx", "product_id": "xxx", "device_type": "", "device_nick_name": "Poolheizung" } ], "is_reuslt_suc": true }, "headers": { "date": "Wed, 10 May 2023 04:55:48 GMT", "content-type": "application/json;charset=UTF-8", "transfer-encoding": "chunked", "connection": "close" }, "request": { "uri": { "protocol": "https:", "slashes": true, "auth": null, "host": "cloud.linked-go.com", "port": 443, "hostname": "cloud.linked-go.com", "hash": null, "search": null, "query": null, "pathname": "/cloudservice/api/app/device/deviceList.json", "path": "/cloudservice/api/app/device/deviceList.json", "href": "https://cloud.linked-go.com/cloudservice/api/app/device/deviceList.json" }, "method": "POST", "headers": { "x-token": "xxx", "accept": "application/json", "content-length": 0 } } }
Ich tippe jetzt mal in's Blaue:
Könntest Du versuchen, Deine Anlage einfach per App neu zu registrieren?Alternativ kann es vielleicht auch an Sonderzeichen im Kennwort liegen. Dann würde aber wohl kaum ein "success" zurückkommen.
-
@oxident Lieben Dank für die ausführliche Prüfung und Unterstützung! ich habe einen zweiten Fall gefunden mit dem leeren Array. Da war das Gerät nicht sauber in der App hinterlegt.
Ein erneutes einbinden habe ich schon gemacht das brachte keinen Erfolg. Also habe ich mich einmal komplett von der App abgemeldet. Beim Anmelden kamen diverse Fehlermeldungen irgendwas mit x-token und Fehler in device-Liste.
Leider gingen die zu schnell von alleine weg. Aber das was ich so schnell lesen konnte passt zu dem Fehlerbild mit dem leeren Array.Derzeit kann ich mich nicht mehr anmelden. Ich probiere es morgen noch einmal. Sollte es dann immer noch nicht gehen lege ich einen neuen Account an.
Derzeit sieht es also nach einem Fehler des Accounts aus. Ich werde berichten, sobald ich Neuigkeiten habe.
Vielen Dank noch einmal bis hier her für die Unterstützung!
-
Viel Erfolg!
Hier merken wir mal wieder, was für ein Murks dieser Cloudzwang ist...
-
@oxident Dankeschön, aber jetzt muss ich erstmal kapitulieren
Der alte Account ist definitiv kaputt. Anmelden geht nicht mehr und PW zurücksetzen auch nicht.Ich habe einen neuen Account angelegt und die das Wifi-Modul damit verbunden.
In der App sieht wieder alles schön aus. Aber das Array ist immer noch leer.Vielleicht liegt es daran, dass ich ein etwas anderes Modul habe:
https://www.poolpowershop.de/pool/wifi-adapter-fuer-waermepumpe-mida-quickGibt es irgendwo eine Beschreibung der API? Ich habe im netz nichts gefunden.
Vielleicht muss ich für das Modul einen anderen Endpunkt ansprechen. -
@fuxx-0 Ahh, ganz sicher läuft das damit anders. Mir scheint auch, als hättest du eine andere App.
Bei mir ist es "Aqua Temp".
Leider bleibt da nichts anderes übrig, als irgendwie herauszufinden, womit sich die App verbindet. Sorry, da fehlt mir aber die Erfahrung.
-
@oxident said in [Javascript] Midas (Aquatemp) Poolheizung:
Ich nutze auch die Aqua Temp App (Blaues Symbol mit weißem Tropfen).
Beim Link vom PoolPowerShop ist eine Midas App gezeigt. Die ist aber nicht für das WiFi Modul.
Da ich beim einbinden der Wifi App aussuchen sollte welches Modul ich verbinden möchte und das von Euch neben meinem gesehen hatte, dachte ich das läuft für alle gleich, solange sie eben in der App eingebunden sind. Scheint aber nicht der Fall zu sein.
Auf jeden Fall ganz lieben Dank für die Unterstützung! -
@oxident sagte in [Javascript] Midas (Aquatemp) Poolheizung:
Viel Erfolg!
Hier merken wir mal wieder, was für ein Murks dieser Cloudzwang ist...
[OT]
Ich suche auch schon lange eine Inverter für den Pool ohne cloud.
hatte auch bei der ersten Durchsicht der Datenblätter/Anschlusspläne eine gesehen, die@andy200877 sagte in [Javascript] Midas (Aquatemp) Poolheizung:
einen RS485 Anschluss besitzt.
aber leider nicht wiedergefunden.
habt ihr den Weg nochmal versucht?
PS habe ein paar Codezeilen in code-tags gesetzt.
-
@homoran Nun ja, meine Poolheizung hat in der Tat einen solchen Anschluss und angeblich haben es auch schon einige geschafft, dort die Steuerung direkt zu realisieren. Hier z. B.: https://control.com/forums/threads/first-venture-into-modbus-how-to-send-a-password.49759
Letzten Endes läuft es auf wohl auf einigen Wärmepumpen immer darauf hinaus, dass sie 1-2 RS485-Anschlüsse haben und dort dann auch das Display und ggf. der Cloud-Adapter mit eingehangen werden.
Da dieser Wifi-Adapter aber augenscheinlich auch nichts anderes als ein Modbus-TCP Wandler ist (HF-LPT230 Low Power WiFi Module) wäre es auch ein Ansatzpunkt, diesen direkt zu verwenden. Beispielsweise kann man unter http://ADAPTER-IP/iweb.html zumindest die Seite zum Firmware-Upgrade finden und der ein oder andere hat auch schon mittels Man-in-the-Middle die MQTT-Kommunikation zum China-Server abgefangen ... jedoch nicht wirklich verstanden:
https://community.home-assistant.io/t/implementation-of-aqua-temp-controlle/230400 -
@oxident Hallo oxident,
Ich habe dein Script am laufen und bin sehr zufrieden damit, klasse Arbeit.
Was mir jedoch heute auffiel ist wenn ich meine Pumpe abschalte geht die WP auf Fehler E03 was natürlich richtig ist (Durchfluß). Jedoch bleiben die Objekte "error, errorCode, errorLevel und errorMessage" leer ??? Ist das bekannt oder nur bei mir so ? Der Rest funktioniert und wird aktualisiert ...
In der Tuya App bekomme ich allerdings unter Info (das Ausrufezeichen) auch keinen Fehler angezeigt sehe ich gerade -
@flyer99 Danke
Ja, der Fehler E03 wird von der Cloud in der Tat gemeldet, jedoch nicht als "Fault" bezeichnet. Daher habe ich mich entschieden, diesen dann auch nicht durchzureichen.
Um zu schauen, ob und wie stark die Heizung gerade arbeitet könnte man den "rotor"-DP auswerten.
Tatsächliche Fehler werden aber (hoffentlich) zuverlässig über die Datenpunkte gemeldet. Kann man ja immer schlecht testen
-
Habe gerade eine neue Version hochgeladen. Dort sind aber nur zwei neue Temperaturwerte und die Ausgabe des JSON-Datensatzes vom Cloud-Server neu.
Ich hätte aber eine Bitte an alle Nutzer:
Hat jemand von Euch einen Energiemesser an der Pumpe?
Mich würde interessieren, ob die wirklich einen Standby-Verbrauch von 50W hat oder ob die Cloud das einfach falsch meldet... -
@oxident Also, eben mal ein paar Messungen gemacht (Energiemesser ist normalerweise vor der SFA-Pumpe somit schnell mal umgesteckt) ....
Energiemesser ist eine FritzDect-Steckdose
Du multiplizierst T07 mit T14 für die Berechnung der aktuellen Leistung der WP ? Dies konnte ich auf jeden Fall immer nachrechnen ..Messung 1:
Ausgabe Wärmepumpe: 478,8 W
Ausgabe FritzDect: 434 WMessung 2:
Ausgabe Wärmepumpe: 1075 W
Ausgabe FritzDect: 1080 WMessung 3:
Ausgabe Wärmepumpe: 479 W
Ausgabe FritzDect: 451 WMessung 4:
Ausgabe Wärmepumpe: 23 W
Ausgabe FritzDect: 5,93 WMessung 5:
Ausgabe Wärmepumpe: 0 W
Ausgabe FritzDect: 5,48 WFazit:
Also bei der Messung 1 habe ich mit Sicherheit nicht lange genug gewartet bis der FritzDect sich aktualisiert hat da die restlichen Werte im "groben" schon passen wie ich finde.
Messung 4 tritt ein wenn Solltemp. erreicht im Automatikmodus ODER bei Fehler Durchfluß
Messung 5 ist "AUS" --> also StandBy --> hier werden bei mir von der WP 0 Watt gemeldet, bei dir 50 W ???Ich habe jetzt nicht alle Modi explizit geprüft, ist aber glaube ich auch nicht nötig bei diesen ersten Vergleichsmessungen.
So, jetzt werde ich mal deine neue Version einpflegen, das mit dem Durchflußfehler passt dann für mich.
-
Gibt es eine Möglichkeit zu erkennen ob die Wärmepumpe heizt oder kühlt wenn sie auf Automatik steht ??
Da ich mit einem Script die kWh meiner Verbraucher über den Tag berechne wäre es cool wenn ich das unterscheiden könnte ... -
@flyer99 Danke für Deine Messungen! Dann bin ich beruhigt, dass der angezeigte Wert im Standby "falsch" ist
Du hast Recht, ich multipliziere T07 mit T14. Eventuell könnte man da mit Deinen Messungen noch etwas tunen.
Bezüglich dem aktuellen Betriebsmodus bei Auto recherchiere ich noch ein wenig. Das kann man bestimmt herausbekommen!
-
Hallo zusammen,
ich habe auch vor, mir eine POOLSANA InverPLUS Performance zu kaufen. Da wäre natürlich die Steuerung über den iobroker super.
Ich hab bisher allerdings noch nie was mit den Java-Scripten zu tun gehabt.
Kann mir vielleicht kurz jemand erläutern, wie ich das mache und vorgehe? Das komplette Script gebe ich wahrscheinlich unter Java-Script ein und starte das Script dann, oder? Wie komme ich denn dann an die Daten und wie bzw. wo gebe ich das Token etc. ein? Sowas mache ich ja sonst immer im Adapter.Danke schon mal im Voraus.
-
@stormtigger Vorab kurz eingeworfen: Ich weiß nicht, ob die InverPLUS überhaupt mit dem Script funktioniert. Ich selber nutze eine InverPRO von Poolsana (Hersteller/Importeur ist Midas). Es gibt auch leider kaum Möglichkeiten, das vorher herauszufinden. Ein Ansatz wäre die verwendete App: Wenn es "Aqua Temp" ist, dann stehen die Chancen sehr gut!
Die Einbindung ist dann recht simpel: Ein neues Script vom Typ Javascript anlegen und den Code aus dem ersten Block einfügen. Dann noch Deine Zugangsdaten ganz oben im Script ergänzen und auf Play drücken.
Dann findest Du in den Objekten den Knoten 0.Userdata -> Poolheizung
-
@oxident Ah okay, das muss ich mal checken.
Super, dann war ich ja nah dran.
Danke für die Info. Werde ich dann mal testen. -
@stormtigger Ich habe im ersten Post noch einen Screenshot der zu erwartenden Datenpunkte eingefügt. Dann bekommst Du vielleicht schon eine Vorstellung, was möglich sein wird.
Um Tokens usw. musst Du Dir keine Gedanken machen. eMail-Adresse und Kennwort von der App reichen aus!