Snagboot, ett utmärkt verktyg för att återställa och flasha inbäddade enheter

snagboot

Snagboot är ett återställningsverktyg med öppen källkod.

bootlin (ett företag specialiserat på Linux för inbyggda system), gjorde det känt flera dagar sedan snagboot lansering, designad för att återställa och flasha inbäddade enheter som har slutat starta, till exempel på grund av korruption av firmware.

snagboot Det är född eftersom de flesta av de inbäddade plattformarna tillhandahåller USB- eller UART-gränssnitt för återställning och överföring av startbilder i händelse av korruption av firmware, men dessa gränssnitt är specifika för varje plattform och kräver användning av återställningsverktyg som är associerade med enskilda tillverkares produkter.

För att lösa det här problemet är Bootlin glad över att släppa ett nytt återställnings- och uppdateringsverktyg idag, kallat Snagboot , som är tänkt att vara en generisk, öppen källkodsersättning för de leverantörsspecifika verktygen som nämns ovan.

Om Snagboot

Snagboot fungerar som en analog av specialiserade verktyg, mestadels ägare, för att återställa och uppdatera enheter, såsom STM32CubeProgrammer, SAM-BA ISP, UUU och sunxi-fel.

snagboot är designad för att fungera med ett brett utbud av kort och inbäddade enheter, vilket eliminerar behovet för utvecklare av inbyggda system att lära sig detaljerna i att använda olika verktyg.

Till exempel kan den första versionen av snagboot användas för att återställa enheter baserade på ST STM32MP1, Microchip SAMA5, NXP i.MX6/7/8, Texas Instruments AM335x, Allwinner SUNXI och Texas Instruments AM62x SoC.

Det finns några verktyg som drar fördel av den här funktionen för att erbjuda snabb återställning och uppdatering över USB, till exempel STM32CubeProgrammer , SAM-BA eller UUU . Dessa verktyg är dock alla leverantörsspecifika, vilket innebär att utvecklare som arbetar på flera typer av plattformar måste växla mellan olika verktyg och lära sig hur man använder var och en.

Det nämns att Snagboot innehåller två verktyg att ladda ner och uppdatera:

  1. snagrecover- Använder leverantörsspecifika ROM-kodmekanismer för att initiera externt RAM och köra U-Boot bootloader utan att ändra innehållet i det permanenta minnet.
  2. snagblixt- Interagerar med en körande U-boot för att flasha en systembild till icke-flyktigt minne med hjälp av DFU (Device Firmware Update), UMS (USB Mass Storage) eller Fastboot.

För den som är intresserad att veta mer om detObservera att Snagboots kod är skriven i Python och är öppen källkod under GPLv2-licensen.

Hur installerar jag Snagboot på Linux?

För de som är intresserade av att kunna installera Snagboot på sitt system bör de veta det Du kan göra det ganska enkelt. De bör bara installera nödvändiga beroenden för att inte få problem senare.

Den första är libhidapi som kan installeras enligt följande (beroende på din distribution). De behöver bara öppna en terminal och i den ska de skriva:

Debian / Ubuntu

sudo apt install libhidapi-hidraw0

Eller så kan du också installera:

sudo apt install libhidapi-libusb0

Arch Linux (även om det också kan installeras från AUR, se installationskommandot nedan)

sudo pacman -S hidapi

RHEL/Fedora

sudo dnf -y install hidapi

När detta är gjort är allt du behöver göra att installera Snagboot med pip och för att göra detta, skriv bara följande kommando:

python3 -m pip install --user snagboot

Slutligen behöver vi bara lägga till udev-reglerna så att snagrecover har läs- och skrivåtkomst till USB-enheterna för mål-SoC:erna:

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

Och redo med det kan du börja arbeta med det här verktyget. När det gäller Arch Linux-användare, som tidigare nämnt, kan verktyget installeras direkt från AUR och för detta behöver de bara ha förvaret aktiverat och ha en AUR-guide installerad.

Kommandot för att installera verktyget är:

yay -S snagboot

Sist men inte minst, för de som föredrar att kompilera på egen hand, kör bara följande:

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

cd snagboot
./install.sh

Angående manualer och bruksanvisningar kan du läsa all denna information i följande länk.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.