Przewodnik Meshtastic - Jak wgrać oprogramowanie układowe Meshtastic

⚡ Flashowanie urządzeń ESP32 z oprogramowaniem Meshtastic

🔧 Flashowanie urządzeń ESP32 z oprogramowaniem Meshtastic można wykonać na kilka sposobów. Najbardziej polecaną metodą jest 🌐 Web Flasher, który działa z przeglądarkami Chrome lub Edge. Jest 👌 przyjazny dla użytkownika i idealny dla początkujących, którzy chcą szybko flashować swoje płytki ESP32. 💻 CLI Script to ręczna metoda flashowania oprogramowania i jest lepsza dla zaawansowanych użytkowników zaznajomionych z narzędziami wiersza poleceń. Jeśli zarówno Web Flasher, jak i CLI Script zawiodą, można użyć 🔌 zewnętrznego adaptera szeregowego, ale powinno to być podejmowane tylko jako ostateczność ⚠️ ze względu na jego skomplikowanie.

📡 Przed włączeniem radia Meshtastic opartego na ESP32 zawsze podłącz antenę. Praca bez anteny może uszkodzić układ radia. Aby zaktualizować klienta webowego Meshtastic pod adresem meshtastic.local, konieczne jest pełne wyczyszczenie i ponowna instalacja urządzenia. Zapewnia to dostęp do najnowszego zintegrowanego interfejsu webowego. Jeśli chcesz zachować swoje ustawienia, 💾 wyeksportuj konfigurację przed reinstalacją i zaimportuj ją po niej.

⚙️ Flashowanie oprogramowania ESP32 to kluczowy krok w konfiguracji urządzenia Meshtastic. Niezależnie od tego, czy używasz 🌐 Web Flasher, 💻 CLI Script czy 🔌 adaptera szeregowego, pamiętaj, aby przestrzegać zasad bezpieczeństwa i wybrać metodę, która najlepiej odpowiada Twojemu poziomowi doświadczenia.

🚀 Flashuj urządzenie

  1. 🔗 Podłącz swoje urządzenie
  2. 🌍 Odwiedź flasher.meshtastic.org *wymaga przeglądarki Chrome lub Edge
  3. 📖 Postępuj zgodnie z instrukcjami

🔧 Podłącz i skonfiguruj urządzenie

✅ Po wgraniu firmware Meshtastic na urządzenie możesz przejść do konfiguracji początkowej.

💻 Flashowanie oprogramowania układowego przez CLI

🔍 Weryfikacja łączności

📡 Przed wgraniem oprogramowania na urządzenie ESP32, zweryfikuj łączność z urządzeniem, które zamierzasz wgrać. Postępuj zgodnie z poniższymi krokami, aby sprawdzić połączenie urządzenia i, jeśli to konieczne, zainstaluj odpowiednie sterowniki USB dla swojej płytki ESP32. Jeśli musisz zainstalować sterowniki, pamiętaj, aby 🔄 zrestartować komputer po instalacji, aby potwierdzić, że instalacja sterowników została zakończona.

⚠️ UWAGA: Płytka T-Beam 0.7 to wcześniejsza wersja płytki T-Beam ESP32. Z powodu zmian konstrukcyjnych w kolejnych iteracjach, ta płytka wymaga specyficznego pliku oprogramowania układowego, który różni się od tych używanych przez inne wersje płytek T-Beam. Upewnij się, że wybierasz odpowiednie oprogramowanie układowe podczas wgrywania na ESP32 T-Beam 0.7, aby zapewnić prawidłowe działanie.

  • 📂 Użyj firmware-tbeam0.7-X.X.X.xxxxxxx.bin dla T-Beam 0.7.
  • firmware-tbeam-X.X.X.xxxxxxx.bin jest niekompatybilny.
📖 Dla wszystkich innych płytek T-Beam, proszę zapoznać się z sekcją zasobów, aby wybrać odpowiednie oprogramowanie układowe.

📜 Instrukcje wiersza poleceń

🛠 Zainstaluj oprogramowanie wymagane
🐧 Linux
🔎 Sprawdź, czy masz python3 i pip zainstalowany za pomocą następującego polecenia

🐍 python3 --version

📦 pip3 --version

⚙️ Jeśli python3 nie jest zainstalowany, możesz go zainstalować używając

🔄 sudo apt-get update

⬇️ sudo apt-get install python3

⚙️ Jeśli pip nie jest zainstalowany, możesz go zainstalować używając
⬇️ sudo apt-get install python3-pip
⚙️ Instalacja esptool
⬇️ pip3 install --upgrade esptool
🍏 MacOS
💻 OS X jest dostarczany z Python2.7 wstępnie zainstalowany, ale nie zawiera pip. Poniższe instrukcje używają 🍺 Homebrew do instalacji Python3, który zawiera pip3. Na macOS użyjesz pip3 zamiast pip.
ℹ️ UWAGA: Sprawdź, czy masz zainstalowany Homebrew za pomocą następującego polecenia. Jeśli nie jest zainstalowany, postępuj zgodnie z instrukcjami na stronie Homebrew przed kontynuowaniem.
🔎 brew -v
🔎 Sprawdź, czy masz python3 i pip zainstalowany za pomocą następującego polecenia

🐍 python3 --version

📦 pip3 --version

⚙️ Jeśli python3 nie jest zainstalowany, możesz go zainstalować za pomocą polecenia
⬇️ brew install python3
✅ Sprawdź, czy pip3 został zainstalowany wraz z python3
📦 pip3 -v
⚙️ Instalacja esptool
⬇️ pip3 install --upgrade esptool
🪟 Windows
  • ⬇️ Pobierz i zainstaluj Python. Podczas instalacji upewnij się, że zaznaczyłeś opcję Dodaj Python X.Y do PATH.
  • ⬇️ Pobierz i zainstaluj Git Bash (lub inny odpowiedni shell) i wykonuj wszystkie kolejne polecenia z tego shella.
🔎 Sprawdź, czy masz python3 i pip zainstalowany za pomocą następującego polecenia

🐍 py --version

📦 pip --version

⚙️ Instalacja esptool
⬇️ pip3 install --upgrade esptool
🔗 Sprawdź łączność z chipem
  • 🐧 W systemach Linux i macOS może być konieczne wyraźne zadeklarowanie esptool jako .py skrypt. Użyj polecenia esptool.py chip_id aby to zrobić, w zależności od Twojego środowiska.
  • 🪟 W systemie Windows musisz wyraźnie zadeklarować esptool jako .py skrypt, używając polecenia esptool.py chip_id aby zapewnić prawidłowe działanie.
🔌 Podłącz radio do komputera za pomocą kabla USB do przesyłu danych. Użyj następującego polecenia, aby zweryfikować, czy Twoje urządzenie komunikuje się z komputerem:
💻 Polecenie
📝 esptool chip_id
📤 Oczekiwany wynik

✅ # Powinieneś zobaczyć wynik podobny do tego:

💻 mydir$ esptool chip_id

🔧 esptool.py v2.6

🔍 Znaleziono 2 porty szeregowe

🔌 Port szeregowy /dev/ttyUSB0

⏳ Łączenie....

🔎 Wykrywanie typu chipu... ESP32

📡 Chip to ESP32D0WDQ6 (wersja 1)

✨ Funkcje: WiFi, BT, Dual Core, 240MHz, kalibracja VRef w efuse, Schemat kodowania None

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

⬆️ Wgrywanie stub...

▶️ Uruchamianie stub...

✅ Stub działa...

⚠️ Ostrzeżenie: ESP32 nie ma Chip ID. Odczyt

🔑 MAC zamiast tego. MAC: 24:6f:28:b5:36:71

🔄 Twardy reset przez pin RTS...

⬇️ Pobierz oprogramowanie
  • 🌐 Przejdź do Meshtastic Downloads Page, aby pobrać najnowsze oprogramowanie układowe.
  • 📂 Przewiń w dół do sekcji Firmware i wybierz jedną z poniższych opcji zgodnie z preferencjami:
  1. Pobierz Stable: Dla stabilnych, dobrze przetestowanych wydań.
  1. 🧪 Pobierz Alpha: Dla nowszych, eksperymentalnych wydań zawierających najnowsze funkcje.
  • 📄 Po przekierowaniu na stronę wydania GitHub, przewiń w dół do sekcji Assets i rozwiń ją.
  • 🔎 Zidentyfikuj odpowiednie oprogramowanie układowe dla swojego urządzenia zgodnie z jego architekturą (np., firmware-esp32s3 dla urządzeń opartych na ESP32-S3, takich jak Heltec V3).
  • 💾 Pobierz plik i zanotuj jego lokalizację na swoim systemie, która zazwyczaj znajduje się w ~/Downloads folder.
📂 Wejdź do katalogu z oprogramowaniem układowym
💻 Otwórz terminal i przejdź do katalogu, w którym pobrano oprogramowanie układowe (używając cd polecenie). Nazwa folderu zwykle odpowiada architekturze i wersji oprogramowania układowego wskazanej w pliku zip. Na przykład:
📂 cd ~/Downloads/firmware-esp32s3-X.X.X.xxxxxxx/
⚠️ UWAGA: Upewnij się, że zastąpiłeś esp32s3 oraz numer wersji wartościami odpowiadającymi pobranemu plikowi.
⚡ Zainstaluj lub zaktualizuj oprogramowanie układowe
🛠 Teraz postępuj zgodnie z poniższymi instrukcjami dla swojego systemu operacyjnego, aby zainstalować lub zaktualizować oprogramowanie układowe dla swojej konkretnej płytki:
📌 Proszę zauważyć przed rozpoczęciem:

⚠️ Bądź bardzo ostrożny, instalując poprawny plik oprogramowania dla swojej płytki ESP32. Konkretnie, szeroko używany radio T-BEAM od TTGO nie jest nazywany TTGO-Lora, które to jest inną płytką ESP32. Dlatego nie flashuj builda oprogramowania TTGO-Lora na T-BEAM, ponieważ nie będzie działać poprawnie i może powodować problemy z Twoim urządzeniem ESP32.

❌ Jeśli zainstalujesz nieprawidłowe oprogramowanie dla swojej płytki ESP32, proces flashowania może wydawać się zakończony pomyślnie, ale urządzenie może stać się nieodpowiadające, wyświetlając , jeśli taki posiada. Zawsze upewnij się, że flashujesz odpowiednią wersję oprogramowania dla swojego konkretnego sprzętu ESP32.

⚡ Należy pamiętać, że chociaż te urządzenia oparte na ESP32 są na ogół wytrzymałe i uszkodzenie nie jest gwarantowane, istnieje ryzyko uszkodzenia modułu radiowego na pokładzie oraz peryferiów, jeśli kierunki pinów GPIO zostaną nieprawidłowo skonfigurowane podczas flashowania oprogramowania. Właściwy wybór oprogramowania układowego jest kluczowy dla utrzymania funkcjonalności i bezpieczeństwa Twojego urządzenia ESP32 Meshtastic.

🐧 Linux & 🍏 macOS
⬇️ Zainstaluj
💻 ./device-install.sh -f firmware-BOARD-VERSION.bin
⬇️ Pobierz oprogramowanie
  • 🌐 Przejdź do Meshtastic Downloads Page, aby pobrać najnowsze oprogramowanie układowe.
  • 📂 Przewiń w dół do sekcji Firmware i wybierz jedną z następujących opcji:
  1. Pobierz Stable: Dla stabilnych, dobrze przetestowanych wydań.
  2. 🧪 Pobierz Alpha: Dla eksperymentalnych wydań z najnowszymi funkcjami.
  • 📄 Na stronie wydania GitHub przewiń w dół do sekcji Assets i rozwiń ją.
  • 🔎 Zidentyfikuj odpowiednie oprogramowanie układowe dla swojego urządzenia (np. firmware-esp32s3 dla płytek ESP32-S3).
  • 💾 Pobierz plik i zanotuj jego lokalizację (zazwyczaj ~/Downloads).
📂 Wejdź do katalogu z oprogramowaniem układowym
💻 Otwórz terminal i przejdź do katalogu, w którym pobrano oprogramowanie układowe:
📂 cd ~/Downloads/firmware-esp32s3-X.X.X.xxxxxxx/
⚠️ UWAGA: Zamień esp32s3 i wersję na swój rzeczywisty plik.
⚡ Zainstaluj lub zaktualizuj oprogramowanie układowe
🛠 Postępuj zgodnie z instrukcjami poniżej dla swojego systemu operacyjnego:
📌 Ważne:

⚠️ Zawsze instaluj poprawne oprogramowanie układowe dla swojej płytki ESP32. Nie myl T-BEAM z TTGO-Lora.

❌ Nieprawidłowe oprogramowanie układowe może zostać wgrane, ale pozostawić urządzenie nieodpowiadające (pusty ekran).

⚡ Nieprawidłowe konfiguracje GPIO podczas flashowania mogą uszkodzić moduł radiowy. Wybieraj ostrożnie.

🐧 Linux & 🍏 macOS
⬇️ Zainstaluj
💻 ./device-install.sh -f firmware-BOARD-VERSION.bin
🔄 Aktualizacja
💻 ./device-update.sh -f firmware-BOARD-VERSION-update.bin
🌐 Użyj --web aby dołączyć wbudowanego Web Client.
🪟 Windows
⬇️ Zainstaluj
💻 esptool.exe --chip esp32 write_flash -z 0x1000 firmware-BOARD-VERSION.bin
🔄 Aktualizacja
💻 esptool.exe --chip esp32 write_flash -z 0x1000 firmware-BOARD-VERSION-update.bin
💻 device-install.bat -f firmware-BOARD-VERSION.bin
🔄 Aktualizacja
💻 device-update.bat -f firmware-BOARD-VERSION-update.bin
🌐 Użyj --web opcja włączenia wbudowanego Web Clienta podczas instalacji oprogramowania.

🔌 Podłącz i skonfiguruj urządzenie

✅ Po pomyślnym wgraniu oprogramowania Meshtastic na urządzenie możesz przejść do wstępnej konfiguracji.

🔧 Flashowanie z użyciem zewnętrznego adaptera szeregowego

ℹ️ UWAGA: Ta informacja będzie prawdopodobnie przydatna tylko jeśli już próbowałeś przejść przez wymagania wstępne i procesy opisane w ręcznym flashowaniu

⚙️ Proces flashowania

📌 Sytuacje, które mogą wymagać użycia zewnętrznego adaptera USB do Serial:
  • ⚠️ Z powodu trwającego niedoboru układów, niedawno zakupione urządzenia, takie jak TTGO T-Beam, mogą być wyposażone w starsze lub niestandardowe układy adapterów USB do Serial, które mogą być zawodliwe w niektórych sytuacjach.
  • ❌ Niektóre urządzenia mogą mieć wadliwe układy USB do Serial, co prowadzi do problemów z komunikacją.
  • 🔗 Specyficzne urządzenia, takie jak Hydra (Meshtastic-DIY target)
🔌 Adaptery USB Serial

🛠 Na rynku dostępnych jest wiele opcji adapterów ESP32, ale zaleca się wybór adaptera wykorzystującego układ Silicon Labs CP2102, znany z niezawodności i statusu standardu branżowego dla flashowania ESP32. Adapter oparty na CP2102 zapewnia stabilną komunikację USB-do-serial, co jest kluczowe dla pomyślnego flashowania oprogramowania.

🔌 Zacznij od podłączenia adaptera CP2102 do komputera bez podłączania w tym momencie żadnych urządzeń ESP32. Upewnij się, że na komputerze zainstalowano niezbędne sterowniki USB dla adaptera. Dla użytkowników Windows odpowiednie sterowniki CP2102 powinny zazwyczaj instalować się automatycznie, umożliwiając płynne wykrywanie urządzeń ESP32 i niezawodne wgrywanie oprogramowania.

Podłączanie adaptera do urządzenia
ℹ️ UWAGA: Istnieje kilka metod podłączania pinów adaptera do urządzenia docelowego, w tym dociskanie zworki do styków lub używanie pogo pin jigs. Ten poradnik podkreśla użycie offsetowych złącz Dupont przylutowanych do odpowiednich pinów GPIO i połączonych za pomocą zworek.
⚠️ Odłącz swój adapter USB do Serial od komputera przed rozpoczęciem tego procesu.
  1. 🔄 Podłącz pin RX adaptera do pinu TX urządzenia.
  2. 🔄 Podłącz pin TX adaptera do pinu RX urządzenia.
  3. ⚡ Podłącz pin GND adaptera do pinu GND urządzenia.
  4. 🔋 Podłącz pin 5V adaptera do pinu 5V urządzenia (jak pokazano) lub pin 3.3V adaptera do pinu 3.3V urządzenia.
  5. 🟢 Połącz GPIO 0 z GND na urządzeniu za pomocą zworki. (Spowoduje to przejście urządzenia w tryb programowania po włączeniu zasilania.) Przykładowe okablowanie z użyciem T-Beam.
  1. 🔌 Podłącz urządzenie do portu USB w komputerze.
  2. ❎ Usuń zworkę łączącą GPIO 0 z GND.
💾 Programowanie urządzenia
Po wykonaniu powyższych kroków Twoje urządzenie powinno być w trybie programowania. Teraz możesz użyć metody ręcznej do wgrania oprogramowania na urządzenie.
🔄 Po zakończeniu procesu programowania zresetuj urządzenie (używając przycisku RST, jeśli jest dostępny). Jeśli masz zainstalowany Meshtastic Python CLI, możesz uruchomić meshtastic --noproto, aby ponownie połączyć się z urządzeniem przez adapter i zobaczyć wyjście szeregowe, aby upewnić się, że Meshtastic został poprawnie zainstalowany.
🛠 Rozwiązywanie problemów z procesem programowania
⚠️ Możesz napotkać błąd uprawnień portu COM podczas uruchamiania ręcznych skryptów instalacji urządzenia, co może być spowodowane różnymi problemami.
💡 Aby rozwiązać ten problem, może być konieczne uruchomienie procesu jako administrator, upewnienie się, że żadne inne oprogramowanie, takie jak Cura, nie zajmuje portów COM, lub spróbowanie ponownego uruchomienia systemu.

🔌 Podłącz i skonfiguruj urządzenie

✅ Po wgraniu oprogramowania Meshtastic na urządzenie możesz przejść do wstępnej konfiguracji.

📡 Programowanie urządzeń nRF52 & RP2040

  • ⚡ Proces aktualizacji oprogramowania układowego dla urządzeń nRF52 i RP2040: Urządzenia oparte na architekturach nRF52 i RP2040 oferują prosty proces aktualizacji oprogramowania układowego, który nie wymaga instalacji żadnych sterowników ani oprogramowania na żadnej platformie.
  • 📂 Przeciągnij i upuść: Te urządzenia wykorzystują metodę instalacji Drag & Drop do instalacji wersji oprogramowania układowego. Wystarczy przeciągnąć plik oprogramowania układowego na urządzenie w eksploratorze plików.
  • 📶 Aktualizacje Over-The-Air (OTA): Urządzenia nRF52 mogą otrzymywać OTA aktualizacje oprogramowania z urządzenia mobilnego przez Bluetooth, co umożliwia płynne aktualizacje bez potrzeby fizycznych połączeń.
  • 🧹 Factory Erase: Przed instalacją nowego oprogramowania możesz rozważyć wykonanie Factory Erase, aby wyczyścić wszelkie istniejące dane, które mogą zmieniać format lub lokalizację między wersjami.

🔄 Konwersja RAK4631-R na RAK4631: Jeśli twoje urządzenie nie posiada bootloadera Arduino, będziesz musiał wykonać konwersję, aby zapewnić kompatybilność.

  • 🛠 Używanie Raspberry Pi jako narzędzia do flashowania SWDIO: Jeśli twoje urządzenie nie może być flashowane przez USB lub Bluetooth, alternatywną opcją jest użycie bezpośredniego połączenia SWDIO z Raspberry Pi jako narzędziem do flashowania.

📂 Przeciągnij i upuść aktualizacje oprogramowania dla nRF52 & RP2040

💻 Flashuj urządzenie

  • 🌐 Możesz teraz skorzystać z Meshtastic Web Flasher, aby pobrać i przesłać oprogramowanie do swoich urządzeń opartych na nRF52 lub RP2040. Alternatywnie możesz postępować zgodnie z poniższymi instrukcjami, aby pobrać i zainstalować oprogramowanie.
  • 🧹 Jeśli niedawno wykonałeś Factory Erase, twoje urządzenie może automatycznie uruchomić się w trybie bootloadera. Możesz wtedy przejść bezpośrednio do „Skopiuj odpowiednie oprogramowanie...” dla swojego konkretnego urządzenia poniżej:
🔵 nRF52
  1. ⬇️ Pobierz i rozpakuj najnowsze oprogramowanie układowe ze Meshtastic Downloads.
  2. 🔌 Podłącz swoje urządzenie do komputera za pomocą kabla USB do przesyłu danych.
  3. 🔁 Naciśnij dwukrotnie przycisk reset na swoim urządzeniu (to spowoduje wejście w tryb bootloadera).
  4. 💻 Nowy dysk zostanie zamontowany na twoim komputerze (kompatybilny z Windows, Mac, Linux lub Android).
  5. 📂 Otwórz ten dysk, gdzie powinieneś znaleźć trzy pliki: CURRENT.UF2, INDEX.HTM oraz INFO_UF2.TXT.
  6. 📥 Skopiuj odpowiedni plik oprogramowania (firmware-DEVICE_NAME-X.X.X-xxxxxxx.uf2) z folderu wydania na ten dysk.
  7. ✅ Po zakończeniu kopiowania pliku urządzenie zrestartuje się i zainstaluje oprogramowanie Meshtastic.
🟣 RP2040
  1. ⬇️ Pobierz i rozpakuj najnowsze oprogramowanie układowe ze Meshtastic Downloads.
  2. 🔘 Naciśnij i przytrzymaj przycisk BOOTSEL, a następnie podłącz urządzenie do komputera za pomocą kabla USB.
  3. 💻 Nowy dysk zostanie zamontowany na twoim komputerze (kompatybilny z Windows, Mac, Linux lub Android).
  4. 📂 Otwórz ten dysk, gdzie powinieneś znaleźć dwa pliki: INDEX.HTM oraz INFO_UF2.TXT.
  5. 📥 Skopiuj odpowiedni plik firmware (firmware-DEVICE_NAME-X.X.X-xxxxxxx.uf2) z folderu release na ten dysk.
  6. ✅ Po zakończeniu kopiowania pliku urządzenie uruchomi się ponownie i zainstaluje firmware Meshtastic.
⚠️ Możliwe nietypowe przypadki flashowania
  1. 🔎 Przed flashowaniem upewnij się, że masz RAK4631, a nie RAK4631-R. W przeciwnym razie będziesz musiał zmienić bootloader. Instrukcje znajdziesz tutaj.
  2. ⚠️ Starsze wersje firmware mogą zawierać przestarzałe dane, co prowadzi do pętli awarii. Jeśli napotkasz problemy z aktualizacją, wykonaj przywracanie do ustawień fabrycznych przed flashowaniem.

🔌 Podłącz i skonfiguruj urządzenie

✅ Po wgraniu firmware Meshtastic na urządzenie możesz przejść do konfiguracji początkowej.

📡 Aktualizacje firmware Over-the-Air (OTA) dla nRF52

📶 Urządzenia nRF52 od RAK mogą przyjmować aktualizacje firmware OTA przez Bluetooth. ⚠️ Starsze bootloadery T-Echo nie obsługują OTA.
⚠️ Ostrzeżenie: Aktualizacje OTA niosą ze sobą wyższe ryzyko niepowodzenia. W przypadku niepowodzenia urządzenie może stać się nieczynne i wymagać fizycznej naprawy.

🤖 Android

⚠️ Najnowsza aplikacja nRF DFU (v2.3.0) jest niekompatybilna. Użyj nRF Connect App v4.24.3 z Nordic GitHub.
  1. ⬇️ Pobierz firmware z Meshtastic Downloads lub GitHub.
  2. 📂 Rozpakuj folder z oprogramowaniem.
  3. 📱 Otwórz aplikację nRF Connect → zakładka SCANNER → POŁĄCZ urządzenie.
  4. 🔗 Jeśli pokazuje DISCONNECT, kontynuuj; jeśli CONNECT, stuknij to.
  5. ⚙️ Stuknij ikonę DFU (w prawym górnym rogu).
  6. 📦 Wybierz "Distribution Packet (ZIP)" → OK.
  7. 📥 Wybierz plik firmware kończący się na -ota.zip.
  8. ⏳ Aktualizacja rozpoczyna się automatycznie (może być wolna).
  9. ✅ Urządzenie uruchamia się ponownie po aktualizacji.

🍎 Apple

📲 Aktualizacje OTA dostępne przez nRF Device Firmware Update App na iOS/iPadOS.
  1. ⬇️ Pobierz oprogramowanie z Meshtastic Downloads, GitHub lub bezpośrednio przez aplikację.
  2. 📂 Rozpakuj folder z oprogramowaniem.
  3. 📱 Otwórz nRF DFU App i wybierz poprawny plik oprogramowania urządzenia (kończący się na -ota.zip).
  4. 🔗 Połącz się ze swoim urządzeniem.
  5. ⬆️ Prześlij oprogramowanie.
⚠️ Ważna uwaga: Funkcja automatycznego blokowania iPhone'a może przerwać przesyłanie oprogramowania przez Bluetooth. Aby temu zapobiec, okresowo stukaj w ekran lub tymczasowo ustaw auto-blokadę na "Nigdy" podczas procesu przesyłania, aby telefon pozostał aktywny i przesyłanie zakończyło się bez przerw.
❌ Jeśli aktualizacja nie powiedzie się, możesz zwiększyć szanse powodzenia, dostosowując ustawienia pakietów:
  1. ⚙️ Przejdź do ustawień i włącz "Powiadomienie o odbiorze pakietów".
  2. 🔽 Zmień "Liczbę pakietów" na niższą wartość; niektórzy użytkownicy odnieśli sukces z wartością "5".

🧹 Przywracanie ustawień fabrycznych dla urządzeń nRF52/RP2040

  • 💾 Meshtastic używa biblioteki littlefs do przechowywania konfiguracji, logów i innych danych w wewnętrznej pamięci flash urządzeń nRF52 i RP2040. Aktualizacja oprogramowania nie usuwa tych danych, co może powodować problemy, jeśli formaty zmienią się między wersjami.
  • 🌐 Możesz użyć Meshtastic Web Flasher, aby przywrócić urządzenia do ustawień fabrycznych. Wybierz swoją płytkę i kliknij ikonę 🗑️, aby wymazać. Alternatywnie, postępuj zgodnie z poniższymi instrukcjami.

🔵 nRF52

Aby zresetować pamięć flash na swojej płytce nRF52:
  1. ⬇️ Pobierz i rozpakuj najnowsze oprogramowanie ze strony pobierania Meshtastic.
  2. 🔌 Podłącz swoje urządzenie przez USB.
  3. 🔁 Kliknij dwukrotnie przycisk reset, aby wejść w tryb bootloadera.
  4. 💻 Nowy dysk zostaje zamontowany (Windows/Mac/Linux).
  5. 📂 Dysk zawiera: CURRENT.UF2, INDEX.HTM, INFO_UF2.TXT.
  6. 📝 Otwórz INFO_UF2.TXT i zanotuj wartość SoftDevice.
  7. 📥 Skopiuj odpowiedni plik UF2 do wymazywania fabrycznego (Meshtastic_nRF52_factory_erase...) na dysk. Urządzenie uruchomi się ponownie.
  8. 💻 Uruchom meshtastic --noproto w terminalu.
  9. ✅ Powinieneś zobaczyć: Formatowanie... Gotowe.
Po wymazaniu zainstaluj najnowsze oprogramowanie na czystym systemie plików.

🟣 RP2040

Aby zresetować pamięć flash na swojej płytce RP2040:
  1. ⬇️ Pobierz flash_nuke.uf2.
  2. 🔘 Przytrzymaj BOOTSEL i podłącz przez USB.
  3. 💻 Płytka montuje się jako RPI-RP2.
  4. 📥 Skopiuj flash_nuke.uf2 na dysk.
  5. ✅ Płytka uruchamia się ponownie, a pamięć flash jest wymazana.
Po wymazaniu zainstaluj najnowsze oprogramowanie na czystym systemie plików.

🔄 Konwersja RAK4631-R na RAK4631

ℹ️ Jedyną różnicą między RAK4631-R (RUI3) a RAK4631 (Arduino) jest bootloader; sprzęt jest identyczny.
📌 Meshtastic wymaga bootloadera Arduino. Konwersja to proces jednorazowy.
Oto dwa sposoby na flashowanie bootloadera:

💻 Aktualizacja oprogramowania układowego urządzenia USB (DFU)

  1. ⬇️ Zainstaluj Python.
  2. ⬇️ Zainstaluj adafruit-nrfutil.
📦 pip3 install adafruit-nrfutil
  • 🧹 Teraz możesz użyć Meshtastic Web Flasher, aby przywrócić ustawienia fabryczne swoich urządzeń opartych na nRF52 lub RP2040. Odwiedź flasher, wybierz swoją płytkę i kliknij ikonę 🗑️ kosza po prawej stronie przycisku Flash. Otworzy to okno dialogowe do rozpoczęcia procedury wymazywania. Alternatywnie możesz postępować zgodnie z poniższymi instrukcjami.

🔵 nRF52

Aby zresetować pamięć flash na twojej płytce nRF52, wykonaj następujące kroki:
  1. ⬇️ Pobierz i rozpakuj najświeższe oprogramowanie ze strony pobierania Meshtastic.
  2. 🔌 Podłącz swoje urządzenie do komputera za pomocą kabla USB do przesyłu danych.
  3. 🔁 Dwukrotnie kliknij przycisk reset na swoim urządzeniu, aby wejść w tryb bootloadera.
  4. 💻 Nowy dysk zostanie zamontowany na twoim komputerze (Windows, Mac lub Linux).
  5. 📂 Otwórz ten dysk, powinieneś zobaczyć trzy pliki: CURRENT.UF2, INDEX.HTM oraz INFO_UF2.TXT.
  6. 📝 Otwórz plik INFO_UF2.TXT w edytorze tekstu i zanotuj wartość SoftDevice.
  7. 📥 Znajdź plik w pobranym oprogramowaniu, który odpowiada twojej wersji SoftDevice (7.x.x lub 6.x.x). Użyj Meshtastic_nRF52_factory_erase_v3_S140_7.3.0.uf2 lub Meshtastic_nRF52_factory_erase_v3_S140_6.1.0.uf2 i skopiuj go na dysk. Urządzenie się zrestartuje.
  8. 💻 Mając zainstalowany Meshtastic CLI, otwórz Terminal/Konsolę i wpisz: meshtastic --noproto.
  9. ✅ Powinieneś zobaczyć komunikat: Formatowanie... Zakończono.
Po wymazaniu możesz zainstalować najświeższe oprogramowanie Meshtastic na czystym systemie plików, klikając poniższy link.

🟣 RP2040

Aby zresetować pamięć flash na twojej płytce RP2040, wykonaj następujące kroki:
  1. ⬇️ Pobierz flash_nuke.uf2 plik na twój komputer.
  2. 🔘 Naciśnij i przytrzymaj przycisk BOOTSEL, a następnie podłącz płytkę do komputera za pomocą kabla USB.
  3. 💻 Płytka powinna teraz pojawić się jako urządzenie pamięci masowej na twoim komputerze, oznaczone jako RPI-RP2.
  4. 📥 Skopiuj flash_nuke.uf2 plik na to urządzenie.
  5. ✅ Płytka automatycznie się zrestartuje, a pamięć flash zostanie wymazana.
Po wymazaniu możesz zainstalować najnowsze oprogramowanie Meshtastic na czystym systemie plików, klikając poniższy link.

🔄 Konwersja RAK4631-R na RAK4631

ℹ️ Jedyną różnicą między RAK4631-R (RUI3) a RAK4631 (Arduino) jest bootloader; sprzęt jest identyczny.
📌 Meshtastic wymaga bootloadera Arduino dla płytek RAK WisBlock opartych na nRF52. Proces konwersji trzeba wykonać tylko raz.
Oto dwa sposoby na flashowanie bootloadera:

💻 Aktualizacja oprogramowania układowego urządzenia USB (DFU)

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

 

👉 Musisz wykonać pierwszą część instrukcji dotyczącej konwersji RAK4631-R na RAK4631, a konkretnie sekcję dotyczącą polecenia AT+BOOT.

🛠 Debugger

🔧 Ta konwersja wymaga użycia DAPLink lub J-Link. Najtańszą i najłatwiej dostępną opcją jest RAKDAP1.
  1. ⬇️ Zainstaluj Python
  2. ⬇️ Zainstaluj pyOCD
📦 pip3 install pyocd
  1. ⬇️ Pobierz niezbędny bootloader: WisCore_RAK4631_Board_Bootloader.hex
  2. 🔗 Podłącz RAKDAP zgodnie z poniższymi instrukcjami:
  1. ⚡ Flashuj bootloader
💻 pyocd flash -t nrf52840 .\WisCore_RAK4631_Board_Bootloader.hex
  1. ➡️ Kontynuuj zgodnie ze standardowymi instrukcjami flashowania.
📖 Alternatywne metody flashowania są opisane tutaj.

🔄 Aktualizacja lub odzyskiwanie bootloadera na urządzeniach nRF52

⚠️ Jeśli napotykasz trudności podczas aktualizacji lub flashowania nowszych wersji firmware Meshtastic, a Twoje urządzenie nRF52 nie działa na najświeższej wersji bootloadera, aktualizacja bootloadera może pomóc rozwiązać te problemy.
🔎 Aby zweryfikować wersję bootloadera aktualnie na Twoim urządzeniu, włącz tryb DFU. Następnie otwórz zamontowany dysk, który pojawi się na Twoim komputerze i sprawdź plik INFO_UF2.TXT.
📌 Oto kroki, aby zaktualizować bootloader.

✅ Metoda 1: Aktualizacja za pomocą pliku UF2 (zalecane)

📦 W zależności od Twojego urządzenia musisz wybrać odpowiedni pakiet bootloadera. Poniżej znajdują się linki do pakietów bootloadera:
  1. ⬇️ Pobierz odpowiedni plik UF2 Bootloadera.
  2. 🔌 Podłącz swoje urządzenie do komputera za pomocą kabla USB.
  3. 🔁 Aktywuj tryb bootloadera, szybko dwukrotnie naciskając przycisk RESET. W przypadku Seeed Tracker 1000-E przytrzymaj przycisk użytkownika, a następnie szybko podłącz kabel USB do portu MagSafe dwukrotnie. Urządzenie powinno pojawić się jako dysk wymienny.
  4. 📂 Przeciągnij i upuść plik UF2, który pobrałeś, na dysk wymienny. Urządzenie automatycznie zaktualizuje bootloader i się zresetuje.
  5. ✅ Po zresetowaniu urządzenia aktualizacja jest zakończona. Twoje urządzenie ma teraz najświeższą wersję bootloadera i możesz przejść do flashowania firmware.

⚠️ Metoda 2: Użycie adafruit-nrfutil

⚠️ Uwaga: W przeciwieństwie do przesyłania UF2, adafruit-nrfutil nie sprawdza, czy masz odpowiedni pakiet bootloadera dla swojego urządzenia. Wgranie niewłaściwego bootloadera może potencjalnie uszkodzić twoje urządzenie. Zawsze sprawdzaj sumę kontrolną SHA256 przed kontynuacją.
📌 Te instrukcje zakładają, że Python i pip są już zainstalowane. Jeśli nie, pobierz i zainstaluj najnowszą wersję Python (z pip) ze strony Python.org.
📦 W zależności od twojego urządzenia wybierz odpowiedni pakiet bootloadera. Poniżej znajdują się linki:
  1. 💻 Otwórz terminal lub wiersz poleceń i zainstaluj adafruit-nrfutil, uruchamiając następujące polecenie:
🐚 bash
📦 pip install adafruit-nrfutil
  1. ⬇️ Pobierz odpowiedni pakiet ZIP.
  2. 🔌 Podłącz swoje urządzenie do komputera za pomocą kabla USB.
  3. 💻 W terminalu lub wierszu poleceń przejdź do katalogu, w którym pobrałeś pakiet ZIP bootloadera, i wykonaj następujące polecenie. Zastąp /dev/ttyACM0 odpowiednim portem (użytkownicy Windows mogą użyć COMx):
⚡ adafruit-nrfutil --singlebank --touch 1200 --verbose dfu serial --package <pobrany plik>.zip -p /dev/ttyACM0 -b 115200
  1. ✅ Po zakończeniu procesu aktualizacja jest ukończona. Twoje urządzenie działa teraz z najświeższą wersją bootloadera, co pozwala przejść do flashowania firmware.

🛠 Metoda 3: Użycie debuggera

🔧 Jeśli powyższe metody nie działają, a Twój sprzęt to obsługuje (tzn. ma niezbędne piny SWD), możesz użyć debuggera takiego jak DAPLink lub J-Link, aby bezpośrednio flashować bootloader. Proszę zapoznać się z instrukcjami debuggera dla przykładu użycia RAK4631.

🍓 Używanie SWDIO do flashowania z Raspberry Pi

💡 Większość urządzeń Meshtastic można łatwo flashować przez USB. Jednak niektóre urządzenia (np. Seeed WM1110 Dev Kit) wymagają zewnętrznego urządzenia, które może łączyć się przez "SWDIO". Istnieją specjalistyczne urządzenia, takie jak RAKDAP1 zaprojektowane do tego celu. Wielu użytkowników uważa również Raspberry Pi za wygodną opcję.
📖 Ten artykuł zawiera instrukcje, jak używać Raspberry Pi jako narzędzia do flashowania SWDIO.

🔌 Konfiguracja okablowania

🔗 Pierwszym krokiem jest podłączenie dwóch przewodów między Twoim Raspberry Pi a portami SWDIO na Twoim urządzeniu opartym na NRF52.
⚡ Podłącz pin GPIO 11 na swoim Raspberry Pi do pinu CLK na urządzeniu Meshtastic oraz podłącz pin GPIO 8 na swoim Raspberry Pi do pinu DIO na urządzeniu Meshtastic.
✅ Upewnij się, że numery GPIO są poprawne.
🔋 Zasil swoje Raspberry Pi, podłączając je do źródła zasilania USB, a także zasil urządzenie Meshtastic.

⚙️ Zainstaluj oprogramowanie OpenOCD

💻 Możesz użyć OpenOCD do obsługi połączenia SWDIO z urządzeniem Meshtastic. Zainstaluj go na swoim 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

🔍 Zweryfikuj połączenie

Przed pracą z firmware, spróbujmy połączyć się z urządzeniem opartym na NRF52 używając SWDIO. Wszystkie niezbędne konfiguracje można znaleźć w repozytorium OpenOCD.
💻 $ openocd -f ./openocd/tcl/interface/raspberrypi-native.cfg -c "transport select swd" -f openocd/tcl/target/nrf52.cfg -s tcl
ℹ️ Pierwsza flaga oznacza Raspberry Pi jako twoją maszynę hosta, transport jest ustawiony na SWDIO, a ostatnia flaga wskazuje, że łączysz się z układem opartym na nRF52. Powinieneś zobaczyć podobny output:

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

📜 Licencjonowane na podstawie GNU GPL v2

🔗 W przypadku zgłoszeń błędów, przeczytaj http://openocd.org/doc/doxygen/bugs.html

⚡ swd

ℹ️ Info : Nasłuchiwanie na porcie 6666 na połączenia tcl

ℹ️ Info : Nasłuchiwanie na porcie 4444 na połączenia telnet

ℹ️ Info : sterownik BCM2835 GPIO JTAG/SWD bitbang

⏱️ Info : prędkość zegara 100 kHz

🔎 Info : SWD DPIDR 0x2ba01477

🧩 Info : [nrf52.cpu] wykryto procesor Cortex-M4 r0p1

🛠️ Info : [nrf52.cpu] cel ma 6 punktów przerwania, 4 punkty obserwacji

✅ Info : [nrf52.cpu] Badanie zakończone sukcesem

⚙️ Info : [nrf52.cpu] uruchamianie serwera gdb na 3333

ℹ️ Info : Nasłuchiwanie na porcie 3333 na połączenia gdb

🔗 Info : akceptowanie połączenia 'telnet' na tcp/4444

⚠️ Jeśli pojawi się komunikat „Error connecting DP: cannot read IDR”, prawdopodobnie oznacza to, że przewody są podłączone do niewłaściwych miejsc.

⬇️ Pobierz oprogramowanie

Zapoznaj się z instrukcjami dla swojego sprzętu, aby znaleźć odpowiednie oprogramowanie dla swojego urządzenia. Większość urządzeń według tego przewodnika wymaga pliku .hex. Następnie skopiuj plik oprogramowania na swój Raspberry Pi.

⚡ Wgraj oprogramowanie

Po uruchomieniu OpenOCD możesz połączyć się ze swoim urządzeniem Meshtastic przez telnet. Wgrywanie oprogramowania jest proste; wystarczy wykonać kilka poleceń w sesji telnet:

💻 $ telnet 127.0.0.1 4444

🔗 Próba połączenia z 127.0.0.1...

✅ Połączono z 127.0.0.1.

⎋ Znak ucieczki to '^]'.

🖥️ Otwórz On-Chip Debugger

⚙️ > init

⚙️ > reset init

⏸️ > halt

🧹 > nrf5 mass_erase

📥 > program firmware.hex verify

🔄 > reset

🚪 > exit 0

🔌 Odłącz zasilanie, a następnie podłącz je ponownie po wgraniu oprogramowania.

📶 Nawiąż połączenie

🎉 Gratulacje! Teraz powinieneś być w stanie połączyć się ze swoim urządzeniem przez Bluetooth w aplikacji Meshtastic.

Pasek boczny

Najnowszy post

Ta sekcja nie zawiera obecnie żadnych treści. Dodaj treść do tej sekcji, korzystając z paska bocznego.

Zarejestruj się do naszego newslettera

Uzyskaj najnowsze informacje o naszych produktach i specjalnych ofertach.