🛠 Booter sur NVMe/USB et procédure de recouvrement
Objectifs
Le Pi 4B est le premier Pi phare avec une EEPROM de boot SPI embarquée : boot sur USB/NVMe, boot réseau, ordre personnalisable, codes LED et diagnostic HDMI en cas d'échec. Ce tuto bascule le système sur SSD puis écrit la procédure de recouvrement.
Materiel
- Raspberry Pi 4B, SSD NVMe + boitier/adaptateur USB 3.0
- >
- microSD pour l'EEPROM et Raspberry Pi Imager
- Alimentation 5.1 V 3 A (les SSD USB tirent fort)
Code complet
# 1) Copier le système sur le SSD (Imager : choisir le SSD comme cible)
sudo apt install rpi-eeprom
vcgencmd bootloader_version # date de l'EEPROM
vcgencmd bootloader_config | grep BOOT_ORDER
# 2) Changer l'ordre de boot : 0xf = SD, 0x1 = USB
sudo rpi-eeprom-edit
# dans l'éditeur : BOOT_ORDER=0xf41 (SD puis USB, puis réseau)
# sauvegarder : l'utilitaire reprogramme l'EEPROM, puis :
sudo reboot
# 3) Après boot sur le SSD, vérifier :
df -h / ; lsblk
Verification attendue
Après retrait de la microSD, le Pi démarre seul sur le SSD (df -h / montre /dev/sda2 ou nvme). En cas d'échec, le recouvrement est simple : inserer une SD valide avec un fichier fixup.dat force le reflash de l'EEPROM, ou BOOT_ORDER par defaut revient a la SD. Les clignotements de la LED verte codent la panne.
Erreurs frequentes
- Écraser l'EEPROM avec un firmware d'un autre modèle : utiliser uniquement rpi-eeprom-update sur un OS à jour.
- Oublier le firmware VL805 (pilote du contrôleur USB VIA VL805) : il est versionne separement dans l'EEPROM, un update partiel peut tuer l'USB.
- SSD glouton sur un hub non alimente : budget USB total plafonne à 1.2 A.
- BOOT_ORDER mal orthographié : l'EEPROM refuse l'écriture, tout reste en l'état.
- Retirer la SD avant d'avoir verifie le boot USB : garder une SD de secours.
Autres tutoriels pour cette carte
Exemples de code pour cette carte
led_blink.pyPythonbutton_led.pyPythonservo_sweep.pyPythondht_temp.pyPythonoled_i2c.pyPythonmcp3008_read.pyPython