Premiers tests #plugin-lgthinq2

Hello!

j’ai lancé la mise à jour, effacé la PAC et resynchronisé. Les « Get » ne sont pas regroupés et #slider# est toujours en lieu et place de #select#.
Concernant l’eau chaude sanitaire, sur l’app il y a quand même un bouton on/off pour le hotwater. Il correspond à quelle fonction alors?
Dans la première version, les fonctions « Set » regroupaient toutes les fonctions mais on ne pouvait pas choir de valeur. Il me semble qu’il existait alors un élément miscfunc.hotwater.
As-tu moyen de voir ce qui se passe quand tu appuies sur on/off de l’eau chaude sanitaire?

Ah, mince, le commit n’était pas parti.
C’est poussé.

Je te dis ça.

En info uniquement.

ON/OFF de chauffage/refroidissement :

{
    "command": "Operation",
    "ctrlKey": "basicCtrl",
    "dataGetList": null,
    "dataKey": "airState.operation",
    "dataSetList": null,
    "dataValue": 0
}

ON/OFF eau chaude :

{
    "command": "Set",
    "ctrlKey": "settingInfo",
    "dataGetList": null,
    "dataKey": "airState.miscFuncState.hotWater",
    "dataSetList": null,
    "dataValue": 1
}

Oui, en effet, c’est pas logique. La commande n’est pas listée en action dans le fichier de configuration.
airState.miscFuncState.hotWater est bien une commande envoyée par l’app.

Et on les trouve où ces clés ?

Dans les choix des commandes select.


Capture d’écran 2024-03-09 à 19.17.16

dans le fichier 04741c39-5edc-1a1a-8ad1-44cb8b94b390.json

il y a

{
"airState.miscFuncState.hotWater":
{"_comment":"##\uc628\uc218\uc6b4\uc804","data_type":"enum","default":"0","value_mapping":["@OFF","@ON"]},"airState.miscFuncState.hotWaterMode":{"_comment":"##\uc628\uc218\ub2e8\ub3c5\ubaa8\ub4dc","data_type":"enum","default":"0","value_mapping":["@OFF","@ON"]},"airState.miscFuncState.powerHotWater":{"_comment":"##\ud30c\uc6cc\uae09\ud0d5","data_type":"enum","default":"0","value_mapping":["@OFF","@ON"]}
}

c’est dans ce fichier qu’apparaissent les commandes de la PAC et qu’il faut créer ?

{
    "command": "Set",
    "ctrlKey": "settingInfo",
    "dataGetList": null,
    "dataKey": "airState.miscFuncState.hotWater",
    "dataSetList": null,
    "dataValue": 1
}

dans le format approprié?

dans le fichier conf.log, j’ai trouvé ces fonctions qui n’apparaissent pas dans les commandes de la PAC :

"airState.miscFuncState.hotWater": {
      "_comment": "##\uc628\uc218\uc6b4\uc804",
      "data_type": "enum",
      "default": "0",
      "value_mapping": ["@OFF", "@ON"]
    },
    "airState.miscFuncState.hotWaterMode": {
      "_comment": "##\uc628\uc218\ub2e8\ub3c5\ubaa8\ub4dc",
      "data_type": "enum",
      "default": "0",
      "value_mapping": ["@OFF", "@ON"]
    },
    "airState.miscFuncState.powerHotWater": {
      "_comment": "##\ud30c\uc6cc\uae09\ud0d5",
      "data_type": "enum",
      "default": "0",
      "value_mapping": ["@OFF", "@ON"]

j’ai trouvé ça dans le fichier ModelJson.json. Les commandes info « airState.miscFuncState.powerHotWater » et "airState.miscFuncState.hotWaterMode"ne sont pas créées alors que « airState.miscFuncState.hotWater » oui.
Tu pourrais m’expliquer comment les commandes sont crées dans la tuile de la PAC jeedom?
Pas moyen de mettre la fonction dans la tuile? Pouvoir allumer et éteindre l’eau chaude sanitaire est très utile dans les scénariis de mode absence ou vacances.

"command": "Set",
    "ctrlKey": "settingInfo",
    "dataGetList": null,
    "dataKey": "airState.miscFuncState.hotWater",
    "dataSetList": null,
    "dataValue": 1
}

Avant, c’était ce fichier, maintenant c’est le fichier _modelJson.json

C’est le fichier de model téléchargé sur LG pour ton appareil.

Tout ce bloc est dans la partie « information » des clefs.
Les actions sont vers la fin dans « ControlDevice » :

  "ControlDevice": [{
    "ctrlKey": "basicCtrl",
    "comment": "\uc6d0\uaca9\uc81c\uc5b4-\uae30\ubcf8\uc81c\uc5b4, \uc6b4\uc804\ubaa8\ub4dc, \ubc14\ub78c\uc138\uae30, \ud76c\ub9dd\uc628\ub3c4\uc124\uc815, \uacf5\uae30\uccad\uc815 On\/Off, \uacf5\uae30\uc81c\uade0 On\/Off",
    "command": "Operation|Get|Set",
    "dataKey": "airState.operation|airState.opMode|airState.windStrength|airState.tempState.target|airState.miscFuncState.airFast|airState.miscFuncState.airRemoval",
    "dataValue": "{%airState.operation%}|{%airState.opMode%}|{%airState.windStrength%}|{%airState.tempState.target%}|{%airState.miscFuncState.airFast%}|{%airState.miscFuncState.airRemoval%}"
  }, {
...

Alors, le fichier de configuration ne sert qu’à aider à créer les commandes dont l’API envoie des infos et l’API envoie ces informations là :

{
  "resultCode": "0000",
  "result": {
    "appType": "NUTS",
    "modelAppType": "NUTS",
    "modelCountryCode": "WW",
    "countryCode": "FR",
    "modelName": "AWHP_019101_WW",
    "deviceType": 401,
    "deviceCode": "AI05",
    "alias": "PAC",
    "deviceId": "04741c39-5edc-1a1a-8ad1-44cb8b94b390",
    "fwVer": "",
    "imageFileName": "home_appliances_img_boiler.png",
    "ssid": "entrenousFreebox",
    "softapId": "",
    "softapPass": "",
    "macAddress": "",
    "networkType": "02",
    "timezoneCode": "Europe\/Paris",
    "timezoneCodeAlias": "Europe\/Paris",
    "utcOffset": 1,
    "utcOffsetDisplay": "+01:00",
    "dstOffset": 2,
    "dstOffsetDisplay": "+02:00",
    "curOffset": 1,
    "curOffsetDisplay": "+01:00",
    "sdsGuide": "{\"deviceCode\":\"AI05\"}",
    "newRegYn": "N",
    "remoteControlType": "REMO_AWHP_WIRED_RS3",
    "userNo": "FR2111223439344",
    "tftYn": "N",
    "deviceState": "E",
    "snapshot": {
      "airState.tempState.airTempHeatMin": 16,
      "airState.diagCode": 0,
      "airState.tempState.waterTempCoolMin": 20,
      "airState.reservation.powerDry": 0,
      "airState.tempState.airTempCoolMin": 16,
      "mid": 92218704,
      "airState.quality.sensorMon": 0,
      "airState.miscFuncState.awhpWaterControl": 1,
      "airState.tempState.target": 50,
      "airState.tempState.hotWaterTempMin": 40,
      "airState.operation": 1,
      "airState.reservation.absoluteStopTime": 0,
      "airState.tempState.waterTempHeatMax": 50,
      "airState.tempState.airTempCoolMax": 30,
      "timestamp": 1709153347298,
      "static": {
        "deviceType": "401",
        "countryCode": "FR"
      },
      "airState.tempState.hotWaterCurrent": 49,
      "airState.tempState.current": 35.5,
      "airState.tempState.hotWaterTempMax": 55,
      "airState.miscFuncState.awhpTempSwitch": 1,
      "airState.miscFuncState.extraOp": 0,
      "airState.tempState.hotWaterTarget": 55,
      "airState.reservation.absoluteStartTime": 0,
      "airState.tempState.waterTempHeatMin": 25,
      "airState.tempState.airTempHeatMax": 30,
      "meta": {
        "allDeviceInfoUpdate": false,
        "messageId": "C_xdkH4eQRGMd90gUkUX0A"
      },
      "airState.tempState.waterTempCoolMax": 22,
      "online": true,
      "airState.miscFuncState.hotWater": 1,
      "airState.opMode": 4,
      "airState.tempState.outWaterCurrent": 43,
      "airState.tempState.inWaterCurrent": 42.5
    },
    "online": true,
    "platformType": "thinq2",
    "area": 1101532,
    "regDt": 20211123122908,
    "blackboxYn": "Y",
    "modelProtocol": "STANDARD",
    "receipeVersion": 0,
    "activeSaving": "OFF",
    "smartCareV2": "OFF",
    "order": 0,
    "nlpAlias": "none",
    "drServiceYn": "N",
    "brandType": "common",
    "regDtUtc": "20211123102908",
    "regIndex": 0,
    "groupableYn": "Y",
    "controllableYn": "Y",
    "combinedProductYn": "N",
    "masterYn": "Y",
    "initDevice": false,
    "upgradableYn": "N",
    "autoFwDownloadYn": "N",
    "csUpgradableYn": "N",
    "foodPoisonIndex": "0",
    "tclcount": 0
  }
}

Pas de airState.miscFuncState.hotWater, ni airState.miscFuncState.hotWaterMode.
airState.miscFuncState.hotWater est bien présent donc créé.

Je viens d’ajouter dans la nouvelle màj un bouton d’ajout de commande, et une page de modification de champs de configuration :
Clic sur Capture d’écran 2024-03-10 à 09.29.44
Rensigne le nom, et type et sauvegarde


Clic sur le logo orange de la commande Capture d’écran 2024-03-10 à 09.30.05
Et entre les infos de ta commande :

Testé chez moi et ça marche.

Ah oui c’est pour ça que je trouvais pas j’ai pas d’actions select sur mon sèche-linge :stuck_out_tongue:

Faut que je me penche sur les lave-linge et sèche linge.
C’est encore une autre gestion pour les commandes action.

1 « J'aime »

Ouais pas d’urgence, pour ma part je m’en sers que pour les infos de temps restant.

Vraiment top!

tant pis si la création de la fonction n’est pas automatisée.
En tout cas, ça marche très bien. J’ai rajouté un sleep 2 secondes puis rafraîchir à nouveau pour la mise à jour des infos actualisées car le changement du retour d’état de la fonction ECS semble prendre un peu de temps.
As-tu encore besoin de l’accès à mon compte LG?
Merci beaucoup pour ton temps Flobul.

Hello les amis, y’a-t-il que chez moi que la communication ne se fait plus entre LG et mes splits ? :pleading_face:

Je viens de voir que la dernière étape de connexion ne répond pas (Etape 6).
Edit : non, c’était temporairement sans réponse, ça remarche maintenant.

J’ai vu passer un mail disant qu’ils allaient revoir la méthode de connexion :frowning:

1 « J'aime »

A priori c’est pas encore revenu chez moi, je vais remettre des piles dans les télécommandes :blush::grin:

Relance une Connexion depuis la page de configuration du plugin, et vérifie dans les logs que l’étape 6 est bien réalisée

[2024-03-13 19:23:14] DEBUG  : login ÉTAPE 6
[2024-03-13 19:23:14] DEBUG  : step6Étape 6 a échoué.

Bonsoir Flobul,

j’ai constaté que la mise à jour des données de la PAC ne se fait pas correctement sur jeedom.
j’ai mis dans les paramètres de configuration la mise à jour toutes les minutes.
j’appuie sur rafraîchir, les données ne bougent pas et quand j’ouvre l’app LGthinq sur mon android, au bout de quelques secondes les données changent. Après un appui sur rafraîchir sur jeedom les données deviennent identiques à celles de l’app.

Tu as les logs ?

Voici le log
lgthinq2.log (288,1 Ko)

et un autre en faisant la manip.
lgthinq2-2.log (290,9 Ko)

Pas beaucoup de temps en ce moment de me pencher dessus.
Mais j’ai toute la séquence qui est codée : elle permet d’obtenir le CA amazon, le certificat user et la clef passphrase pour la connexion mqtt. Mais erreur de connexion au broker AWS.
Je regarderai dans la semaine ce qu’il se passe, je suis pas loin du compte, je pense.