Warte zwar noch auf die Faikin Module, aber JSON zerlegen hab ich mal wie üblich angedacht:
Danke für die Hilfestellung, aber so wie abgebildet konnte ich es nicht umsetzen. Den Block "Setze obj auf" gibt es bei mir gar nicht.
Im MQTT-String vom Faikin ist der Parameter "power" im ausgeschalteten Zustand "false" und im eingeschalteten Zustand ein Zahlenwert. Verrückt.
[quote data-userid="38176" data-postid="229887"]
Danke für die Hilfestellung, aber so wie abgebildet konnte ich es nicht umsetzen. Den Block "Setze obj auf" gibt es bei mir gar nicht.[/quote]
"obj" ist an dieser Stelle auch eine freie selbsterstellte Variable. Links im Menü "Variablen" kannst Du mit "Variablen erstellen" Dir so etwas anlegen/definieren.
Es geht ja danach nur darum dir vom "verschachtelten" Attribut dort die gewünschten Inhalten abzugreifen. Stehen die einmal in der eigenen Variable "obj" zerlegt man weiter runter auf die einzelnen Datenpunkte.
Wie gesagt sind die Faikins bei mir noch auf dem Postweg und würde mich wundern, wenn das Attribut hier mit dem Beispiel einer Zwischensteckdose identisch wäre. Daher im Log anschauen, was da per MQTT reinläuft und dann zerlegen auf die Datenpunkte.
Wenn das problematisch ist, dann prüfe vorher
Danke. Hat nun geklappt.
Nächste (blöde) Frage: wie kann ich einen MQTT-Befehl an das Klimagerät absetzen um es aus einem Skript heraus zu steuern?
Geht das mit diesem Block wohl?
@rug1024 Witzig. Beschäftige mich gerade genau mit der gleichen Fragestellung. Hänge mich hier mal ran. Einzelne Attribute aus dem JSON in selbst erstellte Datenpunkte zu schreiben klappt soweit. Aber ich will das Klimagerät ja steuern und nicht nur die Werte auslesen. Für Hilfe bin ich dankbar.
OK, was Wichtiges hab ich gelernt und möchte das direkt teilen:
Aktiviert in den Faikin-Settings unter "Advanced" auf jeden Fall "fixstatus" (Send status as fixed values not array).
Im ioBroker-MQTT tauchen dann unter "state" ebenfalls Daten auf, diesen String verwende ich zum weiteren "zerlegen".
Vorteil hier ist, der wird nicht nur alle 60 Sek. aktualisiert sondern direkt bei einer Änderung am Klimagerät.
Power ist hier auch "true" oder "false" und nicht ein komischer Zahlenwert.
@kimukao: Kriegen wir bestimmt hin, sobald ich was rausfinde lasse ich es euch wissen.
@rug1024 Das ist schonmal super. Danke. Hab mein "Zerlegeskript" direkt angepasst. Irgendwo hatte ich gelesen, dass man bei Alias-Datenpunkten das Lese- und Schreibrouting für mqtt Aufgaben nutzen kann, indem man für das Schreiben entsprechende Präfixe speichert. Auf der Github Seite zum Faikin Thema ist im advanced manual ja einiges angegeben. Aber schlau werde ich noch nicht daraus. Vielleicht bin ich auch auf dem Holzweg.
DHL meldet dass die Faikin Module bei mir geliefert wurden aus China. Meine Daikin fehlt zwar noch aber wollte später die Faikins mit Software bestücken und teste mal bzgl. MQTT schreiben. Meld mich
Also die Basics kann ich mittlerweile steuern. Darunter on, off, temp, mode, fan slow Link entfernt Dafür hab ich eine iobroker mqtt Instanz als Broker am Laufen. In meinen Skripten verwende ich den Baustein SendTo/MQTT-Nachricht, dort wähle ich als Instanz mqtt.0 aus und schreibe in die erste Zeile z.B. command Link entfernt Die zweite Zeile bleibt leer. Außer bei der temp-Steuerung. Folgende commands kann man anstelle des eben genannten "off" einsetzen: on, off, heat, cool, fan, dry, auto, low Link entfernt Wenn ich die Solltemperatur defginieren möchte setze ich dort temp ein und schreiben den gewünschten Wert in die ansonsten leer bleibende zweite Zeile. Eigentlich ganz easy. Aber was mir nicht gelingt sind die control commands, die per JSON Payloads im laufenden AC Betrieb laut <a href=" Link entfernt "> Link entfernt funktionieren sollen. Wenn jemand weiß, wie man diese Befehle absetzt würde ich mich über einen Hinweis freuen.
Kannst Du bitte Deinen Beitrag überprüfen, da steht überall "Link entfernt".
@dieter_p die Daikin sollte doch auf jeden Fall günstiger sein als eine alte Ölheizung. Zumindest nicht teurer.
Da Kauf ich lieber Strom als Öl ![]()
Wo hast du die Faikin Module bestellt und was kosten diese ?
Habe auch eine ATXD, aber bin noch immer nicht dazu gekommen Faikin nachzurüsten.
Könntest du ein paar Fotos vom Einbau machen?
Ich will das Modul hauptsächlich einbauen, da der Temperatursensor nicht gut arbeitet bei uns.
Ea ist immer 2-3 Grad wärmer oder kälter als eingestellt. Ich denke ein dezentraler Sensor sollte hier besser funktionieren.
@hubby Das ist aktuell auch mein Fazit, werde nur darauf achten das mir a) das Haus nicht in anderen Räumen zu stark auskühlt und b) ich durch die Daikin den Komfort überstrapaziere. Kann mir schon so etliche Situationen vorstellen, wo aktuell nicht geheizt wird, eine zu oberflächlich automatisierte Daikin aber läuft und Strom verbraucht und sei es nur zum Entfeuchten. Den neuen Luxus möchte ich auch klar im Griff haben.
Ich warte noch auf meine Lieferung der Daikin und muß dann noch installieren. Das dauer sicher noch 2-3Wochen eh ich alles da hab wo es hin gehört.
Die Faikins habe ich aber mit Überschuss hier liegen. Da die Situation bzgl. Anschluß auch hinreichend klar ist, sag ich mal Plug&Play und fertig.
Wenn Du Interesse hast gerne melden (Foto mit S403 Anschluß ist dort auch zu sehen und kannst Du so fertig bekommen):
Sorry, da habe ich keinen Einfluss drauf. Da stand, dass die Links vom Moderator freigegeben werden müssen. Die Detailsteuerungen per mqtt hab ich jetzt auch mittlerweile hinbekommen. Wie kann man denn hier Fotos einfügen? Dann würde ich einen Screenshot einstellen...
@rug1024
So sieht mein "Zerlegeskript" aus
und diese Basicbefehle funktionieren einwandfrei, hier im Screenshot aus meinen Scripts extrahiert:
und ein Beispiel für die auf der Github Seite zum Faikin Projekt genannten "Advanced" Control Commands (Links werden hier ja blockiert, deshalb die Umschreibung) sieht so aus:
Da lassen sich dann auch horizontale und vertikale Schwingungen aktivieren, Quiet Modus etcpp. Hoffentlich hilft's jemandem. Bei mir funktioniert's super. Endlich frei von Daikins Cloud Beschränkungen.
EDIT: der letzte der Befehle des zweiten Bildes geht so nicht, deshalb das dritte Foto...
TOP! Direkt umgesetzt, funktioniert!
Dein "Zerlegescript" ist sogar noch viel simpler als mein Entwurf es war.
Wenn man jetzt allerdings in ioBroker -> Objekte den ausgelesenen Datenpunkt ändert, bspw. setze dort POWER on FALSE auf TRUE, dann passiert ja logischerweise nix weil nur das Zerlegescript auf den Datenpunkt schreibt.
Ist es wohl möglich da auch einen Zusammenhang herzustellen so das es auch in die andere Richtung geht? Habe mal was von Alias gelesen, muss aber ehrlich gestehen, so weit bin ich noch nicht.
[quote data-userid="38176" data-postid="230981"]
TOP! Direkt umgesetzt, funktioniert!
Dein "Zerlegescript" ist sogar noch viel simpler als mein Entwurf es war.
Wenn man jetzt allerdings in ioBroker -> Objekte den ausgelesenen Datenpunkt ändert, bspw. setze dort POWER on FALSE auf TRUE, dann passiert ja logischerweise nix weil nur das Zerlegescript auf den Datenpunkt schreibt.
Ist es wohl möglich da auch einen Zusammenhang herzustellen so das es auch in die andere Richtung geht? Habe mal was von Alias gelesen, muss aber ehrlich gestehen, so weit bin ich noch nicht.
[/quote]Dafür habe ich eigene Datenpunkte angelegt. Wenn ich also zB in meiner VIS Power on schalte schickt ein Script im Hintergrund den o.g. mqtt Befehl an das Gerät. Das wiederum meldet zurück, dass das Gerät an ist und der eigentliche, nicht berührte Datenpunkt für Power wechselt auf true. Ich benutze also für jede Funktion zwqei DPs: einen zum Lesen und den anderen zum Schreiben.
Alias sind eine sehr schöne Sache, haben aber die Funktion in Skripten und Blocklys einen dauerhaften Bezugspunkt herzustellen der sich dann flexibel an die Quelle (zB Hardware) anpassen lässt. Die Anbindung zB von Datenpunkten die über ein Stück Hardware (zB auch das Faikin-Modul) in den IOBroker läuft hat immer etwas individuelles. Ändert sich jetzt irgendwas an dieser Quelle, hat man die unschöne Aufgabe die Bezüge/Verknüpfung im Blockly händisch anzupassen und das überall wo man es verwendet hat (Eine Suchfunktion als Beispiel fehlt dafür). Für das Faikin Modul empfinde ich das jetzt nicht als dramatisch, weil wir eher über eine Lösung sprechen die über Jahre Bestand haben soll. Für Hardware die mal schneller kaputt geht oder Änderungen erfährt kann ich daher auch sehr empfehlen Alias zu benutzen. Ändert sich was an der Quelle, verlinkt man einmal die entsprechenden Alias neu auf diese Punkte und ist fertig, egal wie komplex und oft man Verlinkungen dazu in der Software hat. Die braucht man nicht anfassen und funktioniert.
Ist einem zB einmal ein Stück Hadrware abgeraucht, dass Verwendung in einer komplexeren Logik über viele Blocklys besitzt, die man sich irgendwann mal ertüftelt hat und darf jetzt ein neues Stück Hardware daraeinfummeln. Dann wird der Vorteil von Alias sehr schnell deutlich.
Geht. Alternativ mit dem Blockly für den Schreibbefehl einfach prüfen woher (Quelle) die Änderung des Triggers kommt. Alles außer eine Änderung vom MQTT Adapter selbst, ist eine Änderung die ich aktiv zum Faikin kommunizieren möchte und somit das Schreibkommando scharf ausführt.
Ob das so wirklich Ressourcenschonender umgesetzt ist, keine Ahnung aber hat für mich den Vorteil von weniger DPs und kompakterer Blocklys also Übersichtlichtkeit.
Beispiel in diese Richtung:
P.S.: Kann leider keinen dedizierten Beispiele vom/zum Faikin geben, da ohne angeschlossene Anlage das Faikin kaum MQTT Daten kommunziert (verständlich).
Danke @kimukao und @Dieter_P für Eure Ausführungen. Das hat einiges aufgeklärt, mit diesem
Wissensstand kann man alles realisieren was benötigt wird.
Ich hatte beim Faikin-Programmierer hier mal angeregt die einzelnen Datenpunkte direkt über
MQTT zu bringen, andere Geräte wie z.B. OpenDTU (PV, Solar) machen das.
Diese Datenpunkte kann man direkt beschreiben. Er scheut aber scheinbar den Aufwand.
Ggf. kann man ihn ja doch dazu bewegen wenn andere User sich an die Diskussion dranhängen.
Heute den nächsten Schritt getan:
da ich bereits Temperatursensoren in verschiedenen Räumen betreibe, welche über Zigbee die Temperaturwerte an den ioBroker melden, wollte ich diese gerne zur Regelung der Raumtemperatur heranziehen (Faikin Auto Mode). Die optimale Platzierung der Sensoren im Raum ist natürlich wichtig und muss individuell erfolgen.
Mit folgendem ioB-Script füttere ich 1x pro Minute Faikin Wohnzimmer + Esszimmer jeweils mit den Sensordaten aus den Räumen:
Akzeptiert der Faikin die Werte erscheint in der Weboberfläche die Umgebungstemperatur "Env":

Jetzt nur noch die Vorgaben für den Auto-Mode setzen und es kann losgehen:

Ob das ganze dann wie gewünscht funktioniert wird sich im Langzeit-Test zeigen.









