RuffRuff Apps RuffRuff Apps by Tsun

Guide Meshtastic - Comment Flasher le Firmware Meshtastic

Flashage des appareils ESP32

Le Web Flasher nécessite soit les navigateurs Chrome ou Edge mais est une excellente option pour flasher rapidement les appareils. Cette méthode est fortement recommandée pour le flashage du firmware, surtout pour les nouveaux utilisateurs du projet, car elle est conviviale.
Le script CLI est considéré comme le "processus manuel" pour flasher le firmware.
Le flashage de votre appareil avec un adaptateur série externe ne doit être tenté qu'en dernier recours si aucune autre méthode n'a réussi.
REMARQUE : Le client web à meshtastic.local n'est mis à jour que par un effacement complet et une réinstallation de l'appareil. Si vous optez pour une réinstallation, vous recevrez la dernière interface web intégrée. Pour conserver vos paramètres, vous pouvez exporter votre configuration avant la réinstallation puis la recharger ensuite.
ATTENTION : Assurez-vous de ne pas allumer la radio sans d'abord brancher l'antenne ! Ne pas le faire pourrait endommager la puce radio !

Utilisation du Meshtastic Web Flasher

Flasher l'appareil

  1. Branchez votre appareil
  2. Visitez flasher.meshtastic.org *requiert le navigateur Chrome ou Edge
  3. Suivez les instructions

Connecter et configurer l'appareil

Une fois que vous avez flashé le firmware Meshtastic sur l'appareil, vous pouvez passer à la configuration initiale.

Flashage du firmware via CLI

Vérification de la connectivité

Avant de flasher votre appareil, vérifiez la connectivité avec l'appareil que vous vous apprêtez à flasher. Suivez les étapes décrites ci-dessous pour vérifier la connectivité et, si nécessaire, installer les pilotes appropriés. Si vous devez installer des pilotes, n'oubliez pas de redémarrer votre ordinateur ensuite pour confirmer que l'installation est complète.
REMARQUE : La carte T-Beam 0.7 est une version antérieure de la carte T-Beam. En raison des modifications de conception dans les itérations suivantes, cette carte nécessite un fichier firmware spécifique différent de ceux utilisés par les autres cartes T-Beam.
  • Utilisez firmware-tbeam0.7-X.X.X.xxxxxxx.bin pour le T-Beam 0.7.
  • firmware-tbeam-X.X.X.xxxxxxx.bin est incompatible.
Pour toutes les autres cartes T-Beam, veuillez consulter la section ressources pour sélectionner le firmware correct.

Instructions pour l'interface en ligne de commande

Installer les logiciels prérequis
Linux
Vérifiez si vous avez python3 et pip installé en utilisant la commande suivante

 python3 --version

 pip3 --version

Si python3 n'est pas installé, vous pouvez l'installer en utilisant

 sudo apt-get update

 sudo apt-get install python3

Si pip n'est pas installé, vous pouvez l'installer en utilisant
 sudo apt-get install python3-pip
Installer esptool
 pip3 install --upgrade esptool
MacOS
OS X est livré avec Python2.7 préinstallé, mais il n'inclut pas pip. Les instructions suivantes utilisent Homebrew pour installer Python3, qui inclut pip3. Sur macOS, vous utiliserez pip3 au lieu de pip.
NOTE : Vérifiez si vous avez Homebrew installé avec la commande suivante. S'il n'est pas installé, suivez les instructions sur le Homebrew website avant de continuer.
 brew -v
Vérifiez si vous avez python3 et pip installé en utilisant la commande suivante

 python3 --version

 pip3 --version

Si python3 n'est pas installé, vous pouvez l'installer en utilisant la commande
 brew install python3
Vérifiez que pip3 a été installé avec python3
 pip3 -v
Installer esptool
 pip3 install --upgrade esptool
Windows
  • Téléchargez et installez Python. Pendant l'installation, assurez-vous de sélectionner l'option Ajouter Python X.Y au PATH.
  • Téléchargez et installez Git Bash (ou un autre shell adapté), et exécutez toutes les commandes suivantes depuis ce shell.
Vérifiez si vous avez python3 et pip installé en utilisant la commande suivante

 py --version

 pip --version

Installer esptool
 pip3 install --upgrade esptool
Vérifiez la connectivité avec la puce
  • Sur Linux et macOS, vous devrez peut-être déclarer explicitement esptool comme un .py script. Utilisez la commande esptool.py chip_id pour ce faire, selon votre environnement.
  • Sous Windows, vous devez déclarer explicitement esptool comme un .py script en utilisant la commande esptool.py chip_id pour assurer un fonctionnement correct.
Connectez la radio à votre ordinateur avec un câble USB de données. Utilisez la commande suivante pour vérifier que votre appareil communique avec votre ordinateur :
Commande
 esptool chip_id
Sortie attendue

 # Vous devriez voir un résultat similaire à ceci :

 mydir$ esptool chip_id

 esptool.py v2.6

 2 ports série trouvés

 Port série /dev/ttyUSB0

 Connexion....

 Détection du type de puce... ESP32

 La puce est ESP32D0WDQ6 (révision 1)

 Fonctionnalités : WiFi, BT, Dual Core, 240MHz, calibration VRef dans efuse, Schéma de codage Aucun

 MAC: 24:6f:28:b5:36:71

 Téléversement du stub...

 Exécution du stub...

 Stub en cours d'exécution...

 Attention : ESP32 n'a pas d'ID de puce. Lecture

 MAC à la place. MAC : 24:6f:28:b5:36:71

 Réinitialisation matérielle via la broche RTS en cours...

Télécharger le Firmware
  • Naviguez vers la Page de téléchargements Meshtastic pour obtenir le dernier firmware.
  • Faites défiler jusqu'à la section Firmware et choisissez l'une des options suivantes selon vos préférences :
  1. Télécharger Stable : Pour les versions stables et bien testées.
  1. Télécharger Alpha : Pour les versions expérimentales plus récentes incluant les dernières fonctionnalités.
  • Une fois redirigé vers la page de release GitHub, faites défiler jusqu'à la section Assets et développez-la.
  • Identifiez le firmware approprié pour votre appareil selon son architecture (par exemple, firmware-esp32s3 pour les appareils basés sur ESP32-S3 comme le Heltec V3).
  • Téléchargez le fichier et notez son emplacement sur votre système, qui se trouve généralement dans votre ~/Downloads dossier.
Accéder au répertoire du firmware
Ouvrez un terminal et changez de répertoire vers l'endroit où votre firmware a été téléchargé (en utilisant le cd commande). Le nom du dossier correspond généralement à l'architecture et à la version du firmware indiquées dans le fichier zip. Par exemple :
 cd ~/Downloads/firmware-esp32s3-X.X.X.xxxxxxx/
REMARQUE : Assurez-vous de remplacer esp32s3 et le numéro de version par les valeurs correspondant au fichier que vous avez téléchargé.
Installer ou mettre à jour le firmware
Maintenant, suivez les instructions ci-dessous pour votre système d'exploitation afin d'installer ou de mettre à jour le firmware pour votre carte spécifique :
Veuillez noter avant de commencer :
Soyez extrêmement prudent lors de l'installation du fichier firmware correct pour votre carte. Plus précisément, la radio 'T-BEAM' largement utilisée de TTGO n'est pas désignée comme 'TTGO-Lora' (qui est une carte différente). Par conséquent, ne flashez pas la version 'TTGO-Lora' sur un T-BEAM, car cela ne fonctionnera pas correctement. Si vous installez le mauvais firmware pour votre appareil, le processus de flashage peut sembler s'être terminé avec succès, mais l'appareil peut devenir non réactif, affichant un écran blanc s'il en possède un. Assurez-vous de flasher la bonne version. Veuillez noter que bien que ces appareils soient généralement robustes et que les dommages ne soient pas garantis, il existe un risque d'endommager la radio embarquée et les périphériques si les directions des broches GPIO sont incorrectes.
Linux & macOS
Installer
 ./device-install.sh -f firmware-BOARD-VERSION.bin
Mettre à jour
 ./device-update.sh -f firmware-BOARD-VERSION-update.bin
Utilisez le --web option pour intégrer le client Web embarqué lors de l'installation du firmware.
Windows
Installer
 device-install.bat -f firmware-BOARD-VERSION.bin
Mettre à jour
 device-update.bat -f firmware-BOARD-VERSION-update.bin
Utilisez le --web option pour intégrer le client Web embarqué lors de l'installation du firmware.

Connecter et configurer l'appareil

Une fois que vous avez réussi à flasher le firmware Meshtastic sur l'appareil, vous pouvez passer à la configuration initiale.

Flashage avec un adaptateur série externe

REMARQUE : Ces informations seront probablement utiles uniquement si vous avez déjà tenté de suivre les prérequis et les processus décrits dans manually flashing

Processus de flashage

Situations pouvant nécessiter l'utilisation d'un adaptateur USB vers série externe :
  • En raison de la pénurie actuelle de puces, les appareils récemment acquis comme le TTGO T-Beam peuvent être équipés de puces d'adaptateur USB vers série anciennes ou non standard, qui peuvent être peu fiables dans certaines situations.
  • Certains appareils peuvent présenter des puces USB vers série défectueuses, entraînant des problèmes de communication.
  • Appareils spécifiques, tels que le Hydra (cible Meshtastic-DIY)
Adaptateurs USB vers série
Il existe de nombreuses options sur le marché, mais il est conseillé de choisir un adaptateur utilisant la puce Silicon Labs CP2102, reconnue pour sa fiabilité en tant que standard industriel.
Commencez par brancher l'adaptateur à votre ordinateur sans connecter d'appareils à ce stade. Assurez-vous que les pilotes nécessaires pour l'adaptateur sont installés sur votre ordinateur ; pour les utilisateurs Windows, les pilotes corrects devraient généralement s'installer automatiquement.
Connexion de l'adaptateur à l'appareil
REMARQUE : Il existe plusieurs méthodes pour connecter les broches de l'adaptateur à l'appareil cible, notamment en pressant des cavaliers contre des contacts ou en utilisant des gabarits à broches pogo. Ce tutoriel met en avant l'utilisation de connecteurs Dupont décalés soudés sur les broches GPIO concernées et reliés par des cavaliers.
Déconnectez votre adaptateur USB vers série de l'ordinateur avant de commencer ce processus.
  1. Connectez la broche RX de l'adaptateur à la broche TX de l'appareil.
  2. Connectez la broche TX de l'adaptateur à la broche RX de l'appareil.
  3. Connectez une broche GND de l'adaptateur à la broche GND de l'appareil.
  4. Connectez soit la broche 5V de l'adaptateur à la broche 5V de l'appareil (comme illustré), soit la broche 3,3V de l'adaptateur à la broche 3,3V de l'appareil.
  5. Reliez GPIO 0 à GND sur l'appareil avec un cavalier. (Cela mettra l'appareil en mode flash au démarrage.) Exemple de câblage avec un T-Beam.
  1. Connectez l'appareil à un port USB de l'ordinateur.
  2. Retirez le cavalier reliant GPIO 0 à GND.
Flashage de l'appareil
Après avoir complété les étapes ci-dessus, votre appareil devrait être en mode flash. Vous pouvez maintenant utiliser la méthode manuelle pour flasher votre appareil.
Une fois le processus de flashage terminé, réinitialisez votre appareil (en utilisant le bouton RST s'il est disponible). Si vous avez installé le Meshtastic Python CLI, vous pouvez exécuter meshtastic --noproto pour vous reconnecter à l'appareil via l'adaptateur et voir la sortie série afin de vous assurer que Meshtastic a été installé correctement.
Dépannage du processus de flashage
Vous pouvez rencontrer une erreur d'autorisation du port COM lors de l'exécution des scripts d'installation manuelle de l'appareil, ce qui peut être causé par divers problèmes.
Pour résoudre ce problème, vous devrez peut-être exécuter le processus en tant qu'administrateur, vous assurer qu'aucun autre logiciel, comme Cura, ne monopolise les ports COM, ou essayer de redémarrer votre système.

Connecter et configurer l'appareil

Une fois que vous avez flashé le firmware Meshtastic sur l'appareil, vous pouvez passer à la configuration initiale.

Flashage des appareils nRF52 & RP2040

  • Processus de mise à niveau du firmware pour les appareils nRF52 et RP2040 : Les appareils basés sur les architectures nRF52 et RP2040 offrent un processus de mise à niveau du firmware simple qui ne nécessite aucun pilote ni installation de logiciel sur aucune plateforme.
  • Glisser & déposer : Ces appareils utilisent la méthode d'installation par glisser-déposer pour installer les versions du firmware. Il suffit de glisser le fichier firmware sur l'appareil dans votre explorateur de fichiers.
  • Mises à jour Over-The-Air (OTA) : Les appareils nRF52 peuvent recevoir des mises à jour de firmware OTA depuis un appareil mobile via Bluetooth, permettant des mises à jour transparentes sans besoin de connexions physiques.
  • Effacement d'usine : Avant d'installer un nouveau firmware, vous pouvez envisager d'effectuer un effacement d'usine pour supprimer toutes les données existantes qui pourraient changer de format ou d'emplacement entre les versions.
  • Conversion de RAK4631-R en RAK4631 : Si votre appareil n'est pas livré avec le bootloader Arduino, vous devrez effectuer une conversion pour assurer la compatibilité.
  • Utilisation du Raspberry Pi comme outil de flashage SWDIO : Si votre appareil ne peut pas être flashé via USB ou Bluetooth, une option alternative est d'utiliser une connexion SWDIO directe avec un Raspberry Pi comme outil de flashage.

Mises à jour du firmware par glisser-déposer pour nRF52 & RP2040

Flasher l'appareil

  • Vous pouvez désormais utiliser le Meshtastic Web Flasher pour télécharger et transférer le firmware vers vos appareils basés sur nRF52 ou RP2040. Alternativement, vous pouvez suivre les instructions ci-dessous pour télécharger et installer le firmware.
  • Si vous avez récemment effectué une Factory Erase, votre appareil pourrait démarrer automatiquement en mode bootloader. Vous pouvez alors passer directement à "Copiez le firmware approprié..." pour votre appareil spécifique ci-dessous :
nRF52
  1. Téléchargez et décompressez le dernier firmware depuis le Meshtastic Downloads.
  2. Connectez votre appareil à votre ordinateur avec un câble USB de données.
  3. Appuyez deux fois sur le bouton reset de votre appareil (cela activera le mode bootloader).
  4. Un nouveau lecteur sera monté sur votre ordinateur (compatible avec Windows, Mac, Linux ou Android).
  5. Ouvrez ce lecteur, où vous devriez trouver trois fichiers : CURRENT.UF2, INDEX.HTM, et INFO_UF2.TXT.
  6. Copiez le fichier firmware approprié (firmware-DEVICE_NAME-X.X.X-xxxxxxx.uf2) depuis le dossier de la release vers ce lecteur.
  7. Après la copie du fichier, l'appareil va redémarrer et installer le firmware Meshtastic.
RP2040
  1. Téléchargez et décompressez le dernier firmware depuis le Meshtastic Downloads.
  2. Appuyez et maintenez le bouton BOOTSEL, puis connectez l'appareil à votre ordinateur avec un câble USB.
  3. Un nouveau lecteur sera monté sur votre ordinateur (compatible avec Windows, Mac, Linux ou Android).
  4. Ouvrez ce lecteur, où vous devriez trouver deux fichiers : INDEX.HTM et INFO_UF2.TXT.
  5. Copiez le fichier firmware approprié (firmware-DEVICE_NAME-X.X.X-xxxxxxx.uf2) depuis le dossier de la release vers ce lecteur.
  6. Une fois le fichier copié, l'appareil va redémarrer et installer le firmware Meshtastic.
Cas particuliers possibles lors du flashage
  1. Avant de flasher, assurez-vous que vous avez le RAK4631 et non le RAK4631-R. Si ce n'est pas le cas, ne vous inquiétez pas. Le matériel est le même, mais vous devrez changer le bootloader. Les instructions pour ce faire se trouvent ici.
  2. Les anciennes versions du firmware Meshtastic peuvent conserver des données obsolètes, ce qui peut entraîner que les appareils restent bloqués dans une boucle de plantage au démarrage. Si vous rencontrez des problèmes lors de la mise à niveau de votre appareil nRF52 depuis une version précédente de Meshtastic, vous devrez peut-être effectuer une réinitialisation complète d'usine de la mémoire flash interne. Veuillez suivre le guide pour effacer votre nRF52 en usine avant de procéder à flasher le firmware.

Connecter et configurer l'appareil

Une fois que vous avez flashé le firmware Meshtastic sur l'appareil, vous pouvez passer à la configuration initiale.

Mises à jour du firmware Over-the-Air (OTA) pour nRF52

Les appareils nRF52 de RAK peuvent accepter des mises à jour OTA du firmware depuis un appareil mobile via Bluetooth. Les anciens bootloaders T-Echo ne prennent pas en charge les mises à jour OTA.
attention : les mises à jour OTA du firmware comportent un risque plus élevé de défaillance. Si le processus de mise à jour échoue, votre appareil peut se retrouver dans un état non fonctionnel, nécessitant un accès physique pour intervenir.

Android

Au moment de la rédaction, la dernière version Android de l'application nRF DFU (v2.3.0) est incompatible avec les mises à jour du firmware Meshtastic. Veuillez plutôt suivre les instructions ci-dessous pour effectuer une mise à jour OTA en utilisant l'application nRF Connect, spécifiquement la version 4.24.3, qui peut être téléchargée depuis la Nordic Semiconductor GitHub page.
  1. Téléchargez la version du firmware que vous souhaitez installer depuis la page de téléchargement Meshtastic ou le Meshtastic GitHub.
  2. Décompressez le dossier du firmware.
  3. Ouvrez l'application nRF Connect et sélectionnez CONNECTER votre appareil depuis l'onglet SCANNER.
  4. Si l'interface affiche SE DÉCONNECTER en haut à droite, passez à l'étape 5. Si elle affiche SE CONNECTER, sélectionnez SE CONNECTER.
  5. Touchez l'icône DFU en haut à droite de l'écran.
  6. Vérifiez que "Paquet de distribution (ZIP)" est sélectionné, puis cliquez sur OK.
  7. Choisissez le fichier firmware approprié de l'appareil (qui se terminera par -ota.zip).
  8. La mise à jour démarrera automatiquement (notez que ce processus peut être lent).
  9. Une fois la mise à jour terminée, l'appareil redémarrera automatiquement.

Apple

Les mises à jour OTA du firmware sont disponibles sur iOS et iPadOS via l'application nRF Device Firmware Update, téléchargeable depuis le Apple App Store.
  1. Téléchargez la version du firmware que vous souhaitez installer depuis la page de téléchargement Meshtastic, Meshtastic GitHub, ou directement via l'application iOS/iPadOS.
  2. Décompressez le dossier du firmware.
  3. Ouvrez l'application nRF DFU et sélectionnez le fichier firmware correct de l'appareil (se terminant par -ota.zip).
  4. Connectez-vous à votre appareil.
  5. Téléversez le firmware.
Note importante : La fonction de verrouillage automatique de l'iPhone peut interrompre le téléversement du firmware Bluetooth. Pour éviter cela, touchez périodiquement l'écran ou réglez temporairement le verrouillage automatique sur "Jamais" pendant le processus de téléversement afin de garantir que le téléphone reste actif et que le téléversement se termine sans interruption.
Si la mise à jour échoue, vous pouvez améliorer le succès en ajustant les paramètres des paquets :
  1. Allez dans les paramètres et activez "Notifications de réception des paquets."
  2. Changez "Nombre de paquets" pour une valeur plus basse ; certains utilisateurs ont réussi avec un réglage de "5".

Réinitialisation d'usine pour les appareils nRF52/RP2040

  • Meshtastic utilise la bibliothèque littlefs pour stocker la configuration, les journaux et d'autres données dans la mémoire flash interne des appareils nRF52 et RP2040. Il est important de noter que la mise à jour du firmware n'efface pas ces données supplémentaires, ce qui peut entraîner des problèmes si le format et l'emplacement des données changent entre les versions.
  • Vous pouvez maintenant utiliser le Meshtastic Web Flasher pour effacer d'usine vos appareils basés sur nRF52 ou RP2040. Visitez le flasher, sélectionnez votre carte, et cliquez sur l'icône de la corbeille à droite du bouton Flash. Cela ouvrira une boîte de dialogue pour initier la procédure d'effacement. Alternativement, vous pouvez suivre les instructions ci-dessous.

nRF52

Pour réinitialiser le stockage flash sur votre carte nRF52, suivez ces étapes :
  1. Téléchargez et décompressez le dernier firmware depuis la page de téléchargements Meshtastic.
  2. Connectez votre appareil à votre ordinateur à l'aide d'un câble USB de données.
  3. Double-cliquez sur le bouton reset de votre appareil pour entrer en mode bootloader.
  4. Un nouveau lecteur sera monté sur votre ordinateur (cela s'applique à Windows, Mac ou Linux).
  5. Ouvrez ce lecteur, et vous devriez voir trois fichiers : CURRENT.UF2, INDEX.HTM, et INFO_UF2.TXT.
  6. Ouvrez le INFO_UF2.TXT fichier dans un éditeur de texte et notez le SoftDevice valeur.
  7. Localisez le fichier inclus dans le firmware téléchargé qui correspond à votre numéro de version majeure SoftDevice (soit 7.x.x ou 6.x.x). Utilisez soit Meshtastic_nRF52_factory_erase_v3_S140_7.3.0.uf2 ou Meshtastic_nRF52_factory_erase_v3_S140_6.1.0.uf2, et copiez-le sur le nouveau lecteur. L'appareil devrait alors redémarrer.
  8. Avec le Meshtastic CLI installé, ouvrez votre Terminal ou Console et entrez la commande : meshtastic --noproto.
  9. Vous devriez voir le message : Formatage... Terminé.
Une fois que l'appareil a été effacé, vous pouvez procéder à l'installation de la dernière version du firmware Meshtastic sur un système de fichiers de stockage propre en cliquant sur le lien ci-dessous.

RP2040

Pour réinitialiser le stockage flash sur votre carte RP2040, suivez ces étapes :
  1. Télécharger le flash_nuke.uf2 fichier sur votre ordinateur.
  2. Appuyez et maintenez le bouton BOOTSEL, puis connectez la carte à votre ordinateur à l'aide d'un câble USB.
  3. La carte devrait maintenant apparaître comme un périphérique de stockage de masse sur votre ordinateur, étiqueté RPI-RP2.
  4. Copiez le fichier flash_nuke.uf2 sur cet appareil.
  5. La carte redémarrera automatiquement et la mémoire flash sera effacée.
Après que l'appareil a été effacé, vous pouvez procéder à l'installation de la dernière version du firmware Meshtastic sur un système de fichiers de stockage propre en cliquant sur le lien ci-dessous.

Conversion de RAK4631-R en RAK4631

La seule différence entre le RAK4631-R (RUI3) et le RAK4631 (Arduino) réside dans le bootloader avec lequel ils sont fournis ; le matériel est identique.
Meshtastic nécessite le bootloader Arduino pour les cartes basées sur nRF52 RAK WisBlock. Ce processus de conversion du bootloader ne doit être effectué qu'une seule fois.
Voici deux méthodes pour flasher le bootloader :

Mise à jour du firmware de l'appareil USB (DFU)

  1. Installez Python
  2. Installez adafruit-nrfutil
 pip3 install adafruit-nrfutil
  1. Téléchargez le bootloader nécessaire : WisCore_RAK4631_Board_Bootloader.zip.
  2. Connectez votre appareil RAK à votre ordinateur via USB.
  3. Flashez le bootloader.
 adafruit-nrfutil --verbose dfu serial --package ./WisCore_RAK4631_Board_Bootloader.zip -p /dev/ttyACM0 -b 115200 --singlebank --touch 1200
REMARQUE : Le nom du port série (/dev/ttyACM0) peut varier selon votre système d'exploitation. Assurez-vous d'identifier le nom correct du port pour votre configuration.
  1. Ensuite, continuez avec les instructions de flash habituelles.
Étapes RUI3 supplémentaires
Si les étapes ci-dessus échouent avec des erreurs telles que :

 Port série COM11 touché

 Port série COM11 ouvert

 Démarrage de la mise à niveau DFU de type 2, taille SoftDevice : 0, taille du bootloader : 39000, taille de l'application : 0

 Envoi du paquet de démarrage DFU

 Délai d'attente dépassé en attendant l'accusé de réception de l'appareil.

 Échec de la mise à niveau de la cible. L'erreur est : Aucune donnée reçue sur le port série. Impossible de continuer.

Vous devez compléter la première partie des instructions pour converting the RAK4631-R to the RAK4631, en particulier la section concernant la commande AT+BOOT.

Débogueur

Cette conversion nécessite l'utilisation soit d'un DAPLink soit d'un J-Link. L'option la plus abordable et facilement disponible est le RAKDAP1.
  1. Installez Python
  2. Installez pyOCD
 pip3 install pyocd
  1. Téléchargez le bootloader nécessaire : WisCore_RAK4631_Board_Bootloader.hex.
  2. Connectez le RAKDAP comme indiqué ci-dessous :
  1. Flashez le bootloader
 pyocd flash -t nrf52840 .\WisCore_RAK4631_Board_Bootloader.hex
  1. Procédez avec les instructions de flashage standard.
Des méthodes alternatives de flashage sont détaillées ici.

Mise à jour ou récupération du bootloader sur les appareils nRF52

Si vous rencontrez des difficultés lors de la mise à jour ou du flashage des versions plus récentes du firmware Meshtastic, et que votre appareil nRF52 ne fonctionne pas avec la dernière version du bootloader, la mise à jour du bootloader pourrait aider à résoudre ces problèmes.
Pour vérifier la version du bootloader actuellement sur votre appareil, activez le mode DFU. Ensuite, ouvrez le lecteur monté qui apparaît sur votre ordinateur et vérifiez le fichier INFO_UF2.TXT.
Voici les étapes pour mettre à jour votre bootloader.

Méthode 1 : Mise à jour avec le fichier UF2 (recommandé)

Selon votre appareil, vous devez choisir le package de bootloader approprié. Voici les liens vers les packages de bootloader :
  1. Téléchargez le fichier UF2 Bootloader correct.
  2. Connectez votre appareil à votre ordinateur à l'aide d'un câble USB.
  3. Activez le mode bootloader en appuyant deux fois rapidement sur le bouton RESET de votre appareil. Pour le Seeed Tracker 1000-E, maintenez le bouton utilisateur enfoncé, puis connectez rapidement le câble USB au port MagSafe deux fois. L'appareil devrait apparaître comme un lecteur amovible sur votre ordinateur.
  4. Glissez-déposez le fichier UF2 que vous avez téléchargé dans le lecteur amovible. L'appareil mettra automatiquement à jour le bootloader et redémarrera.
  5. Une fois que l'appareil redémarre, la mise à jour est terminée. Votre appareil fonctionne maintenant avec la dernière version du bootloader, et vous pouvez continuer avec le flashage du firmware.

Méthode 2 : Utilisation de adafruit-nrfutil

Attention : Contrairement aux uploads UF2, adafruit-nrfutil ne vérifie pas si vous avez le bon package de bootloader pour votre appareil. Flasher un bootloader incorrect pourrait potentiellement rendre votre appareil inutilisable. Par conséquent, assurez-vous de vérifier le checksum SHA256 avant de procéder au flashage.
Ces instructions supposent que Python et pip sont déjà installés sur votre système. Sinon, veuillez télécharger et installer la dernière version de Python (qui inclut pip) depuis Python.org.
En fonction de votre appareil, vous devez choisir le package de bootloader approprié. Voici les liens vers les packages de bootloader disponibles :
  1. Ouvrez un terminal ou une invite de commandes et installez adafruit-nrfutil en exécutant la commande suivante :
bash
 pip install adafruit-nrfutil
  1. Obtenez le package ZIP correct.
  2. Connectez votre appareil à votre ordinateur à l'aide d'un câble USB.
  3. Dans le terminal ou l'invite de commandes, naviguez jusqu'au répertoire où vous avez téléchargé le package ZIP du bootloader, et exécutez la commande suivante. Assurez-vous de remplacer /dev/ttyACM0 par le port correct pour votre appareil (les utilisateurs Windows peuvent utiliser COMx) :
 adafruit-nrfutil --singlebank --touch 1200 --verbose dfu serial --package .zip -p /dev/ttyACM0 -b 115200
  1. Une fois le processus terminé, la mise à jour est achevée. Votre appareil fonctionne désormais avec la dernière version du bootloader, ce qui vous permet de procéder à flasher le firmware.

Méthode 3 : Utilisation d'un débogueur

Si les méthodes mentionnées ci-dessus ne fonctionnent pas, et que votre matériel le supporte (c'est-à-dire qu'il dispose des broches SWD nécessaires), vous pouvez utiliser un débogueur tel qu'un DAPLink ou J-Link pour flasher directement le bootloader. Veuillez vous référer aux Instructions du Débogueur pour un exemple utilisant le RAK4631.

Utilisation de SWDIO pour le flashage avec un Raspberry Pi

La plupart des appareils Meshtastic peuvent être facilement flashés via USB. Cependant, certains appareils (par exemple, le kit de développement Seeed WM1110) nécessitent l'utilisation d'un appareil externe pouvant se connecter via « SWDIO ». Il existe des appareils spécialisés comme le RAKDAP1 conçus à cet effet. Cependant, de nombreux utilisateurs trouvent qu'un Raspberry Pi est une option plus pratique.
Cet article propose des instructions sur la façon d'utiliser un Raspberry Pi comme outil de flashage SWDIO.

Configuration du câblage

La première étape consiste à connecter deux fils entre votre Raspberry Pi et les ports SWDIO de votre appareil basé sur NRF52.
Connectez la broche GPIO 11 de votre Raspberry Pi à la broche CLK de l'appareil Meshtastic, et connectez la broche GPIO 8 de votre Raspberry Pi à la broche DIO de l'appareil Meshtastic.
Assurez-vous de vérifier que les numéros de GPIO sont corrects.
Alimentez votre Raspberry Pi en le connectant à une source d'alimentation USB, et alimentez également l'appareil Meshtastic.

Installer le logiciel OpenOCD

Vous pouvez utiliser OpenOCD pour gérer la connexion SWDIO avec l'appareil Meshtastic. Installez-le sur votre Raspberry Pi.

 $ sudo apt update

 $ sudo apt install libtool autoconf automake texinfo telnet gdb-multiarch git

 $ git clone git://repo.or.cz/openocd.git

 $ cd openocd/

 $ ./bootstrap

 $ ./configure --enable-bcm2835gpio

 $ make -j4

 $ sudo make install

Vérifier la connexion

Avant de travailler avec le firmware, essayons de nous connecter à l'appareil basé sur NRF52 en utilisant SWDIO. Toute la configuration nécessaire se trouve dans le dépôt OpenOCD.
 $ openocd -f ./openocd/tcl/interface/raspberrypi-native.cfg -c "transport select swd" -f openocd/tcl/target/nrf52.cfg -s tcl
Le premier drapeau désigne le Raspberry Pi comme votre machine hôte, le transport est réglé sur SWDIO, et le dernier drapeau indique que vous vous connectez à une puce basée sur nRF52. Vous devriez voir une sortie similaire à ceci :

 Open On-Chip Debugger 0.12.0+dev-00633-gad87fbd1c

 Sous licence GNU GPL v2

 Pour les rapports de bugs, lisez

 http://openocd.org/doc/doxygen/bugs.html

 srst_only separate srst_gates_jtag srst_push_pull connect_deassert_srst

 swd

 Info : Écoute sur le port 6666 pour les connexions tcl

 Info : Écoute sur le port 4444 pour les connexions telnet

 Info : pilote BCM2835 GPIO JTAG/SWD bitbang

 Info : fréquence d'horloge 100 kHz

 Info : SWD DPIDR 0x2ba01477

 Info : [nrf52.cpu] processeur Cortex-M4 r0p1 détecté

 Info : [nrf52.cpu] la cible a 6 points d'arrêt, 4 points de surveillance

 Info : [nrf52.cpu] Examen réussi

 Info : [nrf52.cpu] démarrage du serveur gdb sur 3333

 Info : Écoute sur le port 3333 pour les connexions gdb

 Info : acceptation de la connexion 'telnet' sur tcp/4444

Si vous rencontrez le message « Erreur de connexion DP : impossible de lire l'IDR », cela signifie probablement que les fils sont connectés aux mauvais emplacements.

Télécharger le Firmware

Référez-vous aux instructions pour votre matériel afin de localiser le firmware approprié pour votre appareil. La plupart des appareils suivant ce guide nécessitent un fichier .hex. Après cela, copiez le fichier firmware sur votre Raspberry Pi.

Flasher le firmware

Après avoir démarré OpenOCD, vous pouvez vous connecter à votre appareil Meshtastic via telnet. Le flashage de l'appareil est simple ; il suffit d'exécuter quelques commandes dans la session telnet :

 $ telnet 127.0.0.1 4444

 Tentative de connexion à 127.0.0.1...

 Connecté à 127.0.0.1.

 Le caractère d'échappement est '^]'.

 Ouvrir On-Chip Debugger

 > init

 > reset init

 > halt

 > nrf5 mass_erase

 > program firmware.hex verify

 > reset

 > exit 0

Déconnectez l'alimentation puis reconnectez-la après le flashage.

Établir la connexion

Félicitations ! Vous devriez maintenant pouvoir vous connecter à votre appareil via Bluetooth dans l'application Meshtastic.

 

Barre latérale

Dernier article

Cette section ne contient actuellement aucun contenu. Ajoutez du contenu à cette section en utilisant la barre latérale.

Inscrivez-vous à notre newsletter

Obtenez les dernières informations sur nos produits et offres spéciales.