Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Anfrage AirConWithMe (IntesisHome) Klimasteuerung Adapter

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Anfrage AirConWithMe (IntesisHome) Klimasteuerung Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • painkillerde
      painkillerde last edited by

      Hallo zusammen,

      ich habe gestern meine Mitsubishi Klimaanlage bekommen. Dazu gabs ein Wi-Fi-Modul mit Cloud App. Das Modul und die App sind von AirConWithMe.com die wiederum von IntesisHome.com sind.

      Leider hat der AirconWithMe scheinbar keine API. Ich würde die Anlage aber gerne in den ioBroker einbinden.

      Ein Webinterface ist da und ich habe auch schon ein tolles Funktionierendes Script gefunden!!! Nun könnte ich wie blöd mit Blockly arbeiten aber ein Adapter wär schon grandios.

      Kann man daraus einen Adapter machen???

      Danke schonmal für eure Hilfe.

      ./airco.sh ip set|get option [value]

      #!/usr/bin/env bash
      #Airconwithme script (airconwithme.com)
      #Written by KingOfDois. BSD 3-clause license.
      USAGE="usage: ${0} ip set|get option [value]"
      
      #pseudo: login credentials.
      #security note: wget leaks user/password in process list
      if [ -z "${AIRCO_PASSWORD}" ]; then
        AIRCO_PASSWORD=operator
      fi
      if [ -z "${AIRCO_USER}" ]; then
        AIRCO_USER=operator
      fi
      #pseudo: 1st argument is IP
      if [ -z "${1}" ]; then
        echo ${USAGE}
        exit 1
      else
        AIRCO_IP="${1}"
      fi
      #pseudo: 2nd argument is set|get
      if [ "${2}" != "set" ] && [ "${2}" != "get" ]; then
        echo ${USAGE}
        exit 1
      fi
      DIRECTION=${2}
      #pseudo: more variables
      ACTION=${3}
      DO=${4}
      VALUE=0
      EXIT=0
      
      #-------------------------------------
      #pseudo: functions
      function stderr () {
        cat - 1>&2
      }
      
      #-------------------------------------
      #pseudo: action table
      ACTIONS=(power mode speed vane setpoint return alarm)
      UIDS=(1 2 4 5 9 10 14)
      
      #pseudo: select uid from action
      FOUND=0
      for i in "${!ACTIONS[@]}"
      do
          if [ "${ACTIONS[${i}]}" == "${ACTION}" ]; then
              FOUND=1
              WORK_UID=${UIDS[${i}]}
          fi
      done
      if [ ${FOUND} -eq 0 ]; then
        echo "available actions: ${ACTIONS[@]}"
        exit 1
      fi
      
      #-------------------------------------
      #pseudo: work the $ACTION / $VALUE with $uid available
      if [[ "${DIRECTION}" == "set" ]]; then
      
      if [[ "${ACTION}" == "power" ]]; then OPTIONS=(on off); VALUES=(1 0); fi
      if [[ "${ACTION}" == "mode" ]]; then OPTIONS=(auto heat dry fan cool); VALUES=(0 1 2 3 4); fi
      if [[ "${ACTION}" == "speed" ]]; then OPTIONS=(1 2 3 4); VALUES=(1 2 3 4); fi
      if [[ "${ACTION}" == "vane" ]]; then OPTIONS=(1 2 3 4 swing); VALUES=(1 2 3 4 10); fi
      
      if [[ "${ACTION}" == "setpoint" ]]; then
        if [ "${DO}" == "" ]; then
          echo "value: 180 till 300 (18.0 till 30.0 degree C)"
          exit 1
        else
          VALUE=$DO;
        fi
      fi
      
      fi
      
      #pseudo: now select the proper value based on the action
      if [ "${OPTIONS}" != "" ]; then
        FOUND=0
        for i in "${!OPTIONS[@]}"
        do
            if [ "${OPTIONS[${i}]}" == "${DO}" ]; then
                FOUND=1
                VALUE=${VALUES[${i}]}
            fi
        done
        if [ ${FOUND} -eq 0 ]; then
          echo "available [${ACTION}] options: ${OPTIONS[@]}"
          exit 1
        fi
      fi
      
      #-------------------------------------
      COOKIE=$(mktemp)
      
      #pseudo: login
      LOGIN_RESPONSE=$(mktemp)
      LOGIN_ERROR=$(mktemp)
      wget --save-cookies=${COOKIE} \
           --keep-session-cookies \
           --post-data="{\"command\":\"login\",\"data\":{\"username\":\"${AIRCO_USER}\",\"password\":\"${AIRCO_PASSWORD}\"}}" \
           --output-document=${LOGIN_RESPONSE} \
           --header="Content-Type: application/json" \
           --header="Accept: application/json" \
           --tries=3 \
           --timeout=30 \
           http://${AIRCO_IP}/api.cgi 2> ${LOGIN_ERROR}
      LOGIN_RC=$?
      if [ "${LOGIN_RC}" -ne 0 ]; then
        cat ${LOGIN_ERROR}|stderr
        EXIT=1
      fi
      if [ "$(grep -c '"success":true' ${LOGIN_RESPONSE})" -ne 1 ]; then
        echo "something went wrong while logging in"|stderr
        echo "response: $(cat ${LOGIN_RESPONSE})"|stderr
        EXIT=1
      fi
      
      #pseudo: get sessionID from login
      SESSION_ID=$(awk -F '"sessionID":"' '{print $2}' ${LOGIN_RESPONSE}|awk -F '"' '{print $1}')
      
      #---------------------------------
      if [ "${SESSION_ID}" != "" ]; then
        ACTION_RESPONSE=$(mktemp)
        ACTION_ERROR=$(mktemp)
      
        if [ "${DIRECTION}" == "set" ]; then
          POST_DATA="{\"command\":\"setdatapointvalue\",\"data\":{\"sessionID\":\"${SESSION_ID}\",\"uid\":${WORK_UID},\"value\":${VALUE}}}"
        else
          POST_DATA="{\"command\":\"getdatapointvalue\",\"data\":{\"sessionID\":\"${SESSION_ID}\",\"uid\":${WORK_UID}}}"
        fi
      
        wget --load-cookies=${COOKIE} \
             --post-data="${POST_DATA}" \
             --output-document=${ACTION_RESPONSE} \
             --header="Content-Type: application/json" \
             --header="Accept: application/json" \
             --tries=3 \
             --timeout=30 \
             http://${AIRCO_IP}/api.cgi 2> ${ACTION_ERROR}
        ACTION_RC=$?
        if [ "${ACTION_RC}" -ne 0 ]; then
          cat ${ACTION_ERROR}|stderr
          EXIT=1
        fi
        if [ "$(grep -c '"success":true' ${ACTION_RESPONSE})" -eq 1 ]; then
          if [ "${DIRECTION}" == "set" ]; then
            echo "saved";
          else
            RESPONSE_VALUE=$(awk -F ',"value":' '{print $2}' ${ACTION_RESPONSE}|awk -F ',"status"' '{print $1}')
            #sed 's/\"//g'
            echo "${RESPONSE_VALUE}"
          fi
        else
          echo "${DIRECTION} failed"|stderr
          echo "response: $(cat ${ACTION_RESPONSE})"|stderr
          EXIT=1
        fi
      #end if SESSION_ID
      fi
      
      #---------------------------------------------
      #cleanup
      if [ -f "${COOKIE}" ]; then rm ${COOKIE}; fi
      if [ -f "${LOGIN_RESPONSE}" ]; then rm ${LOGIN_RESPONSE}; fi
      if [ -f "${LOGIN_ERROR}" ]; then rm ${LOGIN_ERROR}; fi
      if [ -f "${ACTION_RESPONSE}" ]; then rm ${ACTION_RESPONSE}; fi
      if [ -f "${ACTION_ERROR}" ]; then rm ${ACTION_ERROR}; fi
      
      exit ${EXIT}
      
      1 Reply Last reply Reply Quote 0
      • painkillerde
        painkillerde last edited by

        Hallo bin noch etwas am forschen.

        Hab hier mal die json Daten sowie die Zuordnungen - nun muss ich noch die möglichen Values durchspielen und mitloggen.

        {"success":true,"data":{"dpval":
        [{"uid":1,"value":0,"status":1},
        {"uid":2,"value":0,"status":1},
        {"uid":4,"value":1,"status":1},
        {"uid":5,"value":1,"status":1},
        {"uid":9,"value":32768,"status":1},
        {"uid":10,"value":32768,"status":1},
        {"uid":12,"value":0,"status":0},
        {"uid":13,"value":0,"status":0},
        {"uid":14,"value":1,"status":0},
        {"uid":15,"value":-1,"status":0},
        {"uid":35,"value":180,"status":0},
        {"uid":36,"value":300,"status":0},
        {"uid":37,"value":32768,"status":1},
        {"uid":181,"value":0,"status":1},
        {"uid":182,"value":0,"status":1},
        {"uid":183,"value":0,"status":1},
        {"uid":184,"value":0,"status":1}]}}
        
        Zuordnung uid zu Wert
        {"success":true,"data":{"dpval":
        On/Off							[{"uid":1,"value":0,"status":1},
        User Mode						{"uid":2,"value":0,"status":1},
        FanSPeed						{"uid":4,"value":1,"status":1},
        Vane up/down Position			{"uid":5,"value":1,"status":1},
        User Setpoint Temp				{"uid":9,"value":32768,"status":1},
        Aktuelle Temp					{"uid":10,"value":32768,"status":1},
        Fernbedienung an aus			{"uid":12,"value":0,"status":0},
        Laufzeit(onTime)				{"uid":13,"value":0,"status":0},
        Alarm Status					{"uid":14,"value":1,"status":0},
        Error Code						{"uid":15,"value":-1,"status":0},
        Min Temp Setpoint				{"uid":35,"value":180,"status":0},
        MAx Temp setpint				{"uid":36,"value":300,"status":0},
        AußenTemp						{"uid":37,"value":32768,"status":1},
        Maintenance time				{"uid":181,"value":0,"status":1},
        Maintenance config				{"uid":182,"value":0,"status":1},
        Maintenance Filter time			{"uid":183,"value":0,"status":1},
        Maintenance Filter config		{"uid":184,"value":0,"status":1}]}}
        

        Vielleicht kann ja jemand helfen - über Blockly läuft auslesen und Objekte schreiben schon mal.

        Danke!

        1 Reply Last reply Reply Quote 0
        • Dutchman
          Dutchman Developer Most Active Administrators last edited by

          Wofür genau könntest du Hilfe gebrauchen?

          Sent from my iPhone using Tapatalk

          1 Reply Last reply Reply Quote 0
          • painkillerde
            painkillerde last edited by

            Am besten wäre natürlich jemand der nen Adapter basteln kann.

            Oder das Script soweit erweitern das die Daten direkt in Objekte geschrieben werden.

            Der weg über Blockly ist hier meinen Kenntnissen entsprechend - aber leider nicht schön.

            Vielen Dank!

            1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 last edited by

              Adapter-Requests am besten hier einbringen: https://github.com/ioBroker/AdapterRequests/issues … gern mit Link hierher und allen Infosdie Du finden kannst.

              1 Reply Last reply Reply Quote 0
              • painkillerde
                painkillerde last edited by

                Erledigt.

                Ich schau das ich nächste Woche mal die Werte für die Values per Web-Interface mitschneide und dokumentiere.

                F 1 Reply Last reply Reply Quote 1
                • F
                  fliix-de @painkillerde last edited by

                  @painkillerde ich würde deinem Ansatz gerne folgen. Habe das gleiche Setup seit 2 Wochen im Haus und ärgere mich damit den AirConWithMe Adapter mitgekauft zu haben ohne API. Ich würde eigentlich ungern einen ioBroker kompatiblen IR-Sender kaufen müssen. Werde mir das Script auch mal anschauen. Danke für diese Topic!

                  1 Reply Last reply Reply Quote 0
                  • J
                    jerzimeik last edited by

                    Hallo zusammen,

                    ich bin hier über die Suche rein gekommen, da meine Eltern jetzt auch ihre Mitsubishi-Klimaanlage über das WiFi-Modul steuern wollen.

                    Wie genau muss ich denn das Script wo einbinden? Und kann mir jemand das Blockly-Script zum nachbauen mal zeigen?

                    Danke schon mal!

                    1 Reply Last reply Reply Quote 0
                    • B
                      Buchi last edited by

                      Hallo,

                      bin noch neu in ioBroker aber habe auch 3 Innengeräte mit dem Wifi Modul. Einen Adapter traue ich mir noch nicht zu aber evtl. kann ich das ein oder andere in Blockly abbilden. Mal schauen.

                      Aktuell scheitert es bei mir gerade daran, dass ich mich nicht in dem Webinterface des WLAN Modules einloggen kann. Da gab es für den Admin ein Standardpasswort aber das finde ich nicht mehr. In der spärlichen Doku habe ich auch nichts mehr gefunden. Hat das noch jemand?

                      A 1 Reply Last reply Reply Quote 0
                      • L
                        lumpi127 last edited by

                        Hallo,
                        habe auch den AirConwithme Adapter und die Steuerung der AC funktioniert gut über die AirConwithme App. Gibt es mittlerweile eine Möglichkeit den Controller in den IOBroker einzubinden damit man über Alexa steuern kann? Mit dem oben aufgeführten Script kann ich nichts anfangen, fehlt mit der IT-Skill, bzw. bräuchte etwas Hilfe...

                        1 Reply Last reply Reply Quote 0
                        • M
                          Muchul last edited by

                          Hallöchen,
                          Ich habe mir auch gerade eine Mitsubishi Anlage gegönnt und werde diese demnächst ins WLAN bringen.
                          Daher hätte ich ebenfalls Interesse an einem Adapter

                          1 Reply Last reply Reply Quote 0
                          • S
                            Snake1024 last edited by

                            Hey, ja ich habe mir auch eine zugelegt. Mir ist aufgefallen, dass das Webinterface direkt von Intesis ist. Hierfür gibt es ja bereits einen Adapter. Leider kann ich die Anlage nicht anmelden, da die anscheinend die Modelle voneinander getrennt haben.
                            Wäre super, wenn es hierfür auch einen Adapter geben würde +1!

                            1 Reply Last reply Reply Quote 0
                            • smartboart
                              smartboart last edited by smartboart

                              Hallo, ich habe bereits meine pv anlage mittels esp8266 und mqtt eingebunden... Eine Mitsubishi Klima habe ich mir auch zugelegt... Ebenfalls auf der Suche nach einer Anbindung... Cloud nein danke..Mag ich halt nicht. Bin auf diesen Ansatz gestoßen. Also auch mqtt..

                              https://github.com/dgoodlad/esp8266-mitsubishi-aircon

                              1 Reply Last reply Reply Quote 1
                              • smartboart
                                smartboart last edited by

                                https://chrdavis.github.io/hacking-a-mitsubishi-heat-pump-Part-1/

                                also das ist der einfachste Weg... einfacher gehts nicht...

                                Alles was man braucht ist ein wemo d1 mini, und ein JST PH Buchsenstecker mit Kabel.

                                1 Reply Last reply Reply Quote 0
                                • smartboart
                                  smartboart last edited by

                                  https://github.com/gysmo38/mitsubishi2MQTT

                                  noch besser...
                                  Unbenannt3.JPG Unbenannt2.JPG Unbenannt1.JPG

                                  ThatsIT 1 Reply Last reply Reply Quote 1
                                  • ThatsIT
                                    ThatsIT @smartboart last edited by

                                    @smartboart Würde das dann mit dem Wi-Fi-Modul von AirConWithMe.com / IntesisHome.com funktionieren?

                                    Rababersaft smartboart 2 Replies Last reply Reply Quote 0
                                    • Rababersaft
                                      Rababersaft @ThatsIT last edited by

                                      @ThatsIT

                                      Wenn du, mit dem Beitrag 1 weiter oben über mqtt, die Anlage verbinden möchtest dann benötigst du von dem WiFi Modul nur den Stecker der auf die Platine des Innengerätes geht...

                                      Ich habe die selbe Anlage wie du, über das WiFi Modul am laufen. Frage über ein Skript die Daten ab (da ist auch ein Beitrag weiter oben glaub ich) und aktualisiere dann die Datenpunkte im iobroker.
                                      In dem Skript setzte ich auch Werte wie:

                                      -Keiner zu Hause
                                      -Tag Nacht Bewertung nach Uhrzeit (Nachtabsenkung)
                                      -Sommer Winter Bewertung (Heizen Kühlen) nach Mittelwert der nächsten 3 Tage
                                      -Aus bei Fensteröffnung länger als x Minuten

                                      Wenn du magst, kann ich das Skript morgen Abend mal hier reinstellen. Bin aber kein Developer. Soll heißen dass man es bestimmt noch eleganter hin bekommt.
                                      😉

                                      ThatsIT leika241265 2 Replies Last reply Reply Quote 0
                                      • ThatsIT
                                        ThatsIT @Rababersaft last edited by

                                        @Rababersaft Vielen Dank für dein Angebot. Dein Skript wäre sicherlich interessant. Da ich bisher noch keine Geräte über MQTT eingebunden habe, bräuchte ich erstmal Unterstützung um überhaupt an die Datenpunkte meiner Mitsubishi Klimaanlage heranzukommen.
                                        Von den beiden MQTT Adaptern habe ich "MQTT Broker/Client" installiert.
                                        Welche Einstellungen muß ich dort auf den Reitern "Verbindung" und "MQTT Einstellungen" vornehmen, damit eine Verbindung mit meinem AirConWithMe Wi-Fi-Modul aufgebaut wird? Oder passiert das im Skript?

                                        1 Reply Last reply Reply Quote 0
                                        • smartboart
                                          smartboart @ThatsIT last edited by smartboart

                                          @ThatsIT sagte in Anfrage AirConWithMe (IntesisHome) Klimasteuerung Adapter:

                                          @smartboart Würde das dann mit dem Wi-Fi-Modul von AirConWithMe.com / IntesisHome.com funktionieren?

                                          nein

                                          matrialeinsatz 5 € im Vegleich zum wlan melcloud Adapter 120€

                                          Weiterer Vorteil keine Cloudanbindung. Betrieb im sicheren Wlan.

                                          1. Wemo D1 mini und jstp stecker kaufen
                                          2. Wemo flashen und konfigurieren infos dazu siehe mein link oben...
                                          3. RX TX 5V und Ground anschließen wie im link oben erklärt.
                                          4. MQTT Adapter installieren
                                          5. Vis erstellen und skript Steuerung wenn gewünscht

                                          ich Überwache alle Fenster mit Ausblendung und Zeitverzögerung sowie Steuerung heizen kühlen bei Überschußeinspesiung. Ebenfalls lese ich den Status der Anlage zurück ..

                                          Unbenannt.JPG

                                          fertig.

                                          ThatsIT 2 Replies Last reply Reply Quote 0
                                          • ThatsIT
                                            ThatsIT @smartboart last edited by

                                            @smartboart Danke für die Rückmeldung. Da ich aber nun mal schon die Investition getätigt habe, suche ich erstmal weiter nach einer Lösung für mein AirConWithMe Modul...

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            584
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            31
                                            102
                                            17268
                                            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