Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

aligner le driver avec la dernière version du firware de la zigate, [la 3.0f] EDIT: [3.1a] #3

Open
lsteelandt opened this issue Apr 1, 2019 · 2 comments

Comments

@lsteelandt
Copy link

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

@nouknouk nouknouk changed the title aligner le driver avec la dernière version du firware de la zigate, [la 3.0f] aligner le driver avec la dernière version du firware de la zigate, [la 3.0f] EDIT: [3.1a] Aug 10, 2019
@nouknouk
Copy link
Owner

nouknouk commented Aug 10, 2019

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.

@nouknouk
Copy link
Owner

nouknouk commented Aug 14, 2019

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. 3043436

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants