🛠 Booter sur un SSD NVMe et récupérer une carte bloquée (MaskROM)

Orange Pi 3B (Rockchip RK3566) · avance · Schéma : IMG-orangepi-3b-avance-1-opi3b-boot-nvme.svg — Orange Pi 3B avec SSD NVMe dans le slot M.2, ordre de boot SPI NOR → eMMC → microSD → USB et touche MaskROM

Objectifs

Installer le système sur un SSD NVMe dans le slot M.2 M-Key (le RK3566 boote via un petit chargeur écrit dans la SPI NOR de 16/32 MB, le rootfs restant sur le SSD) et savoir remettre la carte d'aplomb en mode MaskROM si le bootloader est corrompu.

Matériel

Code complet

# 1. Depuis Armbian sur microSD : vérifier que le kernel voit le SSD (slot &pcie2x1 activé)
sudo fdisk -l | grep nvme             # attendu : /dev/nvme0n1
sudo dmesg | grep -i "pci.*link.*Gen" # attendu : "2.5 GT/s PCIe" (Gen2 x1)

# 2. Benchmark de cohérence (attendu ~300-450 MB/s, pas 3000+)
sudo apt install fio
fio --name=nvme --rw=write --bs=1M --size=256M --numjobs=1 --direct=1 \
    --filename=/mnt/ssd/testfile --runtime=30 --group_reporting

# 3. Copier le système en cours sur le SSD (écrit le chargeur en SPI NOR puis le rootfs en NVMe)
sudo apt install armbian-config
sudo armbian-install                # cible "NVMe", puis redémarrer sans la microSD

# 4. Recouvrement : carte qui ne boote plus
#   Éteindre -> maintenir la touche MaskROM -> brancher l'USB-C vers le PC -> RKDevTool
#   détecte « Found OneDevice » (USB 2.0 device) : réécrire mini-loader / uboot puis
#   effacer la SPI NOR, ou reflasher eMMC, puis rebooter sur microSD propre.

Vérification attendue

Après armbian-install et redémarrage sans microSD : lsblk montre / sur /dev/nvme0n1, uname -a démarre, et le boot suit l'ordre ROM RK3566 SPI flash → eMMC → microSD → USB. En MaskROM, lsusb (Linux) liste un périphérique « Rockchip USB Peripheral ».

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels