Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst]Klarstein Klimaanlage einbinden

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst]Klarstein Klimaanlage einbinden

    This topic has been deleted. Only users with topic management privileges can see it.
    • Dominik F.
      Dominik F. @mickym last edited by Dominik F.

      @mickym

      Das ist genial von dir!!!

      thebermud@ewpebridge:~$ git clone https://github.com/stas-demydiuk/ewpe-smart-mqtt
      Cloning into 'ewpe-smart-mqtt'...
      remote: Enumerating objects: 7, done.
      remote: Counting objects: 100% (7/7), done.
      remote: Compressing objects: 100% (7/7), done.
      remote: Total 80 (delta 0), reused 2 (delta 0), pack-reused 73
      Unpacking objects: 100% (80/80), 29.17 KiB | 995.00 KiB/s, done.
      
      

      npm habe ich auch schon nachträglich installiert

      Edit:

      
      thebermud@ewpebridge:~$ node -v
      v10.19.0
      thebermud@ewpebridge:~$ npm -v
      6.14.4
      
      
      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @Dominik F. last edited by mickym

        @Dominik-F OK - ich habs jetzt soweit - aber das letzte bei dieser Software muss ggf. jemand anderes helfen - da kommt dann irgendein security fehler - und das müssen dann hier die node Fachleute beurteilen. 😉

        Also als erstes habe ich festgestellt - dass dieses npm anscheinend auch schon die node v 12 ebnötigt und habe die Anleitung hier aus dem Forum verwendet:

        1. Brauchst Du curl:
          sudo apt install curl

        2. dann das eingeben; curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -

        3. Dann node-js installieren

        sudo apt-get install -y nodejs

        1. dann wechselst Du in das Verzeichnis ewpw-smart-mqtt das unter Deinem aktuellen Verzeichnis angelegt sein sollte.
        Dominik F. 1 Reply Last reply Reply Quote 0
        • Dominik F.
          Dominik F. @mickym last edited by Dominik F.

          @mickym

          Sehr gut, npm install hat nun funktioniert.

          thebermud@ewpebridge:~/ewpe-smart-mqtt$ npm install
          added 101 packages from 76 contributors and audited 101 packages in 3.964s
          found 1 low severity vulnerability
            run `npm audit fix` to fix them, or `npm audit` for details
          
          
          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @Dominik F. last edited by

            @Dominik-F

            Ja diese Fehler habe ich auch - da kann ich aber nicht helfen - auch der fix bereinigt das nicht.

            screen.png

            Allerdings habe ich das Ding einfach mal unten gestartet und es scheint sich mit dem MQTT trotzdem verbinden zu wollen. Das lässt evtl hoffen.

            Dann erstell mal die Datei mit den Umgebungsvariablen und schau ob sich das DIng mit Deinem mosquitto verbindet

            Dominik F. 1 Reply Last reply Reply Quote 0
            • Dominik F.
              Dominik F. @mickym last edited by Dominik F.

              @mickym

              Was soll ich denn bei Username und Passwort angeben, einfach nichts?

              export MQTT_SERVER=mqtt://192.168.178.56
              export MQTT_PORT=1883
              export MQTT_USERNAME
              export MQTT_PASSWORD
              export MQTT_BASE_TOPIC=ewpe-smart
              export NETWORK=192.168.178.54
              export DEVICE_POLL_INTERVAL=5000
              export LOG_LEVEL=info
              

              Er scheint die Variablen aus der Datei irgendwie nicht anzunehmen

              mickym 2 Replies Last reply Reply Quote 0
              • mickym
                mickym Most Active @Dominik F. last edited by

                @Dominik-F

                Versuche erst mal:

                1. die beiden Variablen ganz wegzulassen

                wenn er das nicht mag

                1. einen leeren String übergeben also MQTT_USERNAME =

                2. Letztlich können wir auch den MQTT Server absichern - was sich sowieso empfiehlt - aber ich wollte erst mal schauen, ob das prinzipiell funktioniert.

                1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @Dominik F. last edited by mickym

                  @Dominik-F Hast Du die Datei in dieses Verzeichnis "/etc/profile.d " gestellt. Da das globale Variablen sind - musst die Maschine neu booten und dann mit "set | more" schauen ob er das gefressen hat.

                  Dominik F. 2 Replies Last reply Reply Quote 0
                  • Dominik F.
                    Dominik F. @mickym last edited by Dominik F.

                    @mickym

                    Ich hab diesen Befehl benutzt :sudo nano /etc/profile.d/mqtt.sh
                    set | more gibt folgendes aus:

                    thebermud@ewpebridge:~$ set | more
                    BASH=/bin/bash
                    BASHOPTS=checkwinsize:cmdhist:complete_fullquote:expand_aliases:extglob:extquote:force_fignore:globasciiranges:histappend:interactive_comments:login_s
                    hell:progcomp:promptvars:sourcepath
                    BASH_ALIASES=()
                    BASH_ARGC=([0]="0")
                    BASH_ARGV=()
                    BASH_CMDS=()
                    BASH_COMPLETION_VERSINFO=([0]="2" [1]="10")
                    BASH_LINENO=()
                    BASH_SOURCE=()
                    BASH_VERSINFO=([0]="5" [1]="0" [2]="16" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
                    BASH_VERSION='5.0.16(1)-release'
                    COLUMNS=150
                    DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
                    DEVICE_POLL_INTERVAL=5000
                    DIRSTACK=()
                    DISPLAY=localhost:10.0
                    EUID=1000
                    GROUPS=()
                    HISTCONTROL=ignoreboth
                    HISTFILE=/home/thebermud/.bash_history
                    HISTFILESIZE=2000
                    HISTSIZE=1000
                    HOME=/home/thebermud
                    HOSTNAME=ewpebridge
                    HOSTTYPE=x86_64
                    IFS=$' \t\n'
                    LANG=de_DE.UTF-8
                    LESSCLOSE='/usr/bin/lesspipe %s %s'
                    LESSOPEN='| /usr/bin/lesspipe %s'
                    LINES=43
                    LOGNAME=thebermud
                    LOG_LEVEL=info
                    LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34
                    ;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=0
                    1;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=
                    01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*
                    .ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=
                    01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;
                    35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:
                    *.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=
                    01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.
                    

                    Edit: VM hab ich neu gestartet

                    1 Reply Last reply Reply Quote 0
                    • Dominik F.
                      Dominik F. @mickym last edited by

                      @mickym

                      Da hat was funktioniert:

                      > ewpe-smart-mqtt@1.0.4 start /home/thebermud/ewpe-smart-mqtt
                      > node index.js
                      
                      2020-07-07T23:00:18.628Z [info]: Trying to connect to MQTT server mqtt://192.168.178.56 ...
                      2020-07-07T23:00:18.671Z [info]: Successfully connected to MQTT server
                      2020-07-07T23:00:18.678Z [info]: Socket server is listening on 0.0.0.0:51476
                      2020-07-07T23:00:18.678Z [info]: Scanning network 192.168.178.54 for available devices...
                      2020-07-07T23:00:18.697Z [info]: New device found: 1ecb8db4 (f4911ecb8db4), binding...
                      2020-07-07T23:00:18.718Z [info]: New device bound: 1ecb8db4 (192.168.178.54:7000)
                      2020-07-07T23:00:18.719Z [info]: MQTT message received: ewpe-smart/f4911ecb8db4 {cid:f4911ecb8db4,bc:000000000000000000000000000000,brand:gree,catalog:gree,mac:f4911ecb8db4,mid:13000,model:gree,name:1ecb8db4,series:gree,vender:1,ver:V1.2.1,lock:0,address:192.168.178.54,port:7000,key:3Cd6Fg9Ij2Lm5Op8}
                      2020-07-07T23:00:23.739Z [info]: MQTT message received: ewpe-smart/f4911ecb8db4/status {Pow:0,Mod:1,TemUn:0,SetTem:20,TemRec:0,WdSpd:0,Air:0,Blo:0,Health:0,SwhSlp:0,Lig:1,SwingLfRig:0,SwUpDn:2,Quiet:0,Tur:0,SvSt:0}
                      2020-07-07T23:00:28.741Z [info]: MQTT message received: ewpe-smart/f4911ecb8db4/status {Pow:0,Mod:1,TemUn:0,SetTem:20,TemRec:0,WdSpd:0,Air:0,Blo:0,Health:0,SwhSlp:0,Lig:1,SwingLfRig:0,SwUpDn:2,Quiet:0,Tur:0,SvSt:0}
                      2020-07-07T23:00:33.745Z [info]: MQTT message received: ewpe-smart/f4911ecb8db4/status {Pow:0,Mod:1,TemUn:0,SetTem:20,TemRec:0,WdSpd:0,Air:0,Blo:0,Health:0,SwhSlp:0,Lig:1,SwingLfRig:0,SwUpDn:2,Quiet:0,Tur:0,SvSt:0}
                      
                      
                      mickym 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @Dominik F. last edited by

                        @Dominik-F Wow Super - dann schau doch mal unter Deinem iobroker unter mqtt.0 - ob das was ist und mach einen Screenshot

                        Dominik F. 1 Reply Last reply Reply Quote 0
                        • Dominik F.
                          Dominik F. @mickym last edited by

                          @mickym
                          Also die Bridge ist zu erkennen und so wie es aussieht auch die Klimaanlage. Nur dachte/hoffte ich auf ein paar Datenpunkte

                          Unbenannt.PNG

                          mickym 1 Reply Last reply Reply Quote 0
                          • mickym
                            mickym Most Active @Dominik F. last edited by mickym

                            @Dominik-F Das sind doch alles Datenpunkte - schau den Status an - das ist ein Objekt mach das doch mal im Dialog -also status auf.

                            Steht doch alles beschrieben:

                            Publish to ewpe-smart/devices/list to receive list of registered devices
                            Publish to ewpe-smart/{deviceId}/get to receive status of {deviceId}
                            Publish to ewpe-smart/{deviceId}/set to set status of {deviceId}, payload should be json object with key/values pairs to set, i.e:

                            ewpe-smart/{deviceId}/set {"Pow": 1, "SetTem": 24} - so schaltest Du sie ein und setzt Wunschtemperatur auf 24°C

                            Mit NodeRed könnte ich Dir jetzt einfach helfen - aber wenn Du das mit blockly machen willst - dann musst halt hier jemand finden.

                            Dominik F. 1 Reply Last reply Reply Quote 0
                            • Dominik F.
                              Dominik F. @mickym last edited by Dominik F.

                              @mickym

                              dort steht folgendes:

                              {"Pow":0,"Mod":1,"TemUn":0,"SetTem":20,"TemRec":0,"WdSpd":0,"Air":0,"Blo":0,"Health":0,"SwhSlp":0,"Lig":1,"SwingLfRig":0,"SwUpDn":2,"Quiet":0,"Tur":0,"SvSt":0}
                              

                              Also müsste ich mir nun ein Skript schreiben damit ich aus Vis heraus das ganze steuern kann oder? Ist bei MQTT immer alles in einem Datenpunkt?

                              Ne ne, von Blocky habe ich gar keine Ahnung, ich habe bisher nur Javascript benutzt .

                              Das folgende hab ich auch gelesen:

                              Publish to ewpe-smart/devices/list to receive list of registered devices
                              Publish to ewpe-smart/{deviceId}/get to receive status of {deviceId}
                              Publish to ewpe-smart/{deviceId}/set to set status of {deviceId}, payload should be json object with key/values pairs to set, i.e:
                              
                              ewpe-smart/{deviceId}/set {"Pow": 1, "SetTem": 24} - so schaltest Du sie ein und setzt Wunschtemperatur auf 24°C
                              

                              Mir war nur nicht ganz klar was das bedeutet bzw wie ich das umsetze

                              mickym 1 Reply Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @Dominik F. last edited by mickym

                                @Dominik-F
                                Nein in MQTT ist nicht alles in einem Datenpunkt - das hängt vom Hersteller oder vielleicht hier auch von der Bridge ab.

                                Das ist ein normaler JSON String - den Du mit einem Mal einliest und siehst alle Parameter.

                                Du kannst jetzt mal folgendes machen, um das schon mal anzusteuern. Klick mal Deine Klima an - f49 .... uns erstelle darunter einen Datenpunkt "set" (Datenpunkt - Zeichenkette)

                                Sowie ich das nun verstanden habe - kannst Du dann jedes beliege Schlüsselpaar dort eintragen um die Klima zu steuern.

                                Also {"Pow": 0 oder 1} um ein und auszuschalten. "Quiet": 1 - ist wahrscheinlich Quiet Modus - Air - wird wohl Gebläse sein usw. da musst halt rumspielen - was absetzen und schauen was das Gerät macht 😉

                                Insofern musst Du nicht alles auf einmal setzen - Wenn Du also aus Deiner VIS diesen Wert in "set" {"Pow": 0 oder 1} schreibst und das nächste Mal {"SetTem": 24} aus einem anderen Widget ist das völlig OK. Zum Analysieren musst halt nur den JSON String auseinanderfieseln.

                                Du kannst für die VIS unter userdata.0 auch eigene Datenpunkte erstellen und dann über JAVA-Script den JSON String zusammensetzen und dann in den set Punkt setzen.

                                Mach das dochmal schnell den set punkt setzen im iobroker - Manuell einen Befehl los schicken, ob die Klima das macht was sie soll - dann hast Du doch alles erreicht was Du wolltest.

                                Dominik F. 1 Reply Last reply Reply Quote 0
                                • Dominik F.
                                  Dominik F. @mickym last edited by

                                  @mickym

                                  Ich kann jetzt gerade leider nicht testen, da der Abluftschlaucht meiner Klima gerade nicht angeschlossen ist und meine Frau da gerade friedlich schläft und es wäre besser wenn sie friedlich bleibt 😄 ich werde es morgen abend austesten und dir dann eine Rückmeldung geben. Ich werde es anfangs mit dem Datenpunkt wie von dir beschrieben probieren.
                                  Ich danke dir schon mal vielmals für deine Hilfe, Zeit und Geduld.

                                  mickym 1 Reply Last reply Reply Quote 0
                                  • mickym
                                    mickym Most Active @Dominik F. last edited by

                                    @Dominik-F Ok - ich drück die Daumen - aber mE warst Du erfolgreich. Wie gesagt einfach Datenpunkt "set" unter dem Ast f49.... erstellen und dann im Dialog aufmachen und dann so ein JSON String mit den geschweiften Klammern da rein schreiben.

                                    Dominik F. 1 Reply Last reply Reply Quote 0
                                    • Dominik F.
                                      Dominik F. @mickym last edited by

                                      @mickym

                                      Ich halte dich auf dem Laufenden. Ich bin schonmal froh das mit deiner Hilfe die Verbindung steht

                                      mickym 1 Reply Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @Dominik F. last edited by mickym

                                        @Dominik-F Gut - und wenn Du Javascript Programmierer bist - dann solltest Du mit JSON.stringify() und JSON.parse(obj) vertraut sein, um Java Objekte entsprechend verarbeiten zu können.
                                        Im Übrigen könntest DU Dir wahrscheinlich einfach über den Parser die Datenpunkte der Klima selbst erstellen und beschreiben, so dass Du mit VIS einfach zugreifen kannst. Änderungen durch die VIS müssten dann eben wieder ein Script initiieren, dass Dir den JSON String in den set Datenpunkt schreibt.

                                        Dominik F. 1 Reply Last reply Reply Quote 0
                                        • Dominik F.
                                          Dominik F. @mickym last edited by

                                          @mickym

                                          Also ich benutze zwar javascript aber ich bin ganz weit davon entfernt ein Programmierer zu sein^^ Ich bin da blutiger Anfänger und kann bisher nur sehr einfache Skripte schreiben. Ich nenne es mal gefährliches Halbwissen^^

                                          Ich hab das heute mit dem Datenpunkt getestet. Es funktioniert 🙂 Ich musste aber nochmal npm start in der Bridge ausführen damit die Verbindung wieder hergestellt wird.

                                          mickym 1 Reply Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @Dominik F. last edited by

                                            @Dominik-F Na wenn das mit dem Datenpunkt nun funktioniert - dann ist doch erst mal das Ziel erreicht - nämlich einer Steuerung Deiner Klima aus iobroker zu 100% erreicht. 🙂

                                            Aus einer Visualisierung die entsprechen JSON Strings zu erstellen oder den Status zu analysieren - sind ja nun Dinge, die mit Deiner übrigen Strategie zusammen passen müssen. Wenn die Bridge ggf. nicht stabil läuft muss man das Ding halt ggf. über den iobroker entfernt steuern. Da gibts aber sicher fähigere Leute als mich, die Dir da helfen können.

                                            Dominik F. 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            847
                                            Online

                                            31.9k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            klimaanlage
                                            3
                                            51
                                            10049
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo