Dans cette troisième partie, je m’attelle à installer Lubuntu sur une micro SD et sur un disque dur « SATA« , pour que le démarrage du Cubietruck se fasse sur ceux-ci.
Je vais aussi tester les GPIO, sans oublier l’installation d’un Arduino sur un port USB, pour en tester le bon fonctionnement.
PLAN DU TUTORIEL
.
1 – Installation de Lubuntu sur une micro SD.
2 – Installer Lubuntu sur un HDD en SATA.
3 – Activation des GPIO et test de fonctionnement.
4 – Tester un Arduino sur un Cubietruck.
5 – Installation de Fedora 19 R3, sur carte micro SD.
6 – Installation et utilisation de SSH via un PC sous Windows avec PuTTY.
7 – Correction des mises à jour sous Lubuntu : « sudo apt-get update » et sudo apt-get upgrade ».
8 – Plantage de ma session Linaro avec mot de passe linaro.
—-Début—-
Important ! J’utilise le bleu, pour simplifier la lecture des lignes de commandes que vous devez taper dans votre terminal.
.
1 – Installation de Lubuntu sur une micro SD.
1-1 Téléchargement.
Télécharger les 3 images suivantes :
– u-boot, ici : http://dl.cubieboard.org/software/a20-cubietruck/lubuntu/ct-lubuntu-card0-v1.00/u-boot-sunxi-with-spl-ct-20131102.bin
– bootfs, ici : http://dl.cubieboard.org/software/a20-cubietruck/lubuntu/ct-lubuntu-card0-v1.00/desktop/bootfs-part1.tar.gz
– rootfs, ici : http://dl.cubieboard.org/software/a20-cubietruck/lubuntu/ct-lubuntu-card0-v1.00/desktop/rootfs-part2.tar.gz
Dans mon cas, je copie les trois fichiers sur Lubuntu dans le répertoire téléchargement.
1-2 Procédure d’installation de Lubuntu, de la NAND vers une micro SD.
J’insère ma micro SD sur le Cubietruck. ma carte porte le nom de /dev/mmcblk0, je trouve cette information dans le logiciel « Disks » sous Lubuntu.
Nettoyage de la micro SD.
Dans un terminal en « SU », taper :
card=/dev/mmcblk0
Vérification de la présence de ma micro SD :
echo $card
Dans mon cas, résultat : « /dev/mmcb1k0″
Ensuite, taper :
sudo dd if=/dev/zero of=${card} bs=1024 seek=544 count=128
Vous devez vous déplacer dans le répertoire ou vous avez téléchargé les trois fichiers, dans mon cas c'est dans "Download".
Taper :
cd Downloads
Vérifier la présence des fichiers, en tapant :
ls
Maintenant, création de la micro SD bootable, en tapant :
sudo dd if=u-boot-sunxi-with-spl-ct-20131102.bin of=$card bs=1024 seek=8
ATTENTION ! Lors de cette phase, j’ai fait des erreurs, et pourtant je connais l’outil « fdisk ». J’ai corrompu ma micro SD. Pour corriger cela, j’ai utilisé un outil sous Windows pour corriger le MBR de cette carte micro SD, car elle ne fonctionnait plus et n’avait plus de cylindre …..
Création des partitions.
Taper :
sudo fdisk $card
Vous êtes maintenant dans le programme de création de partition. Taper « m » pour les commandes.
Créer les partitions.
Première partition, taper :
n
p
1
2048
133119
Seconde partition, taper :
n
p
2
133120
7744511 (Dans mon cas c’est cette valeur, pour vous c’est la taille maximale par défaut)
Vérifier les partitions, en tapant :
p
Valider les partitions en tapant :
w
C’est fini pour les partitions. (Vous n’êtes plus sous fdisk)
Maintenant, taper :
echo $card
Ce qui donne dans mon cas :
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 2048 133119 65536 83 Linux
/dev/mmcblk0p2 133120 7744511 3805696 83 Linux
J’identifie sur mon Cubietruck les partitions /dev/mmcblk0p1 et /dev/mmcblk0p2 pour les insérer dans les deux lignes ci-dessous :
sudo mkfs.ext2 /dev/mmcblk0p1
sudo mkfs.ext4 /dev/mmcblk0p2
.
.
Copie des fichiers...
mkdir /tmp/sdd1 /tmp/sdd2
sudo mount -t ext2 /dev/mmcblk0p1 /tmp/sdd1
sudo mount -t ext4 ${card}2 /tmp/sdd2
sudo tar -C /tmp/sdd1 -xvf bootfs-part1.tar.gz
sudo tar -C /tmp/sdd2 -xvf rootfs-part2.tar.gz
Soyez patient, c’est très long !
sync
sudo umount /tmp/sdd1
sudo umount /tmp/sdd2
C’est fini !
Redémarrer le Cubietruck avec votre micro SD, vous démarrerez sur celle-ci sans toucher à votre Lubuntu en NAND.
.
2 – Installer Lubuntu sur un HDD en SATA.
J’utilise ici, la méthode la plus simple pour copier votre version de Lubuntu sur votre HDD en SATA ou USB, tout en rendant celui-ci démarrable sur le port SATA.
Préparer la partition pour accueillir le Rootfs.
Sous Windows, utiliser un logiciel de partitionnement comme « MiniTool Partition Wizard Home Edition » gratuit.
Cliquer sur « miniTool Partition Wizard« .
Sélectionner le disque vierge sans partition que vous venez de connecter.
Dans mon cas, c’est un HDD SATA de 250 Go, vierge.
Je crée une partition de 20 Go, en primaire, en Ext4.
Le logiciel le prépare comme un disque Linux 83.
Je lance la procédure, c’est fait.
Je branche mon disque USB sur les deux ports USB de libre sur le Cubietruck.
J’active mon disque dans Lubuntu.
Je vous conseille d’effectuer cette procédure sur le port SATA, pour éviter certaines erreurs lors du démarrage.
Dans un terminal :
Taper :
sudo -s
fdisk -l
fdisk /dev/sda
Je quitte car ma partition existe bien et elle est correcte, en tapant :
Q
Taper :
sudo su – root
Copie du Rootfs sur le HDD SATA
dd if=/dev/nandb of=/dev/sda1 bs=1M
J’ai deux lignes qui s’affichent à la fin de la procédure :
2048+0 records in
2048+0 records out
Changer les paramètres du Boot pour démarrage sur le disque dur SATA :
mount /dev/nanda /mnt
leafpad /mnt/uEnv.txt
—Début du fichier—
root@cubietruck:~# cat /mnt/uEnv.txt
console=tty0
extraargs=console=ttyS0,115200 hdmi.audio=EDID:0 disp.screen0_output_mode=EDID:1280x720p50 rootwait panic=10 rootfstype=ext4
rootflags=discard
nand_root=/dev/sda1
—Fin du fichier—
Enregistrer et quitter.
Taper :
sync
umount /mnt
reboot
Votre Cubietruck redémarre, en utilisant Lubuntu sur le HDD.
Lorsque je le branche sur le port SATA, le Cubietruck démarre en premier sur le port SATA, car le démarrage via la NAND est désactivé.
Ça fonctionne !
.
Important ! Vous n’aurez plus accès à Lubuntu sur la NAND.
Vous n’avez plus qu’à réinstaller Lubuntu ou Android sur votre NAND pour avoir de nouveau accès à celle-ci.
3 – Activation des GPIO et test de fonctionnement.
C’est une méthode parmi temps d’autres. Elle est simple à mettre en œuvre et n’utilise pas de programmation.
Je ne suis en aucun cas responsable des dommages occasionnés suite à une mauvaise manipulation.
Pour créer mon tutoriel, je me suis inspiré d’un tutoriel sur le site suivant : http://runyourcode.com/gpio-en-cubietruck/
Merci à Eduardo Ibarra, pour son travail qui m’a permis de trouver une solution pour les GPIO avec une méthode assez simple.
J’utilise deux LED, l’une est rouge l’autre verte. Sur le pôle + de la LED, j’intègre une résistance de 100 ohms (marron/noir/marron//or), cela suffit amplement.
3-1 Installation des programmes et compilation.
Nous devons en premier installer les programmes utiles pour la compilation.
Dans un terminal en « SU« .
Nous devons commencer par l’installation de « git« , en tapant :
sudo apt-get install git
Il nous faut installer aussi « make », en tapant :
sudo apt-get install make
Quand c’est fait, taper :
git clone git://github.com/linux-sunxi/sunxi-tools.git
Maintenant nous allons dans le répertoire de « sunxi-tools »
cd sunxi-tools
Lancer la compilation, en tapant :
make
J’ai encore des erreurs !
J’installe dans le répertoire actuel, et je tape :
sudo apt-get install pkg-config
Sans oublier :
sudo apt-get install libusb-1.0
Je relance la compil :
make
Enfin, j’y suis arrivé !
3-2 Modification du scipt.
Avant de continuer !
Vous devez tenir compte des informations ci-dessous des GPIO sur le connecteur CN8.
Taper :
sudo -s
Maintenant, nous sommes en ROOT.
Taper :
mount /dev/nanda /mnt
cp /mnt/script.bin ./
./bin2fex script.bin >./script.fex
Nous allons ouvrir le fichier script.fex.
ATTENTION !
Je repasse sur mon Cubietruck dans un terminal en ROOT, car j’étais en Putty sur mon PC.
Je tape :
sudo -s
Je suis en « root@cubietruck:~# »
Taper :
cd sunxi-tools
Ensuite :
leafpad script.fex
dans la section « [gpio_para]« , j’ai :
[gpio_para]
gpio_used =1
gpio_num = 2
gpio_pin_1 = port: PH20<1><default><default><1>
gpio_pin_2 = port: PH10<0><default><default><0>
J’ajoute un # devant chaque ligne de cette section, comme ceci :
#[gpio_para]
#gpio_used =1
#gpio_num = 2
#gpio_pin_1 = port: PH20<1><default><default><1>
#gpio_pin_2 = port: PH10<0><default><default><0>
J’ajoute les lignes suivantes juste en dessous :
[gpio_para]
gpio_used = 1
gpio_num = 4
gpio_pin_1 = port:PI20<1><default><default><1>
gpio_pin_2 = port:PI21<1><default><default><1>
gpio_pin_3 = port:PI14<1><default><default><1>
gpio_pin_4 = port:PI15<1><default><default><1>
Enregistrer et quitter :
Dans menu « File« , « save« .
3-3 Finalisation de l’installation, avant le redémarrage du Cubietruck :
Taper :
./fex2bin script.fex >./script.bin
cp script.bin /mnt
cp script.bin /
reboot
3-4 Lancement des premiers tests LED.
Après le redémarrage du Cubietruck, ouvrir un terminal en « SU« .
Taper :
sudo -s
echo 1 > /sys/class/gpio/export
echo 2 > /sys/class/gpio/export
echo 3 > /sys/class/gpio/export
echo 4 > /sys/class/gpio/export
Pour vérifier, les GPIO :
ls /sys/class/gpio
Dans mon cas, le résultat s’affiche comme ceci :
export gpio1_pi20 gpio3_pi14 gpio4_pi15 gpiochip1 unexport
Mon « echo 2 > /sys/class/gpio/export » semble déjà utilisé et ne fonctionne pas !
3-5 Test de LED.
Je branche ma LED verte le + PIN 15 et la masse (-) PIN 13 de mon Cubietruck.
Je reste dans le même répertoire.
Taper :
cd gpio1_pi20
sudo -s
echo out > direction
echo 1 > value
La LED s’allume.
pour l’éteindre, taper :
echo 0 > value
Je rallume la LED en tapant :
echo 1 > value
Ensuite, je branche une autre LED rouge, avec le + sur PIN 18 et la masse (-) sur PIN 1.
Pour le test, taper :
cd ..
Cela permet de revenir dans le répertoire « gpio« .
Taper :
cd gpio4_pi15
echo out > direction
echo 1 > value
La LED s’allume.
Pour l’éteindre, taper :
echo 0 > value
.
C’est fini et ça fonctionne !
4 – Tester un Arduino sur un Cubietruck.
Pour installer le logiciel Arduino sur le Cubietruck dans l’environnement Lubuntu.
Démarrer votre Cubietruck sous Lubuntu.
Si vous avez copié des fichiers pour créer un disque boot sur micro SD je vous conseille de faire le ménage dans
Downloads et de vider la corbeille.
4-1 Installation du logiciel Arduino sur le Cubietruck.
Dans le menu, « System Tools » et sur « Synaptic Package Manager ».
Cliquer sur « Search » et taper « Arduino« .
Dans la liste vous devez sélectionner « Arduino« , sans oublier de valider les paquets qui sont liés.
Lancer la procédure.
C’est long !
Éteindre le Cubietruck.
4-2 Démarrage de l’Arduino et du logiciel.
Brancher votre Arduino sur un port USB de libre sur le Cubietruck.
Démarrer votre Cubietruck.
4-3 Test de fonctionnement de l’Arduino sur le Cubietruck.
Pour lancer le programme, aller dans menu, ensuite « Electronics » et « Arduino IDE« .
Un premier message s’affiche lors du premier démarrage du logiciel Arduino IDE, cliquer sur « Add« .
Maintenant, dans le logiciel Arduino 1.0.1 pas récent, mais tout à fait fonctionnel !
Vous constatez en bas à droite que le module Arduino est bien détecté par le Cubietruck et le logiciel, comme ceci « Arduino Uno on COM1« .
Ne pas s’en inquiéter pour l’instant.
A partir d’ici, vous pouvez faire vos expériences.
Vous pouvez changer la langue dans « File« , « Preferences« , dans « Editor language » chercher et sélectionner « Français (French)« .
Redémarrer le logiciel, c’est en Français.
4-4 Test simple.
Un petit test, permet de vérifier le fonctionnement de l’Arduino.
Sur le logiciel Arduino IDE, je clique dans le menu « File« , « Examples« , « Basics » et enfin « Blink« .
Sur l’Arduino, je branche une LED + sur la sortie 13 avec une résistance, et la masse (-) sur un GND, juste au-dessus.
Je clique sur la flèche pour compiler et envoyer le programme vers l’Arduino.
Dès lors, un message apparaît, vous indiquant un problème de connexion vers l’Arduino.
Ce n’est pas grave !
Il suffit d’indiquer ici le bon port.
Au départ j’avais une erreur sur le port /dev/ttyACM0, j’ai donc choisi le second /dev/ttyS1. Mais cela n’était dû qu’à un problème de synchronisation avec l’Arduino.
Donc après un premier essai, je démarre sur le port /dev/ttyACM0, c’est le bon.
Vous constatez que la LED orange clignote en même temps que celle branché sur la sortie 13, c’est normal ! La LED orange indique qu’un programme est en cours de fonctionnement sur l’Arduino.
Résultat :
La LED verte clignote !
.
C’est cool, ça fonctionne !
Vous pouvez visualiser mon test avec cette vidéo, ci-dessous :
5 – Installation de Fedora 19 R3, sur carte micro SD.
5-1 Matériel.
Il vous faut une micro SD de 8 Go.
Dans mon cas, j’utilise une carte de 16 Go, car j’ai l’apparition d’un message m’indiquant « espace insuffisant » pour mes 8 Go.
Formater cette carte avec « SDFORMATTER« , c’est un programme fort utile et que j’utilise régulièrement.
5-2 L’image de Fedora.
Télécharger l’image de Fedora 19 R3, ici : http://dl.cubieboard.org/software/a20-cubieboard/fedora/Fedora-19-a10-armhfp-r3.img.xz
Pour télécharger cette image sur votre Cubietruck, je vous conseille de créer une partition sur la partie de la NAND non utilisée.
Dans mon cas je formate, ma partition de libre de 5.5 Go avec le logiciel « Disks » sur Lubuntu.
Ensuite, je monte la partition.
5-3 Procédure d’installation.
Insérer la micro SD dans votre Cubietruck.
Monter votre micro SD, dans menu, « Accessories« , et « Disks« .
Choisir « SD Card Reader« , dans la fenêtre de gauche et cliquer sur le triangle à droite sous le volume à monter.
Maintenant, noter le nom de votre micro SD, pour moi, c’est en haut à droite sous le logo SD en rouge nommé SD Card Reader, j’ai « /dev/mmcblk0« .
C’est monté, quitter le logiciel « Disks« .
Maintenant, il faut ouvrir un terminal en « SU« , et taper :
« Je vais dans le répertoire où se situe mon image de Fedora.«
Vous pouvez utiliser SSH sous Lubuntu, car il est déjà installé.
Vous pouvez suivre ma procédure pour utiliser SSH, dans la section : « 6 – Installation et utilisation de SSH via un PC sous Windows avec PuTTY« .
Dans un terminal, vous devez taper :
sudo -s
cd /media
cd linaro
cd 5.5Go
Vérifier que vous êtes dans le bon répertoire, en tapant :
ls
Taper :
xzcat Fedora-19-a10-armhfp-r3.img.xz > /dev/mmcblko
Taper :
sync
Retirer la carte et la réinsérer dans le Cubietruck.
La partition Uboot se monte automatiquement. Dans mon cas, non, cela ne se monte pas automatiquement. Je monte mon disque avec le logiciel « Disks« .
Dans un terminal en « SU« , taper :
sudo -scd /media cd linaro cd uboot
Taper :
sudo bash select-board.sh cubietruck
Je suis ici : »root@cubietruck:/media/linaro/uboot# sudo bash select-board.sh cubietruck«
Démonter la partition :
Dans le répertoire : root@cubietruck:/media/linaro#
umount rootfs
umount uboot
Si vous n’arrivez pas à faire umout rootfs, ce n’est pas grave !
Éteindre le Cubietruck et redémarrer.
Premier démarrage du Cubietruck sur la micro SD avec Fedora 19 RC3.
Lors du premier lancement le Cubietruck redémarre une fois,
C’est normal !
Au second démarrage, vous arrivez sur la fenêtre de configuration.
Après avoir configuré les modules, vous passez à cette fenêtre ci-dessous.
Création d’un nouvel utilisateur, configuration de la date, de l’heure et du mot de passe root…
Dès le premier démarrage, internet est disponible via le câble réseau RJ45.
Voilà, c’est terminé !
6 – Installation et utilisation de SSH via un PC sous Windows avec PuTTY.
Sur Lubuntu, SSH est déjà installé, il suffit juste de vérifier l’adresse IP du Cubietruck, en tapant dans un terminal :
ifconfig
Dans mon cas, c’est :
192.168.1.75
Maintenant sur votre PC sous Windows, vous devez télécharger le fichier « putty.exe », ici : http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Lancer le programme en cliquant sur « putty.exe » sur votre PC.
Mettre l’adresse IP dans la case, comme sur l’image ci-dessus.
Il ne reste plus qu’à taper votre nom d’utilisateur « linaro » et votre mot de passe « linaro« .
C’est fait, vous êtes sur votre Cubietruck via un serveur SSH sur Windows dans un terminal.
7 – Correction des mises à jour sous Lubuntu : « sudo apt-get update » et sudo apt-get upgrade ».
Suite à l’impossibilité de mettre à jour mes paquets Lubuntu sur le Cubietruck.
Dans un terminal en « SU« , taper :
sudo leafpad /etc/apt/sources.list to
Dans le fichier ouvert mettre # devant les deux premières lignes et ajouter les deux lignes ci-dessous :
deb http://old-releases.ubuntu.com/ubuntu/ quantal main universe
deb-scr http://old-releases.ubuntu.com/ubuntu/ quantal main universe
Enregistrer et quitter.
Pour faire un test, taper :
sudo apt-get update
sudo apt-get upgrade
Suite à cela je peux enfin installer des programmes.
C’est une procédure de dépannage, mais ça fonctionne !
8 – Plantage de ma session Linaro avec mot de passe linaro.
Suite à diverses modifications sur ma session linaro avec le mot de passe linaro, je n’ai plus accès à ma session.
Pour l’instant, je n’ai pas de solution, car normalement ma session démarre automatiquement.
Vérification du fichier de configuration, OK.
Toujours le même problème Lubuntu démarre et arrive à la saisie de mon mot de passe. Après l’avoir tapé, ma session redémarre et retourne inlassablement à ma fenêtre de saisie de mot de passe.
Ce n’est pas grave !
J’ouvre une fenêtre TT2 sur cet écran et je dois taper un mot de passe, en cliquant sur « CTRL » « ALT » et « F2 » par exemple.
J’entre dans ma session mode terminal en tapant le nom « linaro » et le mot de passe « linaro ».
Comme je suis en « SU« , je vais créer un nouvel utilisateur, en tapant :
sudo adduser castman
Je valide mon nouveau mot de passe, en tapant :
castman deux fois et plus rien, dans les messages suivants.
lorsque c’est fini, taper :
sudo usermod -a -G sudo castman
Voilà, c’est fini !
Je retourne à mon mode graphique en cliquant sur « CTRL » « ALT » et « F6« , je suis de retour sur ma fenêtre de saisi de mot de passe.
Je clique dans la liste des utilisateurs, je sélectionne « castman« , et le mot de passe « castman«
C’est fait, ça fonctionne.
Redémarrer le Cubietruck.
Vous pouvez récupérer les fichiers et programmes de la session « linaro » avec « File Manager … »
Ouf !
Ce n’est pas terrible comme méthode ! Mais cela me permet de continuer à travailler rapidement sans avoir perdu mon travail sur ma session « linaro ».
A vous de jouer !