Installer Armbian dans la mémoire eMMC d’une carte Nano Pi

Certaines cartes Nano Pi disposent de mémoire eMMC. C’est le cas des Nano Pi Neo Core et Neo Core2, mais aussi de la Neo Plus2.
Cette mémoire change radicalement l’utilisation possible de ces cartes Nano Pi, en autorisant leur utilisation dans un contexte industriel. En effet, la mémoire MMC (cartes SD ou microSD) dont sont équipées la plupart des cartes concurrentes, comme les cartes Raspberry Pi, a la fâcheuse tendance à rendre l’âme sans prévenir au bout de quelques mois d’utilisation. Il suffit de lancer une recherche sur un moteur de recherche avec les mots clés { sd card corrupted raspberry pi } pour comprendre le problème.

Les cartes Nano Pi équipées de mémoire de mémoire eMMC sont livrées avec le système d’exploitation « maison » qui est une version modifiée de ArmBian basé sur Ubuntu Xenial. Bien que ce choix soit celui de la simplicité, il amène à se pencher, dans un contexte industriel, sur la pérennité, l’évolutivité et la sécurité de cette solution.

La distribution ArmBian prenant en charge les cartes Nano Pi, il apparaît bien plus intéressant de se tourner vers cette solution. Cette solution permettra, par exemple, de recompiler « rapidement » les paquets du noyau (BSP) afin d’y intégrer des drivers absents de l’image par défaut (IIO par exemple). ArmBian fournit le script compile.sh qui permet de faire cela très simplement.

Dans cet article, nous allons voir comment installer ArmBian dans la mémoire eMMC d’une carte Nano Pi Core LTS. Cette carte sera implantée dans son mini-shield afin de pouvoir effectuer le prototypage.

Nous utiliserons comme environnement de travail un PC sous GNU Linux, car c’est beaucoup plus simple de travailler sur une carte Nano Pi à partir d’un PC sous GNU Linux. Pour ceux qui en doute, il suffit de se reporter à mon article sur Codelite.

Téléchargement de l’image ArmBian

L’image que nous avons choisi est la version Stretch basée sur Debian. Elle peut être téléchargée sur la page de téléchargement de ArmBian consacrée à la carte NanoPi Neo (et Core).

Une fois le fichier archive 7z téléchargé, puis décompressé on oubliera pas de vérifier la signature SHA256 du fichier afin de vérifier son intégrité…

$ 7za e Armbian_5.69_Nanopineo_Debian_stretch_next_4.19.13.7z 

7-Zip (A) [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=fr_FR.UTF-8,Utf16=on,HugeFiles=on,8 CPUs)

Processing archive: Armbian_5.69_Nanopineo_Debian_stretch_next_4.19.13.7z

Extracting  Armbian_5.69_Nanopineo_Debian_stretch_next_4.19.13.img
Extracting  Armbian_5.69_Nanopineo_Debian_stretch_next_4.19.13.img.asc
Extracting  armbian.txt
Extracting  sha256sum.sha

Everything is Ok

Files: 4
Size:       1103121482
Compressed: 266049577
$ sha256sum -c sha256sum.sha 
Armbian_5.69_Nanopineo_Debian_stretch_next_4.19.13.img: Réussi

Écriture de l’image sur carte microSD

Pour écrire l’image dans la mémoire eMMC, il faudra passer par une carte microSD. Une fois le système transféré en eMMC, cette carte SD pourra être retirée. La solution la plus simpliste pour écrire une image sur une carte SD est dd, mais il existe une solution beaucoup plus confortable et « sécurisée », elle s’appelle Etcher.

Balena Etcher en action

Je vous conseille donc d’utiliser Etcher pour écrire votre image sur la carte microSD. Pour l’installer proprement, il est préférable d’ajouter le dépôt de paquets :

echo "deb http://deb.etcher.io stable etcher" | sudo tee /etc/apt/sources.list.d/balena-etcher.list
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
sudo apt-get update
sudo apt-get install balena-etcher-electron

Démarrage de la carte Nano Pi sur la carte microSD

Une fois l’image écrite sur la carte microSD, il suffit de l’insérer dans la carte Nano Pi et de l’alimenter.

La première connexion se fera sur la liaison série de débogage (UART0). On utilisera pour ce faire, un adaptateur série-USB connecté au connecteur DBG_UART du mini-shield et un logiciel d’émulation de terminal comme gtkTerm ou minicom.

Lors de la première connexion, le mot de passe root est ‘1234’. Il devra être modifié pour un plus sûr ;-| et vous aurez la possibilité de créer un utilisateur. Je vous conseille de créer un utilisateur pi dans un premier temps.

Transfert du système en mémoire eMMC

Pour transférer le système de la microSD vers la mémoire eMMC, il suffit d’utiliser la commande :

sudo nand-sata-install 

On choisira ensuite le menu system on eMMc puis le type ext4.

Après quelques minutes de patience… On arrêtera proprement le système. Après coupure de l’alimentation, on retirera la carte microSD avant de redémarrer sur la mémoire eMMC… 🙂