Meshtastic Guide - Hvordan man Flasher Meshtastic Firmware

Flashing af ESP32-enheder

Web Flasher kræver enten Chrome eller Edge browsere, men er en fremragende mulighed for hurtigt at flashe enheder. Denne metode anbefales kraftigt til firmware flashing, især for nye brugere af projektet, da den er brugervenlig.
CLI Scriptet betragtes som "manuel proces" til flashing af firmware.
Flashing af din enhed med en ekstern seriel adapter bør kun forsøges som en sidste udvej, hvis ingen andre metoder har været succesfulde.
NOTE: Webklienten på meshtastic.local opdateres kun gennem en fuld sletning og geninstallation af enheden. Hvis du vælger en geninstallation, får du den nyeste inkluderede webgrænseflade. For at bevare dine indstillinger kan du eksportere din konfiguration før geninstallationen og derefter indlæse den igen bagefter.
ADVARSEL: Sørg for ikke at tænde radioen uden først at tilslutte antennen! Hvis du ikke gør det, kan det beskadige radiochippen!

Brug af Meshtastic Web Flasher

Flash enhed

  1. Tilslut din enhed
  2. Besøg flasher.meshtastic.org *kræver Chrome eller Edge browser
  3. Følg instruktionerne

Tilslut og opsæt enhed

Når du har flash'et Meshtastic firmware på enheden, kan du gå videre til den indledende konfiguration.

Flashing af firmware via CLI

Forbindelsesverifikation

Før du flasher din enhed, skal du verificere forbindelsen til den enhed, du er ved at flashe. Følg trinene nedenfor for at kontrollere forbindelsen og, hvis nødvendigt, installere de relevante drivere. Hvis du skal installere drivere, husk at genstarte din computer bagefter for at bekræfte, at installationen er fuldført.
NOTE: T-Beam 0.7 board er en tidligere version af T-Beam boardet. På grund af designændringer i efterfølgende iterationer kræver dette board en specifik firmware-fil, som er forskellig fra dem, der bruges af andre T-Beam boards.
  • Brug firmware-tbeam0.7-X.X.X.xxxxxxx.bin til T-Beam 0.7.
  • firmware-tbeam-X.X.X.xxxxxxx.bin er inkompatibel.
For alle andre T-Beam boards, gennemgå venligst ressourceafsnittet for at vælge den korrekte firmware.

Kommandolinjeinstruktioner

Installer nødvendige software
Linux
Bekræft om du har python3 og pip installeret ved at bruge følgende kommando

 python3 --version

 pip3 --version

Hvis python3 er ikke installeret, kan du installere det ved at bruge

 sudo apt-get update

 sudo apt-get install python3

Hvis pip er ikke installeret, kan du installere det ved at bruge
 sudo apt-get install python3-pip
Installer esptool
 pip3 install --upgrade esptool
MacOS
OS X leveres med Python2.7 forudinstalleret, men det inkluderer ikke pip. Følgende instruktioner bruger Homebrew til at installere Python3, som inkluderer pip3. På macOS vil du bruge pip3 i stedet for pip.
NOTE: Tjek om du har Homebrew installeret med følgende kommando. Hvis det ikke er installeret, følg instruktionerne på Homebrew website før du fortsætter.
 brew -v
Bekræft om du har python3 og pip installeret ved at bruge følgende kommando

 python3 --version

 pip3 --version

Hvis python3 ikke er installeret, kan du installere det ved at bruge kommandoen
 brew install python3
Bekræft at pip3 blev installeret sammen med python3
 pip3 -v
Installer esptool
 pip3 install --upgrade esptool
Windows
  • Download og installer Python. Under installationsprocessen skal du sikre dig, at du vælger muligheden for at Tilføj Python X.Y til PATH.
  • Download og installer Git Bash (eller en anden passende shell), og udfør alle efterfølgende kommandoer fra den shell.
Bekræft om du har python3 og pip installeret ved at bruge følgende kommando

 py --version

 pip --version

Installer esptool
 pip3 install --upgrade esptool
Kontroller forbindelsen med chippen
  • På Linux og macOS kan det være nødvendigt eksplicit at erklære esptool som en .py script. Brug kommandoen esptool.py chip_id for at gøre dette, afhængigt af dit miljø.
  • På Windows skal du eksplicit erklære esptool som en .py script ved at bruge kommandoen esptool.py chip_id for at sikre korrekt funktionalitet.
Tilslut radioen til din computer med et data-USB-kabel. Brug følgende kommando for at bekræfte, at din enhed kommunikerer med din computer:
Kommando
 esptool chip_id
Forventet output

 # Du bør se et resultat lignende dette:

 mydir$ esptool chip_id

 esptool.py v2.6

 Fundet 2 serielle porte

 Seriel port /dev/ttyUSB0

 Forbinder....

 Registrerer chip type... ESP32

 Chip er ESP32D0WDQ6 (revision 1)

 Funktioner: WiFi, BT, Dual Core, 240MHz, VRef kalibrering i efuse, Coding Scheme None

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

 Uploader stub...

 Kører stub...

 Stub kører...

 Advarsel: ESP32 har ingen Chip ID. Læser

 MAC i stedet. MAC: 24:6f:28:b5:36:71

 Hard reset via RTS-pin...

Download firmware
  • Naviger til Meshtastic Downloads Page for at hente den nyeste firmware.
  • Rul ned til Firmware-sektionen og vælg en af følgende muligheder baseret på dine præferencer:
  1. Download Stable: For stabile, veltestede udgivelser.
  1. Download Alpha: For nyere, eksperimentelle udgivelser, der inkluderer de nyeste funktioner.
  • Når du bliver omdirigeret til GitHub release-siden, rul ned til sektionen Assets og udvid den.
  • Identificer den passende firmware til din enhed i henhold til dens arkitektur (f.eks. firmware-esp32s3 for ESP32-S3-baserede enheder som Heltec V3).
  • Download filen og noter dens placering på dit system, som typisk er i din ~/Downloads mappe.
Få adgang til firmwaremappen
Åbn en terminal og skift til den mappe, hvor din firmware blev downloadet (ved hjælp af cd kommando). Mappenavnet svarer normalt til arkitekturen og firmwareversionen angivet i zip-filen. For eksempel:
 cd ~/Downloads/firmware-esp32s3-X.X.X.xxxxxxx/
BEMÆRK: Sørg for at du erstatter esp32s3 og versionsnummeret med de værdier, der svarer til den fil, du har downloadet.
Installer eller opdater firmware
Følg nu instruktionerne nedenfor for dit operativsystem for at installere eller opdatere firmwaren til dit specifikke board:
Bemærk venligst før du begynder:
Vær yderst forsigtig med at installere den korrekte firmwarefil til dit board. Specifikt refereres det meget brugte 'T-BEAM' radio fra TTGO ikke som 'TTGO-Lora' (som er et andet board). Derfor må du ikke flash'e 'TTGO-Lora' buildet på en T-BEAM, da det ikke vil fungere korrekt. Hvis du installerer den forkerte firmware til din enhed, kan flashing-processen synes at være gennemført med succes, men enheden kan blive uresponsiv og vise en blank skærm, hvis den har en. Sørg for at flash'e den korrekte version. Bemærk venligst, at selvom disse enheder generelt er robuste og skade ikke er garanteret, er der en risiko for skade på den indbyggede radio og perifere enheder, hvis GPIO-pinretningerne er forkerte.
Linux & macOS
Installer
 ./device-install.sh -f firmware-BOARD-VERSION.bin
Opdater
 ./device-update.sh -f firmware-BOARD-VERSION-update.bin
Brug --web mulighed for at inkludere den indlejrede Web Client ved installation af firmwaren.
Windows
Installer
 device-install.bat -f firmware-BOARD-VERSION.bin
Opdater
 device-update.bat -f firmware-BOARD-VERSION-update.bin
Brug --web mulighed for at inkludere den indlejrede Web Client ved installation af firmwaren.

Tilslut og opsæt enhed

Når du med succes har flash'et Meshtastic firmwaren på enheden, kan du fortsætte med den indledende konfiguration.

Flashing med en ekstern seriel adapter

BEMÆRK: Disse oplysninger vil sandsynligvis kun være nyttige, hvis du allerede har forsøgt at gennemgå forudsætningerne og processerne beskrevet i manuelt flashing

Flashing proces

Situationer, der kan nødvendiggøre brug af en ekstern USB til Serial Adapter:
  • På grund af den igangværende chipmangel kan nyligt erhvervede enheder som TTGO T-Beam være udstyret med ældre eller ikke-standard USB til Serial adapter chips, som kan være upålidelige i visse situationer.
  • Nogle enheder kan have defekte USB til Serial chips, hvilket kan føre til kommunikationsproblemer.
  • Specifikke enheder, såsom Hydra (Meshtastic-DIY mål)
USB Serial Adapters
Der findes mange muligheder på markedet, men det anbefales at vælge en adapter, der bruger Silicon Labs CP2102 chip, kendt for sin pålidelighed som industristandard.
Begynd med at tilslutte adapteren til din computer uden at forbinde nogen enheder på dette tidspunkt. Sørg for, at de nødvendige drivere til adapteren er installeret på din computer; for Windows-brugere bør de korrekte drivere normalt installeres automatisk.
Forbindelse af adapter til enheden
BEMÆRK: Der findes flere metoder til at forbinde adapterpindene til mål-enheden, herunder at presse jumpers mod kontakter eller bruge pogo pin jigs. Denne vejledning fremhæver brugen af offset Dupont-stik loddet på de relevante GPIO-pinde og forbundet med jumpers.
Frakobl din USB til Serial Adapter fra computeren, før du starter denne proces.
  1. Forbind RX-pinden på adapteren til TX-pinden på enheden.
  2. Forbind TX-pinden på adapteren til RX-pinden på enheden.
  3. Forbind en GND-pin på adapteren til GND-pinden på enheden.
  4. Forbind enten 5V-pinden på adapteren til 5V-pinden på enheden (som vist) eller 3,3V-pinden på adapteren til 3,3V-pinden på enheden.
  5. Forbind GPIO 0 til GND på enheden med en jumper. (Dette sætter enheden i flash-tilstand ved opstart.) Eksempel på ledningsføring med en T-Beam.
  1. Tilslut enheden til en USB-port på computeren.
  2. Fjern jumperen, der forbinder GPIO 0 til GND.
Flashing af enheden
Efter at have gennemført ovenstående trin, bør din enhed være i flash-tilstand. Du kan nu bruge manuel metode til at flashe din enhed.
Når flashing-processen er færdig, nulstil din enhed (brug RST-knappen, hvis den er tilgængelig). Hvis du har Meshtastic Python CLI installeret, kan du køre meshtastic --noproto for at genoprette forbindelsen til enheden via adapteren og se seriel output for at sikre, at Meshtastic blev installeret korrekt.
Fejlfinding af flashing-processen
Du kan støde på en COM-port tilladelsesfejl, mens du kører de manuelle enhedsinstallationsscripts, hvilket kan skyldes forskellige problemer.
For at løse dette kan det være nødvendigt at køre processen som administrator, sikre at ingen anden software, såsom Cura, monopoliserer COM-porte, eller prøve at genstarte dit system.

Tilslut og opsæt enhed

Når du har flash'et Meshtastic firmware på enheden, kan du gå videre til den indledende konfiguration.

Flashing af nRF52 & RP2040-enheder

  • Firmwareopgraderingsproces for nRF52 og RP2040-enheder: Enheder baseret på nRF52 og RP2040 arkitekturer tilbyder en enkel firmwareopgraderingsproces, som ikke kræver nogen driver- eller softwareinstallation på nogen platform.
  • Træk & slip: Disse enheder bruger træk & slip installationsmetoden til at installere firmwareudgivelser. Træk blot firmwarefilen over på enheden i din filudforsker.
  • Over-The-Air (OTA) opdateringer: nRF52-enheder kan modtage OTA firmwareopdateringer fra en mobil enhed via Bluetooth, hvilket muliggør problemfri opdateringer uden behov for fysiske forbindelser.
  • Fabrikssletning: Før du installerer ny firmware, kan du overveje at udføre en Fabrikssletning for at rydde eksisterende data, som kan ændre format eller placering mellem versioner.
  • Konvertering af RAK4631-R til RAK4631: Hvis din enhed ikke leveres med Arduino bootloader, skal du udføre en konvertering for at sikre kompatibilitet.
  • Brug af Raspberry Pi som SWDIO Flash-værktøj: Hvis din enhed ikke kan flashes via USB eller Bluetooth, er en alternativ mulighed at bruge en direkte SWDIO-forbindelse med en Raspberry Pi som flashing-værktøj.

Træk-og-slip firmwareopdateringer til nRF52 & RP2040

Flash enhed

  • Du kan nu benytte Meshtastic Web Flasher til at downloade og overføre firmware til dine nRF52 eller RP2040-baserede enheder. Alternativt kan du følge instruktionerne nedenfor for at downloade og installere firmwaren.
  • Hvis du for nylig har gennemført en Factory Erase, kan din enhed automatisk starte op i bootloader-tilstand. Du kan derefter gå direkte til "Kopier den passende firmware..." for din specifikke enhed nedenfor:
nRF52
  1. Download og pak den nyeste firmware ud fra Meshtastic Downloads.
  2. Tilslut din enhed til din computer med et USB-datakabel.
  3. Tryk på reset-knappen på din enhed to gange (dette vil gå ind i bootloader-tilstand).
  4. Et nyt drev vil blive monteret på din computer (kompatibelt med Windows, Mac, Linux eller Android).
  5. Åbn dette drev, hvor du bør finde tre filer: CURRENT.UF2, INDEX.HTM, og INFO_UF2.TXT.
  6. Kopier den passende firmwarefil (firmware-DEVICE_NAME-X.X.X-xxxxxxx.uf2) fra release-mappen til dette drev.
  7. Efter filen er færdig med at kopiere, vil enheden genstarte og installere Meshtastic firmwaren.
RP2040
  1. Download og pak den nyeste firmware ud fra Meshtastic Downloads.
  2. Tryk og hold BOOTSEL-knappen nede, og tilslut derefter enheden til din computer med et USB-kabel.
  3. Et nyt drev vil blive monteret på din computer (kompatibelt med Windows, Mac, Linux eller Android).
  4. Åbn dette drev, hvor du bør finde to filer: INDEX.HTM og INFO_UF2.TXT.
  5. Kopier den passende firmwarefil (firmware-DEVICE_NAME-X.X.X-xxxxxxx.uf2) fra release-mappen til dette drev.
  6. Efter filen er færdig med at kopiere, vil enheden genstarte og installere Meshtastic firmwaren.
Mulige flashing edge cases
  1. Før flashing skal du sikre dig, at du har RAK4631 og ikke RAK4631-R. Hvis det ikke er tilfældet, skal du ikke bekymre dig. Hardwaren er den samme, men du skal ændre bootloaderen. Instruktioner til dette kan findes her.
  2. Ældre versioner af Meshtastic firmware kan indeholde forældede data, hvilket kan få enheder til at sidde fast i en nedbrudsloop under opstart. Hvis du oplever problemer med at opgradere din nRF52-enhed fra en tidligere version af Meshtastic, kan det være nødvendigt at udføre en komplet fabriksnulstilling af den interne flashhukommelse. Følg venligst guiden til at fabriksrydde din nRF52 enhed, før du fortsætter med at flash firmware.

Tilslut og opsæt enhed

Når du har flash'et Meshtastic firmware på enheden, kan du gå videre til den indledende konfiguration.

Over-the-Air (OTA) firmwareopdateringer for nRF52

nRF52-enheder fra RAK kan modtage OTA firmwareopdateringer fra en mobil enhed via bluetooth. Ældre T-Echo bootloaders understøtter ikke OTA.
advarsel: OTA firmwareopdateringer indebærer en højere risiko for fejl. Hvis opdateringsprocessen ikke lykkes, kan din enhed ende i en ikke-fungerende tilstand, hvilket kræver fysisk adgang for at gribe ind.

Android

På tidspunktet for denne skrivning er den seneste Android-udgivelse af nRF DFU-appen (v2.3.0) ikke kompatibel med Meshtastic firmware-opdateringer. Følg i stedet venligst instruktionerne nedenfor for at udføre en OTA-opdatering ved hjælp af nRF Connect App, specifikt version 4.24.3, som kan downloades fra Nordic Semiconductor GitHub page.
  1. Download den firmwareudgivelse, du ønsker at installere, fra Meshtastic Download Page eller Meshtastic GitHub.
  2. Udpak firmwaremappen.
  3. Åbn nRF Connect App og vælg CONNECT på din enhed fra SCANNER-fanen.
  4. Hvis grænsefladen viser DISCONNECT i øverste højre hjørne, fortsæt til trin 5. Hvis den siger CONNECT, vælg CONNECT.
  5. Tryk på DFU-ikonet i øverste højre hjørne af skærmen.
  6. Bekræft, at "Distribution Packet (ZIP)" er valgt, og vælg derefter OK.
  7. Vælg den passende enheds firmwarefil (som vil ende med -ota.zip).
  8. Opdateringen starter automatisk (bemærk, at denne proces kan være langsom).
  9. Når opdateringen er fuldført, genstarter enheden automatisk.

Apple

OTA firmware opdateringer er tilgængelige på iOS og iPadOS ved brug af nRF Device Firmware Update App, som kan downloades fra Apple App Store.
  1. Download den firmwareudgivelse, du ønsker at installere, fra Meshtastic Download Page, Meshtastic GitHub, eller direkte gennem iOS/iPadOS appen.
  2. Udpak firmwaremappen.
  3. Åbn nRF DFU App og vælg den korrekte enheds firmwarefil (som ender med -ota.zip).
  4. Forbind til din enhed.
  5. Upload firmwaren.
Vigtig note: iPhone's auto-lås funktion kan afbryde Bluetooth firmware upload. For at forhindre dette, tryk periodisk på skærmen eller indstil midlertidigt auto-lås til "Aldrig" under uploadprocessen for at sikre, at telefonen forbliver vågen og uploaden fuldføres uden afbrydelser.
Hvis opdateringen mislykkes, kan du forbedre succesraten ved at justere pakkens indstillinger:
  1. Gå til indstillinger og aktiver "Packets Receipt Notification."
  2. Skift "Number of Packets" til en lavere værdi; nogle brugere har haft succes med indstillingen "5".

Fabriksnulstilling for nRF52/RP2040-enheder

  • Meshtastic bruger littlefs-biblioteket til at gemme konfiguration, logs og andre data i den interne flashhukommelsenRF52 og RP2040 enheder. Det er vigtigt at bemærke, at opdatering af firmwaren ikke sletter disse ekstra data, hvilket kan føre til problemer, hvis formatet og placeringen af data ændres mellem versioner.
  • Du kan nu bruge Meshtastic Web Flasher til at fabriksformatere dine nRF52 eller RP2040-baserede enheder. Besøg flasheren, vælg dit board, og klik på skraldespandsikonet til højre for Flash-knappen. Dette åbner en dialog for at starte sletteproceduren. Alternativt kan du følge instruktionerne nedenfor.

nRF52

For at nulstille flash-lageret på dit nRF52 board, følg disse trin:
  1. Download og pak den nyeste firmware ud fra Meshtastic Downloads page.
  2. Tilslut din enhed til din computer med et USB-datakabel.
  3. Dobbeltklikreset-knappen på din enhed for at gå i bootloader-tilstand.
  4. Et nyt drev vil blive monteret på din computer (dette gælder for Windows, Mac eller Linux).
  5. Åbn dette drev, og du bør se tre filer: CURRENT.UF2, INDEX.HTM, og INFO_UF2.TXT.
  6. Åbn INFO_UF2.TXT fil i en teksteditor og bemærk SoftDevice værdi.
  7. Find filen inkluderet i den downloadede firmware, som matcher din SoftDevice hovedversionsnummer (enten 7.x.x eller 6.x.x). Brug enten Meshtastic_nRF52_factory_erase_v3_S140_7.3.0.uf2 eller Meshtastic_nRF52_factory_erase_v3_S140_6.1.0.uf2, og kopier den over på det nye drev. Enheden skulle derefter genstarte.
  8. Med Meshtastic CLI installeret, åbn din Terminal eller Konsol og indtast kommandoen: meshtastic --noproto.
  9. Du bør se beskeden: Formatering... Færdig.
Når enheden er blevet slettet, kan du fortsætte med at installere den nyeste Meshtastic firmware på et rent lagringsfilsystem ved at klikke på linket nedenfor.

RP2040

For at nulstille flashlageret på dit RP2040-board, følg disse trin:
  1. Download flash_nuke.uf2 fil til din computer.
  2. Tryk og hold BOOTSEL-knappen nede, og tilslut derefter boardet til din computer med et USB-kabel.
  3. Boardet skulle nu vises som en masselagerenhed på din computer, mærket som RPI-RP2.
  4. Kopier flash_nuke.uf2-filen til denne enhed.
  5. Boardet genstarter automatisk, og flashhukommelsen bliver slettet.
Efter enheden er blevet slettet, kan du fortsætte med at installere den nyeste Meshtastic firmware på et rent lagringsfilsystem ved at klikke på linket nedenfor.

Konvertering af RAK4631-R til RAK4631

Den eneste forskel mellem RAK4631-R (RUI3) og RAK4631 (Arduino) ligger i den bootloader, de leveres med; hardwaren er identisk.
Meshtastic kræver Arduino bootloader til RAK WisBlock nRF52-baserede boards. Denne konverteringsproces for bootloaderen skal kun udføres én gang.
Her er to metoder til at flashe bootloaderen:

USB Device Firmware Update (DFU)

  1. Installer Python
  2. Installer adafruit-nrfutil
 pip3 install adafruit-nrfutil
  1. Download den nødvendige bootloader: WisCore_RAK4631_Board_Bootloader.zip.
  2. Tilslut din RAK-enhed til din computer via USB.
  3. Flash bootloaderen.
 adafruit-nrfutil --verbose dfu serial --package ./WisCore_RAK4631_Board_Bootloader.zip -p /dev/ttyACM0 -b 115200 --singlebank --touch 1200
BEMÆRK: Navnet på den serielle port (/dev/ttyACM0) kan variere afhængigt af dit operativsystem. Sørg for at identificere det korrekte portnavn til din opsætning.
  1. Efter det, fortsæt med de almindelige flash instruktioner.
Yderligere RUI3 trin
Hvis ovenstående trin fejler med fejl som:

 Berørte seriel port COM11

 Åbnede seriel port COM11

 Starter DFU opgradering af type 2, SoftDevice størrelse: 0, bootloader størrelse: 39000, applikationsstørrelse: 0

 Sender DFU startpakke

 Timeout ved venten på bekræftelse fra enheden.

 Opgradering af mål mislykkedes. Fejlen er: Ingen data modtaget på seriel port. Kan ikke fortsætte.

Du skal fuldføre den første del af instruktionerne for konvertering af RAK4631-R til RAK4631, specifikt afsnittet der involverer AT+BOOT kommandoen.

Debugger

Denne konvertering kræver brug af enten en DAPLink eller J-Link. Den mest overkommelige og lettilgængelige mulighed er RAKDAP1.
  1. Installer Python
  2. Installer pyOCD
 pip3 install pyocd
  1. Download den nødvendige bootloader: WisCore_RAK4631_Board_Bootloader.hex.
  2. Tilslut RAKDAP som angivet nedenfor:
  1. Flash bootloaderen
 pyocd flash -t nrf52840 .\WisCore_RAK4631_Board_Bootloader.hex
  1. Fortsæt med de standard flashing-instruktioner.
Alternative flashing-metoder er beskrevet her.

Opdatering eller gendannelse af bootloaderen på nRF52-enheder

Hvis du oplever vanskeligheder med at opdatere eller flashe nyere versioner af Meshtastic firmware, og din nRF52-enhed ikke kører på den nyeste bootloader-version, kan opdatering af bootloaderen hjælpe med at løse disse problemer.
For at bekræfte versionen af bootloaderen, der aktuelt er på din enhed, skal du aktivere DFU-tilstand. Åbn derefter det monterede drev, der vises på din computer, og tjek INFO_UF2.TXT-filen.
Her er trinnene til at opdatere din bootloader.

Metode 1: Opdatering med UF2-filen (Anbefalet)

Afhængigt af din enhed skal du vælge det passende bootloader-pakke. Nedenfor er links til bootloader-pakkerne:
  1. Download den korrekte UF2 Bootloader-fil.
  2. Tilslut din enhed til din computer med et USB-kabel.
  3. Aktivér bootloader-tilstand ved hurtigt at dobbelttrykke på RESET-knappen på din enhed. For Seeed Tracker 1000-E, tryk og hold brugerknappen nede, og tilslut derefter hurtigt USB-kablet til MagSafe-porten to gange. Enheden skulle dukke op som et flytbart drev på din computer.
  4. Træk og slip den UF2-fil, du har downloadet, ind i det flytbare drev. Enheden opdaterer automatisk bootloaderen og nulstiller.
  5. Når enheden nulstilles, er opdateringen fuldført. Din enhed kører nu på den nyeste bootloader-version, og du kan fortsætte med at flashe firmwaren.

Metode 2: Brug af adafruit-nrfutil

Advarsel: I modsætning til UF2 uploads verificerer adafruit-nrfutil ikke, om du har den korrekte bootloader-pakke til din enhed. At flashe den forkerte bootloader kan potentielt ødelægge din enhed. Sørg derfor for at tjekke SHA256 checksum før du fortsætter med flashing-processen.
Disse instruktioner antager, at Python og pip allerede er installeret på dit system. Hvis de ikke er, skal du downloade og installere den nyeste version af Python (som inkluderer pip) fra Python.org.
Baseret på din enhed skal du vælge den passende bootloader-pakke. Nedenfor er links til de tilgængelige bootloader-pakker:
  1. Åbn en terminal eller kommandoprompt og installer adafruit-nrfutil ved at køre følgende kommando:
bash
 pip install adafruit-nrfutil
  1. Hent den korrekte ZIP-pakke.
  2. Tilslut din enhed til din computer med et USB-kabel.
  3. I terminalen eller kommandoprompten skal du navigere til den mappe, hvor du har downloadet bootloader ZIP-pakken, og køre følgende kommando. Sørg for at erstatte /dev/ttyACM0 med den korrekte port til din enhed (Windows-brugere kan bruge COMx):
 adafruit-nrfutil --singlebank --touch 1200 --verbose dfu serial --package .zip -p /dev/ttyACM0 -b 115200
  1. Når processen er fuldført, er opdateringen færdig. Din enhed kører nu med den nyeste bootloader-version, hvilket giver dig mulighed for at fortsætte med at flashe firmwaren.

Metode 3: Brug af en Debugger

Hvis de ovennævnte metoder ikke virker, og dit hardware understøtter det (dvs. har de nødvendige SWD-pins), kan du bruge en debugger som en DAPLink eller J-Link til at flashe bootloaderen direkte. Se venligst Debugger Instructions for et eksempel med RAK4631.

Brug af SWDIO til flashing med en Raspberry Pi

De fleste Meshtastic-enheder kan nemt flashes via USB. Dog kræver nogle enheder (f.eks. Seeed WM1110 Dev Kit) brug af en ekstern enhed, der kan forbindes via "SWDIO." Der findes specialiserede enheder som RAKDAP1 designet til dette formål. Mange brugere finder dog en Raspberry Pi som en mere bekvem løsning.
Denne artikel giver instruktioner om, hvordan man bruger en Raspberry Pi som et SWDIO Flash Tool.

Ledningsopsætning

Det første skridt er at forbinde to ledninger mellem din Raspberry Pi og SWDIO ports på din NRF52-baseret enhed.
Forbind GPIO pin 11 på din Raspberry Pi til CLK pin på Meshtastic-enheden, og forbind GPIO pin 8 på din Raspberry Pi til DIO pin på Meshtastic-enheden.
Sørg for at bekræfte, at GPIO-numrene er korrekte.
Strømforsyn din Raspberry Pi ved at forbinde den til en USB-strømkilde, og giv også strøm til Meshtastic-enheden.

Installer OpenOCD-software

Du kan bruge OpenOCD til at håndtere SWDIO-forbindelsen med Meshtastic-enheden. Installer det på din 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

Bekræft forbindelse

Før du arbejder med firmwaren, lad os forsøge at oprette forbindelse til NRF52-baseret enhed ved hjælp af SWDIO. Al nødvendig konfiguration kan findes i OpenOCD repository.
 $ openocd -f ./openocd/tcl/interface/raspberrypi-native.cfg -c "transport select swd" -f openocd/tcl/target/nrf52.cfg -s tcl
Det første flag angiver Raspberry Pi som din værtsmaskine, transporten er sat til SWDIO, og det sidste flag indikerer, at du forbinder til en nRF52-baseret chip. Du bør se output, der ligner dette:

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

 Licensed under GNU GPL v2

 For fejlrapporter, læs

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

 srst_only separate srst_gates_jtag srst_push_pull connect_deassert_srst

 swd

 Info : Listening on port 6666 for tcl connections

 Info : Listening on port 4444 for telnet connections

 Info : BCM2835 GPIO JTAG/SWD bitbang driver

 Info : clock speed 100 kHz

 Info : SWD DPIDR 0x2ba01477

 Info : [nrf52.cpu] Cortex-M4 r0p1 processor detected

 Info : [nrf52.cpu] target has 6 breakpoints, 4 watchpoints

 Info : [nrf52.cpu] Examination succeed

 Info : [nrf52.cpu] starting gdb server on 3333

 Info : Listening on port 3333 for gdb connections

 Info : accepting 'telnet' connection on tcp/4444

Hvis du støder på beskeden “Error connecting DP: cannot read IDR,” betyder det sandsynligvis, at ledningerne er tilsluttet de forkerte steder.

Download firmware

Se instruktionerne til dit hardware for at finde den passende firmware til din enhed. De fleste enheder, der følger denne vejledning, kræver en .hex-fil. Derefter kopierer du firmware-filen til din Raspberry Pi.

Flash firmware

Efter at have startet OpenOCD, kan du oprette forbindelse til din Meshtastic-enhed via telnet. Flashing af enheden er ligetil; kør blot et par kommandoer inden for telnet-sessionen:

 $ telnet 127.0.0.1 4444

 Forsøger 127.0.0.1...

 Forbundet til 127.0.0.1.

 Escape-tegn er '^]'.

 Åbn On-Chip Debugger

 > init

 > reset init

 > halt

 > nrf5 mass_erase

 > program firmware.hex verify

 > reset

 > exit 0

Frakobl strømmen, og tilslut den igen efter flashing.

Etabler forbindelse

Tillykke! Du skulle nu kunne oprette forbindelse til din enhed via Bluetooth i Meshtastic-appen.

 

Sidebjælke

Seneste indlæg

Denne sektion indeholder i øjeblikket ikke noget indhold. Tilføj indhold til denne sektion ved hjælp af sidepanelet.

Tilmeld dig vores nyhedsbrev

Få de seneste oplysninger om vores produkter og særlige tilbud.