Snagboot, doskonałe narzędzie do przywracania i flashowania urządzeń wbudowanych

zaczepka

Snagboot to narzędzie do odzyskiwania open source.

bootlin (firma specjalizująca się w Linuksie dla systemów wbudowanych), dał mi znać kilka dni temu uruchomienie snagboota, przeznaczony do przywracania i flashowania wbudowanych urządzeń, które przestały się uruchamiać, na przykład z powodu uszkodzenia oprogramowania układowego.

zaczepka Powstaje, ponieważ większość platform wbudowanych zapewnia interfejsy USB lub UART do odzyskiwania i przesyłania obrazów rozruchowych w przypadku uszkodzenia oprogramowania układowego, ale te interfejsy są specyficzne dla każdej platformy i wymagają użycia narzędzi do odzyskiwania związanych z produktami poszczególnych producentów.

Aby rozwiązać ten problem, firma Bootlin ma przyjemność wypuścić dziś nowe narzędzie do odzyskiwania i aktualizacji, zwane Snagboot, które ma być ogólnym zamiennikiem narzędzi typu open source dla wspomnianych powyżej narzędzi specyficznych dla dostawców.

O Snagboot

Snagboot działa jako odpowiednik specjalistycznych narzędzi, głównie właściciele, przywracać i aktualizować urządzenia, takich jak STM32CubeProgrammer, SAM-BA ISP, UUU i sunxi-fel.

zaczepka jest przeznaczony do pracy z szeroką gamą płyt głównych i urządzeń wbudowanych, co eliminuje konieczność poznawania przez programistów systemów wbudowanych tajników korzystania z różnych narzędzi.

Na przykład pierwsza wersja Snagboot może być używana do odzyskiwania urządzeń opartych na ST STM32MP1, Microchip SAMA5, NXP i.MX6/7/8, Texas Instruments AM335x, Allwinner SUNXI i Texas Instruments AM62x SoC.

Istnieje kilka narzędzi, które wykorzystują tę funkcjonalność, aby zapewnić szybkie odzyskiwanie i aktualizację przez USB, takie jak STM32CubeProgrammer , SAM-BA lub UUU . Jednak wszystkie te narzędzia są zależne od dostawcy, co oznacza, że ​​programiści pracujący na wielu typach platform muszą przełączać się między różnymi narzędziami i uczyć się, jak korzystać z każdego z nich.

Wspomniano, że Snagboot zawiera dwa narzędzia do pobierania i aktualizacji:

  1. snagrecover— Wykorzystuje specyficzne dla producenta mechanizmy kodu ROM do inicjowania zewnętrznej pamięci RAM i uruchamiania programu ładującego U-Boot bez zmiany zawartości pamięci stałej.
  2. przebłysk- Współpracuje z uruchomionym U-Bootem, aby sflashować obraz systemu do pamięci nieulotnej za pomocą DFU (Aktualizacja oprogramowania sprzętowego urządzenia), UMS (Pamięć masowa USB) lub Fastboot.

Dla zainteresowanych dowiedzieć się więcej na ten tematPamiętaj, że kod Snagboot jest napisany w Pythonie i jest open source na licencji GPLv2.

Jak zainstalować Snagboot w systemie Linux?

Osoby zainteresowane możliwością zainstalowania Snagboot w swoim systemie powinny o tym wiedzieć Możesz to zrobić dość łatwo. Powinni zainstalować tylko niezbędne zależności, aby później nie mieć problemów.

Pierwszym z nich jest libhidapi, który można zainstalować w następujący sposób (w zależności od dystrybucji). Muszą tylko otworzyć terminal i wpisać w nim:

Debian / Ubuntu

sudo apt install libhidapi-hidraw0

Możesz też zainstalować:

sudo apt install libhidapi-libusb0

Arch Linux (chociaż można go również zainstalować z AUR, zobacz polecenie instalacji poniżej)

sudo pacman -S hidapi

RHEL/Fedora

sudo dnf -y install hidapi

Gdy to zrobisz, wszystko, co musisz zrobić, to zainstalować Snagboot z pip i aby to zrobić, po prostu wpisz następujące polecenie:

python3 -m pip install --user snagboot

Na koniec będziemy musieli tylko dodać reguły udev, aby snagrecover miał dostęp do odczytu i zapisu do urządzeń USB docelowych SoC:

snagrecover --udev > 80-snagboot.rules
sudo cp 80-snagboot.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

I gotowe, możesz rozpocząć pracę z tym narzędziem. W przypadku użytkowników Arch Linux, jak wspomniano wcześniej, narzędzie można zainstalować bezpośrednio z AUR i do tego wystarczy włączyć repozytorium i zainstalować kreatora AUR.

Polecenie instalacji narzędzia to:

yay -S snagboot

Wreszcie, dla tych, którzy wolą samodzielnie kompilować, po prostu uruchom następujące polecenie:

klon git https://github.com/bootlin/snagboot.git

cd snagboot
./install.sh

Jeśli chodzi o podręczniki i instrukcje użytkowania, wszystkie te informacje można znaleźć w Link.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.