Guide Meshtastic - Comment Flasher le Firmware Meshtastic

⚡ Flashage des appareils ESP32 avec le firmware Meshtastic

🔧 Le flashage des appareils ESP32 avec le firmware Meshtastic peut se faire de plusieurs manières. La méthode la plus recommandée est le 🌐 Web Flasher, qui fonctionne avec les navigateurs Chrome ou Edge. Il est 👌 convivial et idéal pour les débutants qui veulent flasher rapidement leurs cartes ESP32. Le 💻 script CLI est une méthode manuelle pour flasher le firmware et convient mieux aux utilisateurs avancés familiers avec les outils en ligne de commande. Si le Web Flasher et le script CLI échouent, l'utilisation d'un 🔌 adaptateur série externe est une option, mais elle ne doit être tentée qu'en dernier recours ⚠️ en raison de sa complexité.

📡 Avant d'allumer votre radio Meshtastic basée sur ESP32, attachez toujours l'antenne. Fonctionner sans antenne peut endommager la puce radio. Pour mettre à jour le client web Meshtastic sur meshtastic.local, un effacement complet et une réinstallation de l'appareil sont nécessaires. Cela garantit que vous obtenez la dernière interface web intégrée. Si vous souhaitez conserver vos paramètres, 💾 exportez votre configuration avant la réinstallation et importez-la ensuite.

⚙️ Le flashage du firmware ESP32 est une étape clé dans la configuration de votre appareil Meshtastic. Que vous utilisiez le 🌐 Web Flasher, le 💻 script CLI ou le 🔌 adaptateur série, assurez-vous de suivre les précautions de sécurité et choisissez la méthode qui correspond le mieux à votre niveau d'expérience.

🚀 Flashez l'appareil

  1. 🔗 Branchez votre appareil
  2. 🌍 Visitez flasher.meshtastic.org *nécessite 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 ESP32, vérifiez la connectivité avec l'appareil que vous vous apprêtez à flasher. Suivez les étapes décrites ci-dessous pour vérifier la connexion de l'appareil et, si nécessaire, installez les pilotes USB appropriés pour votre carte ESP32. Si vous devez installer des pilotes, n'oubliez pas de 🔄 redémarrer votre ordinateur ensuite pour confirmer que l'installation des pilotes est terminée.

⚠️ NOTE : La carte T-Beam 0.7 est une version antérieure de la carte T-Beam ESP32. 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 versions de cartes T-Beam. Assurez-vous de sélectionner le firmware correct lors du flashage de votre ESP32 T-Beam 0.7 pour garantir un fonctionnement adéquat.

  • 📂 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 Homebrew est installé avec la commande suivante. S'il n'est pas installé, suivez les instructions sur le site Web de Homebrew 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érifier la connectivité avec la puce
  • 🐧 Sous 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...

⚠️ Avertissement : 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...

⬇️ Télécharger le firmware
  • 🌐 Rendez-vous sur la page de téléchargement 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 plus récentes et expérimentales qui incluent 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 la 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 ESP32. En particulier, la très utilisée radio T-BEAM de TTGO n'est pas appelée TTGO-Lora, qui est une carte ESP32 différente. Par conséquent, ne flashez pas le build firmware TTGO-Lora sur un T-BEAM, car il ne fonctionnera pas correctement et pourrait causer des problèmes avec votre appareil ESP32.

❌ Si vous installez le mauvais firmware pour votre carte ESP32, le processus de flashage peut sembler s'être déroulé avec succès, mais l'appareil peut devenir non réactif, affichant un écran blanc s'il en possède un. Assurez-vous toujours de flasher la bonne version du firmware pour votre matériel ESP32 spécifique.

⚡ Veuillez noter que bien que ces appareils basés sur ESP32 soient généralement robustes et que les dommages ne soient pas garantis, il existe un risque d'endommagement du module radio embarqué et des périphériques si les directions des broches GPIO sont mal configurées lors du flashage du firmware. Le choix correct du firmware est crucial pour maintenir la fonctionnalité et la sécurité de votre appareil ESP32 Meshtastic.

🐧 Linux & 🍏 macOS
⬇️ Installer
💻 ./device-install.sh -f firmware-BOARD-VERSION.bin
⬇️ Télécharger le firmware
  • 🌐 Rendez-vous sur la page de téléchargement Meshtastic pour obtenir le dernier firmware.
  • 📂 Faites défiler jusqu'à la section Firmware et choisissez l'une des options suivantes :
  1. Télécharger Stable : Pour les versions stables et bien testées.
  2. 🧪 Télécharger Alpha : Pour les versions expérimentales avec les dernières fonctionnalités.
  • 📄 Sur la page de publication GitHub, faites défiler jusqu'à Assets et développez-la.
  • 🔎 Identifiez le firmware correct pour votre appareil (par ex. firmware-esp32s3 pour les cartes ESP32-S3).
  • 💾 Téléchargez le fichier et notez son emplacement (généralement ~/Downloads).
📂 Accéder au Répertoire du Firmware
💻 Ouvrez un terminal et allez dans le répertoire où votre firmware a été téléchargé :
📂 cd ~/Downloads/firmware-esp32s3-X.X.X.xxxxxxx/
⚠️ REMARQUE : Remplacez esp32s3 et la version par votre fichier réel.
⚡ Installer ou Mettre à Jour le Firmware
🛠 Suivez les instructions ci-dessous pour votre système d'exploitation :
📌 Important :

⚠️ Installez toujours le firmware correct pour votre carte ESP32. Ne confondez pas T-BEAM avec TTGO-Lora.

❌ Un firmware incorrect peut être flashé mais laisser l'appareil non réactif (écran blanc).

⚡ Des configurations GPIO incorrectes lors du flashage peuvent endommager le module radio. Choisissez avec soin.

🐧 Linux & 🍏 macOS
⬇️ Installer
💻 ./device-install.sh -f firmware-BOARD-VERSION.bin
🔄 Mettre à jour
💻 ./device-update.sh -f firmware-BOARD-VERSION-update.bin
🌐 Utiliser --web pour inclure le Web Client intégré.
🪟 Windows
⬇️ Installer
💻 esptool.exe --chip esp32 write_flash -z 0x1000 firmware-BOARD-VERSION.bin
🔄 Mettre à jour
💻 esptool.exe --chip esp32 write_flash -z 0x1000 firmware-BOARD-VERSION-update.bin
💻 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.

🔌 Connectez et configurez l'appareil

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

🔧 Flashage avec un adaptateur série externe

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

⚙️ Processus de flashage

📌 Situations pouvant nécessiter l'utilisation d'un adaptateur USB to Serial externe :
  • ⚠️ En raison de la pénurie actuelle de puces, des appareils récemment acquis comme le TTGO T-Beam peuvent être équipés de puces USB to Serial adapter anciennes ou non standard, qui peuvent être peu fiables dans certaines situations.
  • ❌ Certains appareils peuvent présenter des puces USB to Serial défectueuses, entraînant des problèmes de communication.
  • 🔗 Appareils spécifiques, tels que le Hydra (cible Meshtastic-DIY)
🔌 Adaptateurs USB Série

🛠 Il existe de nombreuses options d'ESP32 adapter sur le marché, mais il est conseillé de choisir un adaptateur utilisant la puce Silicon Labs CP2102, reconnue pour sa fiabilité et son statut de standard industriel pour le flashage ESP32. L'adaptateur basé sur CP2102 assure une communication USB-série stable, essentielle pour un flashage du firmware réussi.

🔌 Commencez par brancher le CP2102 adapter à votre ordinateur sans connecter d'appareils ESP32 pour le moment. Assurez-vous que les pilotes USB nécessaires pour l'adaptateur sont installés sur votre ordinateur. Pour les utilisateurs Windows, les pilotes CP2102 appropriés devraient généralement s'installer automatiquement, permettant une détection fluide des appareils ESP32 et un téléversement fiable du firmware.

Connexion de l'adaptateur à l'appareil
ℹ️ NOTE : Il existe plusieurs méthodes pour connecter les broches de l'adaptateur à l'appareil cible, notamment en pressant des jumpers contre les contacts ou en utilisant des pogo pin jigs. Ce tutoriel met en avant l'utilisation de headers Dupont décalés soudés sur les broches GPIO concernées et connectés avec des jumpers.
⚠️ 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, n'occupe les ports COM, ou essayer de redémarrer votre système.

🔌 Connectez et configurez 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 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 OTA du firmware depuis un appareil mobile via Bluetooth, permettant des mises à jour transparentes sans besoin de connexions physiques.
  • 🧹 Réinitialisation d'usine : Avant d'installer un nouveau firmware, vous pouvez envisager d'effectuer une réinitialisation d'usine pour effacer 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 directe SWDIO avec un Raspberry Pi comme outil de flashage.

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

💻 Flasher l'appareil

  • 🌐 Vous pouvez maintenant utiliser le Meshtastic Web Flasher pour télécharger et transférer le firmware vers vos appareils basés sur nRF52 ou RP2040. Sinon, vous pouvez suivre les instructions ci-dessous pour télécharger et installer le firmware.
  • 🧹 Si vous avez récemment effectué une Réinitialisation d'usine, votre appareil pourrait démarrer automatiquement en mode bootloader. Vous pouvez alors passer directement à « Copier le firmware approprié... » pour votre appareil spécifique ci-dessous :
🔵 nRF52
  1. ⬇️ Téléchargez et décompressez le dernier firmware depuis les Téléchargements Meshtastic.
  2. 🔌 Connectez votre appareil à votre ordinateur à l'aide d'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) du dossier de la version vers ce lecteur.
  7. ✅ Une fois la copie du fichier terminée, l'appareil va redémarrer et installer le firmware Meshtastic.
🟣 RP2040
  1. ⬇️ Téléchargez et décompressez le dernier firmware depuis les Téléchargements Meshtastic.
  2. 🔘 Maintenez enfoncé le bouton BOOTSEL, puis connectez l'appareil à votre ordinateur à l'aide d'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) du dossier de 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 d'avoir le RAK4631 et non le RAK4631-R. Sinon, vous devrez changer le bootloader. Les instructions sont disponibles ici.
  2. ⚠️ Les versions anciennes du firmware peuvent conserver des données obsolètes, provoquant des boucles de plantage. Si vous rencontrez des problèmes lors de la mise à niveau, effectuez une réinitialisation d'usine avant le flashage.

🔌 Connectez et configurez 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 les mises à jour OTA du firmware via Bluetooth. ⚠️ Les anciens bootloaders T-Echo ne supportent pas OTA.
⚠️ Attention : les mises à jour OTA comportent un risque plus élevé de échec. En cas d'échec, votre appareil peut devenir non fonctionnel et nécessiter une récupération physique.

🤖 Android

⚠️ La dernière application nRF DFU (v2.3.0) est incompatible. Utilisez nRF Connect App v4.24.3 depuis Nordic GitHub.
  1. ⬇️ Téléchargez le firmware depuis Meshtastic Downloads ou GitHub.
  2. 📂 Décompressez le dossier du firmware.
  3. 📱 Ouvrez l'application nRF Connect → onglet SCANNER → CONNECTEZ l'appareil.
  4. 🔗 Si affiche DISCONNECT, continuez ; si CONNECT, appuyez dessus.
  5. ⚙️ Appuyez sur l'icône DFU (en haut à droite).
  6. 📦 Sélectionnez "Distribution Packet (ZIP)" → OK.
  7. 📥 Choisissez le fichier firmware se terminant par -ota.zip.
  8. ⏳ La mise à jour démarre automatiquement (peut être lente).
  9. ✅ L'appareil redémarre après la mise à jour.

🍎 Apple

📲 Mises à jour OTA disponibles via nRF Device Firmware Update App sur iOS/iPadOS.
  1. ⬇️ Téléchargez le firmware depuis Meshtastic Downloads, GitHub, ou directement via l'application.
  2. 📂 Décompressez le dossier du firmware.
  3. 📱 Ouvrez l'application nRF DFU et sélectionnez le fichier firmware correct (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 via Bluetooth. Pour éviter cela, tapez périodiquement sur 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 la réussite en ajustant les paramètres des paquets :
  1. ⚙️ Allez dans les paramètres et activez "Notification de réception des paquets".
  2. 🔽 Changez "Nombre de paquets" pour une valeur plus basse ; certains utilisateurs ont réussi avec "5".

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

  • 💾 Meshtastic utilise la bibliothèque littlefs pour stocker la configuration, les logs et d'autres données dans la mémoire flash interne des appareils nRF52 et RP2040. La mise à jour du firmware n'efface pas ces données, ce qui peut poser problème si les formats changent entre les versions.
  • 🌐 Vous pouvez utiliser le Meshtastic Web Flasher pour effacer d'usine vos appareils. Sélectionnez votre carte et cliquez sur l'icône 🗑️ pour effacer. Sinon, suivez les instructions ci-dessous.

🔵 nRF52

Pour réinitialiser le stockage flash sur votre carte nRF52 :
  1. ⬇️ Téléchargez et décompressez le dernier firmware depuis la page de téléchargements Meshtastic.
  2. 🔌 Connectez votre appareil via USB.
  3. 🔁 Double-cliquez sur le bouton reset pour entrer en mode bootloader.
  4. 💻 Un nouveau lecteur est monté (Windows/Mac/Linux).
  5. 📂 Le lecteur contient : CURRENT.UF2, INDEX.HTM, INFO_UF2.TXT.
  6. 📝 Ouvrez INFO_UF2.TXT et notez la valeur SoftDevice.
  7. 📥 Copiez le fichier UF2 d'effacement usine correct (Meshtastic_nRF52_factory_erase...) sur le lecteur. L'appareil redémarre.
  8. 💻 Exécuter meshtastic --noproto dans le terminal.
  9. ✅ Vous devriez voir : Formatage... Terminé.
Une fois effacé, installez le dernier firmware sur un système de fichiers propre.

🟣 RP2040

Pour réinitialiser le stockage flash sur votre carte RP2040 :
  1. ⬇️ Télécharger flash_nuke.uf2.
  2. 🔘 Maintenez BOOTSEL enfoncé et connectez via USB.
  3. 💻 La carte se monte en tant que RPI-RP2.
  4. 📥 Copier flash_nuke.uf2 sur le lecteur.
  5. ✅ La carte redémarre et la mémoire flash est effacée.
Après l'effacement, installez le dernier firmware sur un système de fichiers propre.

🔄 Conversion du RAK4631-R en RAK4631

ℹ️ La seule différence entre RAK4631-R (RUI3) et RAK4631 (Arduino) est le bootloader ; le matériel est identique.
📌 Meshtastic nécessite le bootloader Arduino. La conversion est un processus unique.
Voici deux méthodes pour flasher le bootloader :

💻 Mise à jour du firmware USB (DFU)

  1. ⬇️ Installez Python.
  2. ⬇️ Installez adafruit-nrfutil.
📦 pip3 install adafruit-nrfutil
  • 🧹 Vous pouvez maintenant utiliser le Meshtastic Web Flasher pour effacer en usine vos appareils basés sur nRF52 ou RP2040. Visitez le flasher, sélectionnez votre carte, et cliquez sur l'icône 🗑️ poubelle à droite du bouton Flash. Cela ouvrira une boîte de dialogue pour initier la procédure d'effacement. Sinon, 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 (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 fichier INFO_UF2.TXT dans un éditeur de texte et notez la valeur SoftDevice.
  7. 📥 Localisez le fichier dans le firmware téléchargé qui correspond à votre version de SoftDevice (7.x.x ou 6.x.x). Utilisez soit Meshtastic_nRF52_factory_erase_v3_S140_7.3.0.uf2 soit Meshtastic_nRF52_factory_erase_v3_S140_6.1.0.uf2, et copiez-le sur le lecteur. L'appareil redémarrera.
  8. 💻 Avec le Meshtastic CLI installé, ouvrez Terminal/Console et saisissez : meshtastic --noproto.
  9. ✅ Vous devriez voir le message : Formatage... Terminé.
Une fois effacé, vous pouvez installer le dernier firmware Meshtastic sur un système de fichiers 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 vers votre ordinateur.
  2. 🔘 Maintenez enfoncé 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. 📥 Copier le flash_nuke.uf2 fichier vers cet appareil.
  5. ✅ La carte redémarrera automatiquement et la mémoire flash sera effacée.
Après effacement, vous pouvez installer le dernier firmware Meshtastic sur un système de fichiers propre en cliquant sur le lien ci-dessous.

🔄 Conversion du RAK4631-R en RAK4631

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

💻 Mise à jour du firmware USB (DFU)

  1. ⬇️ Installez Python
  2. ⬇️ Installez adafruit-nrfutil
📦 pip3 install adafruit-nrfutil

 

👉 Vous devez compléter la première partie des instructions pour convertir le RAK4631-R en RAK4631, en particulier la section impliquant 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 la plus 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 flash 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 de 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 consultez 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 bootloader approprié. Voici les liens vers les packages 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. 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.
  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 est maintenant sur la dernière version du bootloader, et vous pouvez procéder à flasher le firmware.

⚠️ Méthode 2 : Utilisation de adafruit-nrfutil

⚠️ Attention : Contrairement aux uploads UF2, adafruit-nrfutil ne vérifie pas si vous avez le package bootloader correct pour votre appareil. Flasher le mauvais bootloader pourrait potentiellement rendre votre appareil inutilisable. Vérifiez toujours le checksum SHA256 avant de continuer.
📌 Ces instructions supposent que Python et pip sont déjà installés. Sinon, téléchargez et installez la dernière version de Python (avec pip) depuis Python.org.
📦 En fonction de votre appareil, choisissez le package bootloader approprié. Voici les liens :
  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 approprié.
  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. Remplacez /dev/ttyACM0 par le port correct (les utilisateurs Windows peuvent utiliser COMx) :
⚡ adafruit-nrfutil --singlebank --touch 1200 --verbose dfu serial --package <fichier téléchargé>.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, vous permettant de poursuivre avec le flashage du firmware.

🛠 Méthode 3 : Utilisation d’un débogueur

🔧 Si les méthodes ci-dessus ne fonctionnent pas, et que votre matériel le supporte (c’est-à-dire qu’il possède les 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 un appareil externe pouvant se connecter via « SWDIO ». Il existe des appareils spécialisés comme le RAKDAP1 conçus à cet effet. De nombreux utilisateurs trouvent également qu'un Raspberry Pi est une option 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

⚡ 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 IDR », cela signifie probablement que les fils sont connectés aux mauvais emplacements.

⬇️ Télécharger le firmware

Référez-vous aux instructions de votre matériel pour localiser le firmware approprié pour votre appareil. La plupart des appareils suivant ce guide nécessitent un fichier .hex. Ensuite, 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.