Integration clim airton

Bonjour a tous

Avec les prix des frigoristes qui ont grimpé en fleche depuis la derniere canicule, et qui ne baissent pas pour l’hiver a cause des hausses annoncées des prix de l’electricité, j’ai decidé de m’equiper en PAC (clim reversible) Airton a monter soi meme… et je me pose la question de l’integration avec Home Assistant.

D’apres ce que j’ai pu voir, ces clims fontionnent avec l’application « Smart Life - Smart Living » qui a tout l’air d’un rebranding de l’ancienne app Tuya Smartlife (com.tuya.smartlife).

Est ce que quelqu’un peut confirmer que ces clims peuvent etre integrées via l’integation Tuya (HACS) dans Home Assistant ?

Edit:
Les clim Airton sont bien compatibles Tuya, et peuvent dont s’integrer a Home Assistant via l’integration officielle Tuya, ou via l’integration HACS Localtuya

Pour le moment j’experimente des trucs pour l’integrer correctement via HACS Localtuya, j’ai le bouton on/off et la lecture des temperatures qui ont l’air de fonctionner correctement, mais pas le reste.

image

Salut
Avant de penser à l’intégrer normalement tu n’as pas le droit d’acheter ou même un magasin de te vendre un climatisation contenant du fluide sans une attestation de capacité ou alors l’acheter avec la mise en service d’une personne qualifiée.

Je me suis déjà renseigné, c’est possible de l’installer soi-même car il n’y a pas de manipulation de gaz frigorifique.

Salut
Effectivement je viens de regarder ce système readyclim airton a gagné ça bataille judiciaire en 2020 permettant l’installation sans avoir besoin de l’attestation manipulation de fluide.

Regarde ce topic cela à l’air possible https://forum.hacf.fr/t/ajouter-des-materiels-tuya-dans-home-assistant/3652?u=oli_34

Par contre tu ne pourra pas te passer du cloud tuya

Clim reçue en debut de semaine et installée hier, effectivement j’ai pu l’integrer a l’app Tuya Smart.

Je l’ai branchée derrier un module Shelly 1PM pour surveiller la conso. J’ai deja la conso de mes radiateurs via un Shelly EM installé dans le tableau electrique et je vois deja une conso d’un peu plus de 400w soit 70% de moins comparé a mes 2 radiateurs 1500w au rez de chaussée qui tournaient a plein regime pour chauffer le meme volume l’année derniere.

Je vais certainement passer du temps ce week end pour essayer de l’integrer a Home Assistant histoire de profiter de ce que j’ai deja mis en place pour mes radiateurs (detection de presence via routeur wifi, emploie du temps ecole/travail, heures de reveil/coucher, vacances scolaires…)

Bonjour

J’ai déjà installé une Clim Airton et envisage d’en installer 2 autres

As tu avancé sur le sujet?
Peux-tu en dire plus sur la façon dont tu as réussi à te connecter à tes Clim Airton avec home assistant ?

Merci de ton retour

Bonjour,

Souhaitant faire l’acquisition d’une clim Airton, avez vous réussi à l’intégrer correctement via localtuya (github: rospogrigio/localtuya) en faisant la configuration via le cloud ? Est-ce que le contrôle de la température et du mode fonctionnent svp ?

Merci de votre retour

Hello !

J’ai posé il y a quelques jours une pompe à chaleur Airton / Fujicool / Yuzu (ce sont des modèles identiques vendus sous plusieurs marques). C’est équipé Tuya, et ça fonctionne pas mal du tout avec l’intégration Tuya :

Maintenant j’essaie de la configurer avec LocalTuya, mais je galère avec les ID pour faire reconnaître les commandes …

Est-ce que quelqu’un aurait une idée de comment je peux faire le lien entre ID et fonctions ? Merci !

Bonsoir
J’ai installé ma clim airton et elle fonctionne très bien avec l’application tuya smart
Mais je rencontre des problèmes sous home assistant avec l’intégration officielle tuya:
Je peux changer la température de consigne sur HA qui s’applique bien sur la clim mais elle repasse systématiquement à 20°c sur HA quelque soit la température de consigne qu’elle soit changé soit par HA ou l’app TUYA.
Le Fan mode ne fonctionne pas sur HA
Le statut reste toujours sur chauffe sur HA alors que la clim est éteinte ou en mode froid…

Avez vous ce genre de problèmes?

Bonjour
J’ai une clim Airton monopslit.
Pouvez vous me dire si on peut utiliser un module wifi autre que la marque AIRTON ACW02?
Les modules wifi CS532AF ou M5Q10-C sont ils compatibles avec airon (broche 4 fils).
Merci pour vos lumières

salut,

as tu avancé ?

sous jeedom, j’ai ces données et d’autres, ca peut aider ?

Ce que j’ai fait c’est que j’ai trouvé la liste des DP de mes PAC Fujitsu / Yuzu grâce à ce sujet : HOWTO get a DPs dump · rospogrigio/localtuya Wiki · GitHub

Ensuite, je me suis amusé à modifier chacun des paramètres de mes PAC grâce à l’appli Tuya, et vérifier ensuite le changement dans les DP grâce à tuyadebug. J’ai obtenu quelque chose comme cela :

## Position volets :

- up-down flow
113 : 1
126 : 0

- upflow 
113 : 2
126 : 0

- down flow
113 : 3
126 : 0

- top fix
113 : 0
126 : 1

- upper fix
113 : 0
126 : 2

- middle fix
113 : 0
126 : 3

- above Down fix
113 : 0
126 : 4

- bottom fix
113 : 0
126 : 5

Ou bien pour l’écran et le bip sonore :

BIP ON et ECRAN eteint : DPS [123] VALUE [0010]
BIP ON et ECRAN ON : DPS [123] VALUE [0018]
BIP OFF et ECRAN off :     DPS [123] VALUE [0000]
BIP OFF et ECRAN ON : DPS [123] VALUE [0008]

Et je me suis fait des scripts / automatisations pour modifier les paramètres en faisant appel au service localtuya.set_dp :

  • PAC bureau, vitesse ventilateur:
service: localtuya.set_dp
data:
  device_id: "id_de_ma_pac"
  dp: 5
  value: "mute"
  • PAC bureau, silence (bip éteint), LCD allumé :
service: localtuya.set_dp
data:
  device_id: "id_de_ma_pac"
  dp: 123
  value: "0008"

Hello, j’ai réussi à faire une intégration avec LocalTuya. Je vous donne le résultat de la config résultante si ça peut vous aider. C’est pas parfait mais ça fait le job.

core.config_entries:

      {
        "entry_id": "xxxxx",
        "version": 2,
        "domain": "localtuya",
        "title": "localtuya",
        "data": {
          "region": "eu",
          "client_id": "",
          "client_secret": "",
          "user_id": "",
          "username": "localtuya",
          "no_cloud": true,
          "devices": {
...
            "xxxxxxx": {
              "friendly_name": "Clim chambre",
              "local_key": "xxxxx",
              "host": "192.168.1.xx",
              "device_id": "xxxxxx",
              "protocol_version": "3.3",
              "dps_strings": [
                "1 (value: True)",
                "2 (value: 210)",
                "3 (value: 195)",
                "4 (value: fan)",
                "5 (value: auto)",
                "8 (value: False)",
                "9 (value: False)",
                "12 (value: False)",
                "13 (value: False)",
                "15 (value: un_down)",
                "20 (value: 0)",
                "22 (value: 0)",
                "101 (value: 0)",
                "102 (value: 501)",
                "105 (value: c)",
                "106 (value: off)",
                "107 (value: 15)",
                "108 (value: False)",
                "109 (value: False)",
                "110 (value: True)",
                "111 (value: False)",
                "112 (value: cold)",
                "113 (value: 0)",
                "114 (value: fan)"
              ],
              "entities": [
                {
                  "id": 1,
                  "friendly_name": "switch",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "platform": "switch"
                },
                {
                  "id": 2,
                  "friendly_name": "temp_set",
                  "min_value": 0.0,
                  "max_value": 300.0,
                  "step_size": 5,
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "platform": "number"
                },
                {
                  "id": 3,
                  "friendly_name": "temp_current",
                  "unit_of_measurement": "°C",
                  "device_class": "temperature",
                  "scaling": 0.1,
                  "platform": "sensor"
                },
                {
                  "id": 4,
                  "friendly_name": "mode",
                  "select_options": "auto;cold;wet;heat;fan",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "select_options_friendly": "Auto;Froid;Dehumidification;Chaud;Ventilation",
                  "platform": "select"
                },
                {
                  "id": 5,
                  "friendly_name": "fan speed",
                  "select_options": "auto;low;low_mid;mid;mid_high;high;mute;turbo",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "select_options_friendly": "Auto;Bas;Moyen Bas;Moyen;Moyen haut;Haut;Silence;Turbo",
                  "platform": "select"
                },
                {
                  "id": 8,
                  "friendly_name": "Eco",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "platform": "switch"
                },
                {
                  "id": 9,
                  "friendly_name": "Deshumidificateur",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "platform": "switch"
                },
                {
                  "id": 12,
                  "friendly_name": "Chauffage",
                  "state_on": "True",
                  "state_off": "False",
                  "platform": "binary_sensor"
                },
                {
                  "id": 13,
                  "friendly_name": "Light",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "platform": "switch"
                },
                {
                  "id": 15,
                  "friendly_name": "Swing",
                  "select_options": "off;un_down",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "select_options_friendly": "Désactivé;Haut/bas",
                  "platform": "select"
                },
                {
                  "id": 109,
                  "friendly_name": "Sleep",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "platform": "switch"
                },
                {
                  "id": 110,
                  "friendly_name": "Health",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "platform": "switch"
                }
              ],
              "product_key": "xxxxxxxxx"
            },

A noter 1 bug pénible qui est référencé ici :

avec une solution ici (toujours en Pull request depuis fevrier) mais du coup ça peut vous intéresser aussi:

Le fix + la conf au-dessus et j’arrive à intégrer la clim Airton mais quelle galère, on est d’accord.

Je cherche un remplaçant en Zigbee au module Wifi donné par Airton à prix d’or:
Capture d’écran 2023-06-25 à 18.22.09

Personne n’aurait trouvé une solution des fois ?

Super intégration pour le localtuya,
j’ai vu qu’il te manquais quelques ID :

  • 102 sur le temps d’utilisation cela peut être utile.
  • 105 pour switch les unités de °C en °F

Hello,

Je n’ai pas tous ces DPS , en particulier le 123 qui m’intéresse pour virer les BIPs, une idée ?

**** deviceInfo returned OK ****

TuyaDebug (Tuya DPs dump) [1.0.0]

Device xxx at 192.168.1.xxx key xxx protocol 3.3 dev_type type_0a:
DPS [1] VALUE [False]
DPS [2] VALUE [230]
DPS [3] VALUE [260]
DPS [4] VALUE [cold]
DPS [8] VALUE [False]
DPS [9] VALUE [False]
DPS [12] VALUE [False]
DPS [13] VALUE [True]
DPS [15] VALUE [off]
DPS [20] VALUE [0]
DPS [22] VALUE [0]
DPS [101] VALUE [0]
DPS [102] VALUE [8]
DPS [105] VALUE [c]
DPS [106] VALUE [off]
DPS [107] VALUE [off]
DPS [108] VALUE [False]
DPS [109] VALUE [False]
DPS [110] VALUE [True]
DPS [111] VALUE [False]
DPS [112] VALUE [cold]
DPS [113] VALUE [0]
DPS [114] VALUE [cold]
DPS [115] VALUE [False]

merci d’avance

Bonjour,

Je complète ce post car j’ai une solution full local qui fonctionne bien. C’est assez bidouille mais ca le fait bien chez moi.
Ca fait plus d’un an que je l’ai et elle n’a jamais été totalement et proprement intégrée à Home Assistant. Le climate TuYa ne fonctionne pas, le LocalTuya n’a pas le mode « Clim » (Tuya Thermostat for Airton HVAC doesn't switch to "heat" mode · Issue #78815 · home-assistant/core · GitHub), la pull request que j’ai fait sur le composant Tuya n’a jamais été prise en compte (Add climate Tuya Power command instead of switch - Airton climate by jmcollin78 · Pull Request #87856 · home-assistant/core · GitHub).

Bref, voici enfin une solution qui intègre totalement la clim Airton à Home Assistant. :partying_face:

Principe

Le principe:

  • j’intègre la clim Airton avec LocalTuya (on sera donc full local et indépendant du cloud Tuya - le pire de ce que j’ai vu),
  • ca créé un equipement dans lequel :
    • je créé une entité climate avec les infos de bases (start/stop/hvac mode, temp_set, temp_current),
    • l’entité climate de LocalTuya est très basique (y a des PR en cours mais elles mettent du temps à arriver) donc pour avoir le mode Clim, on ajoute qqes lignes au code,
  • on ajoute les entités qui manquent dans notre equipement.

Au final ca donne ça :

Vous avez toutes les commandes de la clim dans un seul équipement ce qui est appréciable dont une entité climate qui fonctionne.

Ensuite, je mets un Versatile Thermostat en mode « over climate » sur le climate LocalTuya et j’ai un thermostat totalement utilisable avec gestion des ouvertures, de la puissance, des absences, …

(Versatile Thermostat est décrit ici : Nouveau thermostat type proportionnel avec gestion des presets / portes et fenêtres / détection de mouvement / gestion de présence et surconsommation)


Etapes:

Etape 1. patch du code de LocalTuya :

Editer le fichier config/custom_component/localtuya/climate.py et ajoutez y les lignes suivantes à la ligne 61 :

    "heat/cool": {
        HVAC_MODE_HEAT: "heat",
        HVAC_MODE_COOL: "cold",
    },

Vous devez avoir ça autour de la ligne 60:
Capture d’écran 2023-09-10 à 09.48.03

Ajoutez aussi en entête de même fichier la constante HVAC_MODE_COOL. La ligne doit ressembler à ça e ligne 13:

from homeassistant.components.climate.const import (
    CURRENT_HVAC_HEAT,
    CURRENT_HVAC_IDLE,
    HVAC_MODE_AUTO,
    HVAC_MODE_HEAT,
    HVAC_MODE_COOL,
    HVAC_MODE_OFF,
    ....

Notes:

  • une PR est en préparation dans le repo LocalTuya. Ca viendra remplacer cette modif.
  • vous devriez pouvoir ajouter d’autes modes ici au besoin (pas testé). Ces autres modes ne fonctionneront pas avec le Versatile Thermostat par contre, mais ca peut être intéressant.

Redémarrez pour que cela soit pris en compte.

Etape 2. création du device et de l’entité climate dans LocalTuya

Capture d’écran 2023-09-10 à 09.42.37

donnez les infos de votre device: ip, device id, localkey (à chercher sur le Cloud tuya)

Puis entrez les infos suivantes:



Capture d’écran 2023-09-10 à 09.45.53

Vous remarquerez que dans « HVAC Mode Set », j’ai choisi « heat/cool » qui correspond au bout de code qu’on a ajouté en étape 1.

Validez cet écran et décochez « Add more entities in ‹ edit device › mode » pour sortir de la configuration. Le reste on va le faire directement dans la configuration.

Etape 3. check et création du Versatile Thermostat

A ce stade vous devez avoir une entité climate parfaitement fonctionnelle qui permet le mode chauffage/refroidissement/stop.

Vous pouvez créer ou modifier un Versatile Thermostat sur le climate créé juste au dessus et tout devrait fonctionner normalement.

Etape 4. Ajoutez les entités manquantes

Cela se fait en modifiant directement le fichier config/.storage/core.config_entries
Chercher votre clim (par son device id par exemple).

Vous devez adapter ce que vous trouvez pour avoir quelque-chose qui ressemble à ça:


         "bf641cf5942058d6c4fhdi": {
              "friendly_name": "Clim chambre",
              "host": "192.168.xx.xx",
              "local_key": "xxxxxxxx",
              "protocol_version": "3.3",
              "enable_debug": false,
              "entities": [
                {
                  "friendly_name": "Clim chambre localtuya",
                  "target_temperature_dp": 2,
                  "current_temperature_dp": 3,
                  "temperature_step": 0.1,
                  "precision": 0.1,
                  "hvac_mode_dp": 4,
                  "hvac_mode_set": "heat/cool",
                  "temperature_unit": "celsius",
                  "target_precision": 0.1,
                  "id": 1,
                  "platform": "climate"
                },
                {
                  "friendly_name": "fan speed",
                  "select_options": "auto;low;low_mid;mid;mid_high;high;mute;turbo",
                  "select_options_friendly": "Auto;Bas;Moyen Bas;Moyen;Moyen haut;Haut;Silence;Turbo",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "id": 5,
                  "platform": "select"
                },
                {
                  "friendly_name": "Eco",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "id": 8,
                  "platform": "switch"
                },
                {
                  "friendly_name": "Deshumidificateur",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "id": 9,
                  "platform": "switch"
                },
                {
                  "friendly_name": "Chauffage",
                  "state_on": "True",
                  "state_off": "False",
                  "id": 12,
                  "platform": "binary_sensor"
                },
                {
                  "friendly_name": "Light",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "id": 13,
                  "platform": "switch"
                },
                {
                  "friendly_name": "Swing",
                  "select_options": "off;un_down",
                  "select_options_friendly": "Désactivé;Haut/bas",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "id": 15,
                  "platform": "select"
                },
                {
                  "friendly_name": "Sleep",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "id": 109,
                  "platform": "switch"
                },
                {
                  "friendly_name": "Health",
                  "restore_on_reconnect": false,
                  "is_passive_entity": false,
                  "id": 110,
                  "platform": "switch"
                }
              ],
              "add_entities": false,
              "device_id": "xxxxxxxxx",
              "dps_strings": [
                "1 (value: True)",
                "2 (value: 210)",
                "3 (value: 195)",
                "4 (value: fan)",
                "5 (value: auto)",
                "8 (value: False)",
                "9 (value: False)",
                "12 (value: False)",
                "13 (value: False)",
                "15 (value: un_down)",
                "20 (value: 0)",
                "22 (value: 0)",
                "101 (value: 0)",
                "102 (value: 501)",
                "105 (value: c)",
                "106 (value: off)",
                "107 (value: 15)",
                "108 (value: False)",
                "109 (value: False)",
                "110 (value: True)",
                "111 (value: False)",
                "112 (value: cold)",
                "113 (value: 0)",
                "114 (value: fan)"
              ],
              "product_key": "xxxxxxxxx"
            },

Vous devez ajouter les entities manquantes et les dps_strings si il vous en manque.

Recharger la conf LocalTuya (Outils de developpement / Yaml / LOCALTUYA INTEGRATION)

Vous devriez avoir le device de votre clima avec toutes les entités comme présenté au début de ce post.
Et mettez des icones à vos entités !

1 « J'aime »

Bonjour Jean-Marc,

Merci pour ce tuto. Je viens de me lancer dans le monde de HomeAssistant et ce tuto m’a permis d’intégrer mes clims Airton.

Quelques détails que j’ai relevé :

Dans le fichier config/custom_component/localtuya/climate.py il faut ajouter la constante HVAC_MODE_COOL dans la partie homeassistant.components.climate. Sinon l’intégration localtuya ne démarre plus.

L’entité Swing ne fonctionne pas chez moi. Elle me fait planter l’intégration.

Enfin j’aurais une question :

Je me suis lancé dans l’intégration de mes clims dans HA avec comme objectif de virer ce fichu bip qui réveillerait un mort.

J’ai lu dans ce topic une histoire avec le DPS 123. Par contre je ne sais pas comment le tester.

Auriez vous quelques conseils à ce sujet?

Merci d’avance,

Sébastien

Le mieux c’est certainement de le configurer (cf. etape 4 en ajoutant un bloc pour le DP 123) et vérifier si ça fait quelque-chose. Si des fois ça marchait, partage le ici et je mettrais à jour mon post avec.

Autre possibilité, aller dans le web du Cloud TuYa / API et tester en appelant l’API mais là faut chercher, je maitrise mal (et c’est pas simple).

Dans le fichier config/custom_component/localtuya/climate.py il faut ajouter la constante HVAC_MODE_COOL dans la partie homeassistant.components.climate

Oui tu as raison, j’ai fixé le post

Ok je vais me pencher sur le sujet. Ca fait beaucoup de nouvelles choses à appréhender quand on débute.

Au fait j’ai trouvé mes modules Wifi pour 20 € pièce :slight_smile:

1 « J'aime »