Accueil Astuces et Informations Snagboot, un excellent utilitaire pour restaurer et flasher les appareils embarqués

Snagboot, un excellent utilitaire pour restaurer et flasher les appareils embarqués

4
1
snagboot

Snagboot est un outil de récupération open source.

bootlin (société spécialisée dans Linux pour les systèmes embarqués), fait savoir il y a plusieurs jours lancement de snagbootconçu pour restaurer et flasher les périphériques intégrés qui ont cessé de démarrer, par exemple, en raison d’une corruption du micrologiciel.

snagboot Il est né car la plupart des plateformes embarquées proposent des interfaces USB ou UART pour la récupération et le transfert des images de démarrage en cas de corruption du micrologiciel, mais ces interfaces sont spécifique à chaque plateforme et nécessitent l’utilisation d’utilitaires de récupération associés aux produits de chaque fabricant.

Pour résoudre ce problème, Bootlin a le plaisir de publier aujourd’hui un nouvel outil de récupération et de mise à jour, appelé Snagboot , qui est destiné à être un remplacement générique et open source des outils spécifiques au fournisseur mentionnés ci-dessus.

À propos de Snagboot

Snagboot agit comme un analogue d’utilitaires spécialiséspour la plupart propriétaires, pour restaurer et mettre à jour les appareilstels que STM32CubeProgrammer, SAM-BA ISP, UUU et sunxi-fel.

snagboot est conçu pour fonctionner avec une large gamme de cartes et d’appareils embarquésce qui élimine le besoin pour les développeurs de systèmes embarqués d’apprendre les tenants et les aboutissants de l’utilisation de différents utilitaires.

Par exemple, la première version de snagboot peut être utilisée pour récupérer des appareils basés sur ST STM32MP1, Microchip SAMA5, NXP i.MX6/7/8, Texas Instruments AM335x, Allwinner SUNXI et Texas Instruments AM62x SoC.

Certains outils tirent parti de cette fonctionnalité pour offrir une récupération et une mise à jour rapides via USB, tels que STM32CubeProgrammer , SAM-BA ou UUU . Cependant, ces outils sont tous spécifiques à un fournisseur, ce qui signifie que les développeurs travaillant sur plusieurs types de plates-formes doivent basculer entre différents outils et apprendre à utiliser chacun d’eux.

Il est mentionné que Snagboot inclut deux utilitaires à télécharger et à mettre à jour :

  1. snagrecover– Utilise des mécanismes de code ROM spécifiques au fournisseur pour initialiser la RAM externe et exécuter le chargeur de démarrage U-Boot sans modifier le contenu de la mémoire permanente.
  2. éclair– Interagit avec un U-Boot en cours d’exécution pour flasher une image système sur une mémoire non volatile à l’aide de DFU (Device Firmware Update), UMS (USB Mass Storage) ou Fastboot.

Pour ceux qui souhaitent en savoir plus, ils doivent savoir que le code Snagboot est écrit en Python et est open source sous licence GPLv2.

Comment installer Snagboot sur Linux ?

Pour ceux qui souhaitent pouvoir installer Snagboot sur leur système, ils doivent savoir que Vous pouvez le faire assez facilement. Ils ne doivent installer que les dépendances nécessaires pour ne pas avoir de problèmes plus tard.

Le premier est libhidapi qui peut être installé comme suit (selon votre distribution). Il leur suffit d’ouvrir un terminal et dedans ils vont taper :

Debian/Ubuntu

sudo apt install libhidapi-hidraw0

Ou vous pouvez également installer :

sudo apt install libhidapi-libusb0

Arch Linux (bien qu’il puisse également être installé à partir de l’AUR, voir la commande d’installation ci-dessous)

sudo pacman -S hidapi

RHEL/Fédora

sudo dnf -y install hidapi

Une fois cela fait, il ne vous reste plus qu’à installer Snagboot avec pip et pour cela, il vous suffit de taper la commande suivante :

python3 -m pip install --user snagboot

Enfin, nous n’aurons qu’à ajouter les règles udev pour que snagrecover ait accès en lecture et en écriture aux périphériques USB des SoC cibles :

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

Et prêt avec cela, vous pouvez commencer à travailler avec cet outil. Dans le cas des utilisateurs d’Arch Linux, comme mentionné précédemment, l’outil peut être installé directement à partir de l’AUR et pour cela, ils n’ont qu’à activer le référentiel et à installer un assistant AUR.

La commande pour installer l’outil est :

yay -S snagboot

Enfin, pour ceux qui préfèrent compiler par eux-mêmes, exécutez simplement ce qui suit :

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

cd snagboot
./install.sh

Concernant les manuels et notices d’utilisation, vous pouvez consulter toutes ces informations au lien suivant.