Mise à jour du croquis (sketch)
Samovar 7.00: la mise à jour via l'Arduino IDE est prise en charge. Option équivalente : lancez le configurateur de la nouvelle version et appuyez sur « Flasher » («Прошить») ; LittleFS se téléverse avec un bouton distinct « Téléverser LittleFS » («Загрузить LittleFS») et remplace les fichiers de l'interface web (les fichiers personnels dans LittleFS peuvent alors être perdus). Le configurateur enregistre vos valeurs dans le fichier user_config_override.h à côté du croquis : copiez-le dans le répertoire de la nouvelle version et les réglages seront conservés. Vous pouvez aussi flasher par Wi-Fi : le bouton « Actualiser » («Обновить») trouve Samovar sur le réseau si « Autoriser la mise à jour par Wi-Fi » («Разрешить обновление по Wi-Fi») est activé dans la section « Réseau » («Сеть») (USE_UPDATE_OTA).
À mesure que de nouvelles versions paraissent, la mise à jour devient nécessaire. Une nouvelle version peut s'accompagner de bibliothèques et d'outils nouveaux ou modifiés. Pour éviter les erreurs, il est donc recommandé d'utiliser à chaque fois exactement les bibliothèques et les outils qui se trouvent dans l'archive de la version concernée.
Attention ! Important !
À partir de la version 6.0, si Samovar est connecté à Internet, l'interface est mise à jour automatiquement pour la version concernée du croquis : si vous devez revenir à une version plus ancienne du croquis, l'interface reviendra elle aussi à la version correspondante. Sans connexion Internet, l'interface doit être installée par vos soins, en local.
Mise à jour du croquis
Avec la section
Premier téléversement du croquis, nous avons préparé une certaine structure de fichiers et de répertoires dans ...Documents\Arduino. Nous continuerons sur la base de cette organisation.
Préparez le répertoire ... Documents\Arduino\ dans l'ordre suivant :
-
Déplacez les répertoires libraries et tools par glisser-déposer (ou couper-coller) dans le répertoire Samovar.
-
Déplacez le répertoire Samovar dans un répertoire vide Samovar-7.00.
-
Déplacez le répertoire Samovar-7.00 dans le répertoire OLD.
-
Déplacez l'archive Samovar-7.00.zip contenant le croquis d'origine dans le répertoire OLD.
Ainsi, seul le répertoire OLD reste dans le répertoire ... Documents\Arduino\.
Et dans OLD se trouveront : l'archive Samovar-7.00 et le répertoire Samovar-7.00 avec le répertoire Samovar imbriqué.
Ce système de rangement exclut les erreurs lors des mises à jour, permet de réutiliser les réglages précédents pour la nouvelle version et, si nécessaire, de revenir rapidement à la version précédente ou à une version encore plus ancienne.
Procédez ensuite pas à pas, comme lors de la première installation : « décompressez » la nouvelle version dans ... Documents\Arduino\ jusqu'à obtenir la
structure de répertoires précédente. L'archive et le répertoire obtenu à partir de l'archive porteront donc le nouveau numéro de version dans leur nom.
Mais cette fois, ne téléversez pas tout de suite le croquis dans l'ESP : effectuez d'abord les réglages nécessaires dans le fichier Samovar_ini.h. Il y a deux façons de le faire :
1. La bonne méthode.
Pour plus de commodité, vous aurez besoin de programmes spéciaux capables de comparer deux fichiers différents en montrant visuellement leurs différences.
Le programme recommandé est
WinMerge — (
un outil de comparaison et de fusion pour Windows qui compare aussi bien des fichiers que des dossiers et affiche les différences sous forme de texte visuel . Le programme est simple à utiliser et dispose d'une interface en russe.)
Ou bien un programme plus puissant, mais aussi plus difficile à maîtriser, le programme
Notepad++ avec l'extension
Compare installée.
Exemple avec le programme WinMerge.
Pour comparer, sélectionnez deux fichiers Samovar_ini.h différents
Sélectionnez d'abord le fichier du répertoire OLD, où nous venons de déplacer la version précédente de Samovar. Il se trouve dans : ... \Documents\Arduino\OLD\Samovar-7.00\Samovar\
Prenez le second fichier dans le répertoire de la nouvelle version de Samovar. Il se trouve dans ... \Documents\Arduino\Samovar\
Le programme compare les deux fichiers et met en évidence les lignes qui diffèrent.
Les différences sont mises en évidence dans une teinte plus claire. Vous pouvez modifier les valeurs à droite à la main, ou placer le curseur à gauche et lancer la commande « Copier à droite » («Копировать направо»).
Ainsi, ligne par ligne, le fichier de réglages est adapté à votre équipement. Une fois toutes les modifications faites, cliquez sur l'icône « Enregistrer »
L'essentiel est de ne pas confondre : l'ancien fichier de réglages est à gauche, et le fichier avec lequel Samovar fonctionnera est à droite.
2. La méthode rapide
Lors d'une mise à jour via l'Arduino IDE, comparez le Samovar_ini.h de la nouvelle version et celui de la version précédente et ne reportez que vos propres valeurs. Ne collez pas l'ancien Samovar_ini.h à la place du nouveau : même une petite version peut contenir de nouveaux paramètres obligatoires.
Si la nouvelle version apporte de nouvelles fonctions de Samovar, vous devez modifier le fichier Samovar_ini.h, sinon les nouvelles fonctions seront indisponibles et Samovar ne fonctionnera pas correctement.
Si les réglages ont été faits dans le configurateur, vous n'avez pas besoin de modifier Samovar_ini.h : vos valeurs sont stockées dans user_config_override.h, qui a priorité sur Samovar_ini.h. Il suffit de reporter ce fichier dans la nouvelle version.
Le réglage est terminé. Vous pouvez téléverser le croquis dans l'ESP. Comme il s'agit de la mise à jour d'un croquis déjà installé, vous n'aurez pas à reconfigurer la connexion Wi-Fi et
il n'est pas nécessaire de charger les réglages par défaut.
Lors d'une mise à jour, vous pouvez désormais vous passer du raccordement de l'ESP au port USB et mettre à jour le micrologiciel
« par voie hertzienne » (OTA)
« Retour » à une ancienne version.
Quelque chose ne vous plaît pas dans la nouvelle version, ou elle ne fonctionne pas correctement. Vous voulez revenir aux versions précédentes. Avec ce système de rangement des anciennes versions, c'est très simple.
Préparez le répertoire ... \Documents\Arduino comme pour une mise à jour :
-
Déplacez les répertoires libraries et tools par glisser-déposer (ou couper-coller) dans le répertoire Samovar.
-
Déplacez le répertoire Samovar dans un répertoire vide Samovar-7.00.
-
Déplacez le répertoire Samovar-7.00 dans le répertoire OLD
-
Déplacez l'archive Samovar-7.00.zip contenant le croquis d'origine dans le répertoire OLD
Ensuite :
-
Allez dans le répertoire OLD, choisissez la version précédente et entrez dans le répertoire Samovar : ... \Documents\Arduino\OLD\Samovar-6.16\
-
Copiez (il est recommandé de copier plutôt que de glisser) tout le répertoire Samovar dans ... \Documents\Arduino\
Depuis le répertoire Samovar, déplacez par glisser-déposer (ou couper-coller) d'un niveau vers le haut, dans ... \Documents\Arduino\, les deux répertoires libraries et tools.
C'est tout. Vous pouvez téléverser le croquis dans l'ESP.
Plus tard, lors de la mise à jour vers une nouvelle version, il vous suffira de vider le répertoire ... \Documents\Arduino en supprimant Samovar, libraries et tools. Inutile de les déplacer dans OLD : ils s'y trouvent déjà, puisque nous avons utilisé une copie.
Pour mettre à jour le croquis, vous pouvez désormais utiliser les versions 2.x.x de l'Arduino IDE. Mais ces versions n'ont pas l'élément « ESP32 LittleFS Data Upload », et sans l'extension vous ne pourrez pas mettre à jour l'interface en local. Par conséquent, si Samovar n'a pas accès à Internet, l'interface web ne sera pas mise à jour.
Complément. Dans les versions 2.x.x de l'Arduino IDE, il est devenu possible d'installer l'interface en local à l'aide d'une extension. Les instructions sont ici. L'extension (arduino-littlefs-upload-1.1.7.vsix) se trouve dans l'archive de Samovar, dans le répertoire tools\ESP32LittleFS_Arduino IDE 2.X, voir Premier téléversement du croquis.
Vous pouvez installer en même temps plusieurs versions d'Arduino IDE 2.x.x et d'Arduino IDE 1.x.x sur votre ordinateur, elles ne se gêneront pas. Vous pouvez donc garder l'Arduino IDE 2.x comme IDE principal et n'utiliser l'Arduino IDE 1.x que lorsque vous devez téléverser en local le système de fichiers LittleFS (y compris l'interface) dans votre ESP32.
Si vous utilisez différentes versions de l'Arduino IDE, installez-les dans des répertoires différents. Pour cela, il suffit d'ajouter le numéro de version au nom du répertoire.
Par exemple.
C:\Program Files(x86)\Arduino1_1_18;
C:\Program Files\Arduino IDE_2_3_2;
C:\Program Files\Arduino IDE_2_3_1
Cela permet d'utiliser, dans chaque version de l'Arduino IDE, différentes versions du SDK ESP32 d'Espressif Systems.
Mais gardez à l'esprit que chacune des versions de l'Arduino IDE que vous utilisez devra être configurée séparément pour l'ESP32.
Attention !
Si vous utilisez l'extension ESP32 « ESP32 by Espressif Systems » en version 3.0.0 ou supérieure, le micrologiciel désactive de lui-même la mise à jour par Wi-Fi (OTA) : le paramètre USE_UPDATE_OTA n'a aucun effet avec ce cœur, téléversez uniquement par USB. De plus, vous devez changer le type de carte utilisé et choisir les bonnes partitions. La table de partitions de Samovar est absente du cœur 3.x ; elle s'ajoute à la main (la description se trouve au début du fichier Samovar.ino) :
copiez le fichier partitions\samovar.csv du répertoire du croquis dans ...\Arduino15\packages\esp32\hardware\esp32\3.x.x\tools\partitions\ (sous Windows, le répertoire Arduino15 se trouve dans C:\Users\<nom>\AppData\Local\) ;
ajoutez trois lignes au fichier ...\esp32\3.x.x\boards.txt :
esp32.menu.PartitionScheme.samovar=Samovar
esp32.menu.PartitionScheme.samovar.build.partitions=samovar
esp32.menu.PartitionScheme.samovar.upload.maximum_size=1507328
redémarrez l'Arduino IDE et choisissez « Tools » → « Partition Scheme » → « Samovar ».
Le configurateur PlatformIO utilise le cœur 2.0.17 et la même table de partitions (partitions/samovar.csv) ; il n'y a rien à ajouter.
Questions et réponses. FAQ
Je n'ai trouvé nulle part comment mettre à jour le micrologiciel « par voie hertzienne ». Pouvez-vous m'aider...La première fois, vous devez de toute façon flasher par câble et connecter Samovar à votre réseau Wi-Fi. Le paramètre USE_UPDATE_OTA doit être activé dans Samovar_ini.h (activé par défaut ; dans le configurateur, c'est « Autoriser la mise à jour par Wi-Fi » («Разрешить обновление по Wi-Fi»)), le cœur ESP32 doit être en version 2.0.17.
Redémarrez Samovar et relancez l'Arduino IDE. L'adresse IP de Samovar apparaîtra alors dans les ports réseau de l'Arduino IDE (un port réseau nommé samovar).
Au lieu du port USB (COM), sélectionnez l'adresse IP : la mise à jour se fera sans fil.
Par la suite, si vous reliez Samovar à l'ordinateur par un câble USB, deux options seront disponibles dans les ports : la mise à jour « par voie hertzienne » ou par le port COM. Le croquis sera envoyé par le canal que vous choisirez.
Le configurateur fonctionne de la même façon : appuyez sur « Actualiser » («Обновить»), et le port COM ainsi que Samovar trouvé sur le réseau apparaissent dans la liste des ports ; sélectionnez le port réseau et appuyez sur « Flasher » («Прошить»). Le bouton « Téléverser LittleFS » («Загрузить LittleFS») fonctionne aussi par le réseau.