Reprendre une mise à jour de firmware après une erreur

Reprendre une mise à jour de firmware après une erreur

Nous faisons tout notre possible pour que la mise à jour des firmwares des modules Yoctopuce fonctionne sans le moindre problème. Toutefois, il y arrive que certains éléments extérieurs, comme une panne de courant ou de réseau, empêchent la procédure de se terminer correctement. Nous allons voir comment remettre le module en état de marche et lui restaurer ses paramètres de configurations quand la procédure de mise à jour est interrompue.



Note: Certaines des fonctionnalités que nous allons utiliser sont très récentes. Assurez-vous d'avoir la version à jour du VirtualHub et/ou un YoctoHub avec un firmware à jour.


Lorsque vous cliquez sur le bouton update dans l'interface Web pour mettre à jour un module Yoctopuce, le code JavaScript de la page effectue trois opérations.

La première opération consiste à récupérer tous les paramètres de configuration du module et les stocker le temps de la mise à jour.

La deuxième consiste à mettre à jour le firmware du module. C'est la partie la plus critique de la procédure. Pendant cette opération, le module va rebooter en mode reprogrammation, effacer les paramètres de configuration et mettre à jour le code du module. Ensuite, le module boot avec le code du nouveau firmware. À la fin de cette étape, le module est à jour et fonctionnel, mais tous les paramètres de configuration sont effacés et les paramètres par défaut sont utilisés.

La troisième et dernière opération consiste à restaurer les paramètres que nous avons sauvés au début.

Quand tout se passe bien, le module est mis à jour et les paramètres de configuration sont préservés. Cependant si une erreur se produit pendant la procédure, comme par exemple une perte de communication, ou une coupure de courant, le module peut se retrouver dans l'un de ces 3 états:

  1. Le module est fonctionnel et les paramètres de configuration sont appliqués.
  2. Le module est dans le mode reprogrammation et les paramètres ont déjà été effacés.
  3. Le module est fonctionnel, mais les paramètres de configuration sont effacés.


Le premier cas est très peu probable. Il s'agit d'une erreur qui se produirait au tout début de la procédure de mise à jour. Dans ce cas, il faut simplement relancer la mise à jour.

Sauver les paramètres en cas d'erreur


Pour les cas 2 et 3, les paramètres de configuration ont déjà été effacés sur le module et sont uniquement présents dans le browser Web. Quand la procédure de mise à jour échoue, l'interface Web vous propose de sauver ces paramètres afin de pouvoir les appliquer par plus tard, quand le module est de nouveau fonctionnel.

Si une erreur se produit pendant la mise à jour, le wizard vous propose de sauver les paramètres de configuration pour les appliquer plus tard
Si une erreur se produit pendant la mise à jour, le wizard vous propose de sauver les paramètres de configuration pour les appliquer plus tard



En cas d'erreur, la première chose à faire est de sauver ces paramètres, car si vous fermez la fenêtre de votre browser, ces paramètres seront perdus à jamais.

Redémarrer la mise à jour de firmware


Même si la procédure de mise à jour a échoué, il est possible de recommencer la mise à jour en fournissant les paramètres de configuration que l'on a sauvés.

Au début de la procédure, il faut simplement cocher l'option Override settings with value from file et sélectionner le fichier avec les paramètres de configuration.

Dans l'interface Web il est possible de passer un fichier avec les paramètres de configuration à appliquer
Dans l'interface Web il est possible de passer un fichier avec les paramètres de configuration à appliquer



Dans ce cas, à la fin de la mise à jour de firmware, le code JavaScript appliquera ces paramètres de configuration au lieu de ceux qui étaient présents au début de la mise à jour.

Le module est en mode reprogrammation


Si le module est en mode reprogrammation, il quand même possible de recommencer la procédure de mise à jour de firmware. Dans cette situation, le module n'est pas listé avec les autres modules, mais séparément en bas de la page principale de l'interface Web.

Les modules en mode reprogrammation sont listés en bas de page (ex: THRMSTR2-EF59B)
Les modules en mode reprogrammation sont listés en bas de page (ex: THRMSTR2-EF59B)



Si vous cliquez sur le numéro de série du module, vous allez lancer la procédure de mise à jour de firmware. La même option Override settings with value from file permet de restaurer les paramètres de configuration depuis un fichier.


Import export des paramètres de configuration


Notez que depuis peu, il possible de sauver et restaurer les paramètres de configuration d'un module depuis le panneau de configuration.

Il est possible de sauver et restaurer les paramètres de configuration depuis le panneau de configuration
Il est possible de sauver et restaurer les paramètres de configuration depuis le panneau de configuration



Le bouton Export settings permet de sauver tous les paramètres dans un fichier.

Le bouton Import settings permet de charger et d'appliquer les paramètres de configuration depuis un fichier. Notez que ce bouton ne fait que remplacer les paramètres actuels par ceux du fichier. Pour sauver ces paramètres de manière permanente dans la mémoire flash du module, il faut cliquer sur le bouton Save en bas de la fenêtre de configuration. Selon la même logique, si vous cliquez sur le bouton Cancel ces modifications seront annulées.

Attention


Attention cette fonctionnalité est disponible uniquement sur les VirtualHubs depuis la version 1.10.47158 et les YoctoHubs avec un firmware 47157 ou plus récent.

Commenter aucun commentaire Retour au blog












Yoctopuce, get your stuff connected.