NEWS
Daikin Adapter, Objekte mit der Cloud synchronisieren
-
Hallo zusammen,
ich versuche gerade meine Daikin Klimaanlagen zu visualisieren und auch mit einem Script zu steuern.
Der Adapter läuft, die Steuerung und die Visualisierung funktionieren.
Allerdings bekomme ich die Änderungen in den Objekten nicht mit der Cloud synchronisiert. Dass ist notwendig, um die Einstellungen auch in der Daikin App auf Handys und Tabletts zu aktualisieren.
Offenbar muss man im Adapter hier...... etwas einstellen. Allerdings gibt es da keine Eingabemöglichkeiten
Gibt es da einen Weg, bzw. was habe ich übersehen?
Hier mein Script dazu:
on ({id: '0_userdata.0.Klimaanlage.Betriebsmodus', change: 'any'}, function(obj){ let modus = getState("0_userdata.0.Klimaanlage.Betriebsmodus").val; setState("daikin-cloud.0.zzzzzzzzzzzzzz.climateControl.operationMode", modus, true); //Modus Schlafzimmer setState("daikin-cloud.0.yyyyyyyyyyyy.climateControl.operationMode", modus, true); //Modus Wohnzimmer setState("daikin-cloud.0.xxxxxx.climateControl.operationMode", modus, true); //Modus Arbeitszimmer })
Muss man da ggf. noch ein anderes Objekt setzen, damit die Übertragung in die Cloud erfolgt?
-
@pezi Ich muss da nichts einstellen und er synchronisiert die Daten auch mit der App. Die wird aber nur alle Schaltjahre mal aktualisiert, so dass das immer etwas dauert.
-
@joergh
Wenn ich mit dem Script den operationMode z.B. auf 2 stelle (cooling), dann wird das auch so in den Objekten angezeigt.
In der App steht der Modus aber auch nach einer Stunde weiterhin auf "Heizen".
Im Objekt "lastUpdateReceived" wird aber alle 10 Minuten die Uhrzeit aktualisiert. Eine Synchronisation erfolgt jedoch in keine Richtung. (Objekt "operationMode" steht auf "Kühlen", in der App wird "Heizen" angezeigt) -
@pezi Schreibst Du den Wert auch mit "steuere"?
-
@joergh
Was meinst du mit "steuere"? ich mache das mit dem oben gezeigten Script. Ist da ein Fehler drin oder fehlt da ein Parameter? -
@pezi Ich bin kein Javascript Experte, aber ich glaube Du musst die Datenpunkte mit ack: false schreiben und nicht mit "true" damit er den Wert nicht nur "aktualisiert"....ich nutze immer Blockly, deswegen "steuere"...
Das zeigt er mir beim Anwenden des Blocklys in javascript an:
setStateDelayed('daikin-cloud.0.e43c650c-99c7-408a-b92b-c726c505627e.climateControlMainZone.operationMode', { val: true, ack: false }, parseInt(((0) || '').toString(), 10), false);
-
@joergh
hab es mal mit "false" probiert, gleiches Ergebnis
Kannst Du mal bitte Dein Blockly einstellen?
Also einschließlich der Parameter, die Du da übergibst. Ich übergebe derzeit nur Ziffern 0 bis 4 -
@pezi Hier mal ein Auszug aus meinem Skript...
Ich schalte bei PV Überschuss und Abweichungen der Solltemperatur, wenn jemand anwesend ist die Klimaanlage ein...
-
@joergh
danke, ich sehe es mir mal an.
Wie ist Deine Einstellung im Adapter bei "Dieselben Werte noch einmal senden?" -
@pezi sagte in Daikin Adapter, Objekte mit der Cloud synchronisieren:
@joergh
danke, ich sehe es mir mal an.
Wie ist Deine Einstellung im Adapter bei "Dieselben Werte noch einmal senden?"Aus. Da Daikin die Anzahl der Abfragen limitiert hat, würde ich das nicht nutzen, wenn es sich vermeiden lässt.
-
@pezi sagte: Hier mein Script dazu:
Lösche in Zeilen 3 bis 5 das true hinten im setState(), denn es muss ohne Bestätigung geschrieben werden, damit in die Cloud gesendet wird.
-
-
@pezi sagte in Daikin Adapter, Objekte mit der Cloud synchronisieren:
@joergh
@paul53
Danke Euch, mittlerweile funktioniert es. Es lag am "true" bei setState.
Es funktionieren beide Varianten (ohne und mit "false" als ack-Parameter)Die Aktualisierung in die Cloud erfolgt nicht sofort, sondern im Rahmen des Abfragezyklus (in meinem Fall alle 10 Minuten).
Wenn Du den Wert mit ack:false schreibst, dann landet der sofort in der Cloud und das Gerät schaltet sich z.B. ein.
Wie ich ja schrieb, ist die Anzeige in der App wegen der seltenen Updatezyklen gefühlt "ewig" verzögert, je nachdem wann gerade der Letzte war. -
@joergh
Jetzt hab ich's verstanden
vielen Dank für Deine Geduld