Plugin ZWave et Fibaro FGMS-001-ZW5: erreurs dans fgms.xml et fgmszw5.xml

Bonjour,

J’ai rencontré un problème avec mes modules figaro FGMS-001-ZW5, problème qui est déjà mentionné dans d’autre post sur l’ancien forum. Lorsque l’on essaie de configurer certains paramètres avec une valuer supérieure à 32767, la valeur renvoyée par l’interface est systématiquement ramenée à 32767. J’ai trouvé la source de l’erreur et voulait remonter ce problème pour correction mais apparemment il ne m’est pas possible de créer des issues dans le projet GitHub.Ne sachant pas quelle est la meilleure manière de faire (il n’y a que trois semaines que j’ai commencé à installer et configurer Jeedom), je crée un sujet ici. N’hésitez pas à me rediriger vers le bon endroit si cela s’avère nécessaire.

Lors de la configuration d’un paramètre sur un module zwave:

  • après plusieurs appels, on va se retrouver dans la fonction set_config du fichier /resources/openzwaved/ozwave/value_utils.py
  • à la ligne 151, la fonction va appeler la fonction check_data du fichier /resources/python-openzwave/src-api/openzwave/value.py
  • cette fonction va limiter les valeurs possibles pour le paramètre en question

Comme dans le fichier /resources/openzwaved/config/fibaro/fgmszw5.xml le paramètre avec index 66 est défini comme suit:

<Value type="short" genre="config" instance="1" index="66" label="Temperature offset" min="0" max="65535" value="0">

La fonction check_data va limiter les valeurs pour un paramètre de type short (lignes 385-394) soit capper la valeur à 32767. Or ce paramètre est défini comme suit:

The value to be added to the actual temperature, measured by the sensor (temperature compensation).
Available settings: 0 - 100 (0 to 100C) or 64536 - 65535 (-100 to -0.10C)
Default setting: 0

Donc si vous voulez appliquer un offset négatif, vous n’y arriverez pas (valeurs plus grande que 32767 qui sera automatiquement ramenée à 32767).

Solution: déclarer les types des index suivant comme « int » dans le fichier fgmszw5.xml:

  • 6
  • 9
  • 22 (aussi modifier le maxvalue=65535 plutôt que 32767)
  • 66

Et dans le fichier fgms.xml:

  • 6
  • 9
  • 22
  • 40
  • 42
  • 62
  • 64
  • 66
  • 82
  • 83

Si vous voulez corriger vos devices déjà inclus dans le réseau afin de pouvoir les paramétrer correctement, il faut:

  • stopper le plugin zwave (cela va réécrire le fichier de config data/zwcg_XXXX.xml)
  • modifier le xml pour remplacer short par int aux index mentionnés ci-dessus
  • démarrer le plugin zwave
2 « J'aime »