Open lsteelandt opened 5 years ago
Le dernier firmware est désormais le 3.1a ; J'ai commencé à implémenter les changements relatifs aux firmwares 3.0f et 3.1a, mais je suis (très) loin d'avoir fait le tour
La branche dev/fw3.1a est là pour ça: https://github.com/nouknouk/node-zigate/tree/dev/fw_3.1a
A noter que l'idéal serait de pouvoir faire que le driver s'adapte en fonction de la version de la zigate à laquelle il est connecté ; je vois deux raisons:
faire que le driver remonte une erreur propre lorsque l'utilisateur exécute des commandes qui ne sont pas dispo parce que la zigate tourne sur un firmware plus ancien.
faire que le code des commandes & réponses s'adaptent en fonction de la version et des paramètres en plus / en moins pour certaines d'entres-elles.
les fondations d'une première version du firmware 3.1a ont été mergées sur la branche master. au menu:
l'ajout du numéro de version passé en paramètre dans les 'builder' de commandes et les 'parser' de réponses.
un check fait automatiquement via la méta info 'minVersion' dans les commandes: si la commande n'est dispo que dans un firmware plus récent que celui installé sur la zigate, la commande échouera d'emblée. exemple pour src/driver/commands/led.js
:
minVersion: 783, // 3.0a = 778 ; 3.0d = 781 ; 3.0f = 783 ; 3.1a = 794
la récupération automatique de la version de la zigate est faite dès la connexion.
quelques commandes spécifiques au fw 3.1a: get/set_led, certification.
un exemple d'utilisation de la version pour récupérer les nouveaux champs dans src/driver/responses/attribute_discovery.js
cf. https://github.com/nouknouk/node-zigate/commit/30434364dd0ef5b6b75917ba4b3a354a334f9116
Ce sujet est ouvert pour notifier les évolutions du code qui mettent en alignement le driver node-zigate avec les nouveautés du firmware 3.0f de Zigate