Le but du jeu ici est de copier sur une Micro SD Card une image Raspbian afin de faire démarrer une Raspberry Zero W qui vient d’arriver aujourd’hui. On n’est pas obligé de faire de cette façon. Voir cette autre page d’instructions par exemple.
- On est sous PIXEL sur le RP3
- Ouvrir une console et aller dans le répertoire Téléchargements
- Saisir, au choix, l’une des deux commandes suivantes :
wget -O rasbian_test.zip https: //downloads .raspberry.org /raspbian_latest wget -O rasbian_test.zip https: //downloads .raspberry.org /raspbian_lite_latest |
- Aller boire un thé ou manger une pomme. Lire la suite de ce billet et retenir que par la suite, en fonction du fichier téléchargé il faudra ajouter « lite » ou pas.
- Vérifier l’intégrité du fichier (ce n’est pas immédiat comme procédure. Le processeur tourne à moins de 10%. Re-thé ou relecture…)
sha1sum raspbian_latest.zip |
- Si besoin aller sur le site https://www.raspberrypi.org/downloads/raspbian/ pour vérifier que les deux nombres coïncident bien
- Dézipper le fichier (ça prend du temps encore cette histoire et le processeur ne tourne qu’entre 10 et 25%)
unzip raspbian_latest.zip |
- À ce jour (11/03/2017) le fichier s’appelle dorénavant « 2017-03-02-raspbian-jessie.img »
- Ne rien connecter au RP3 et faire l’inventaire des périphériques en l’état.
df -h |
- Insérer une Micro SD Card dans un porteur USB et le brancher le porteur sur le Raspberry 3
- Relancer la commande précédente pour découvrir comment s’appelle la clé USB
df -h |
- Noter le nom de la clé. Ici elle s’appelle : /dev/sda1 et elle est montée en /media/philippe/ESD-USB. À noter que le 1 à la fin de sda1 indique que c’est la partition 1.
- Démonter la clé
umount /dev/sda1 |
- Si on tape « dd –version » dans la console et si le N° de version qui sort est inférieur à 8.24 alors il faut passer par l’étape suivante si on veut voir une barre de progression à l’écran. C’est à faire une seule fois. Installer le package « pv » pour suivre l’avancement de la commande suivante :
sudo apt-get install pv |
- Copier l’image sur la Micro SD Card. Attention il n’y a pas de N° à la fin de « sdd » (on va machouiller toute la carte et pas une partition particulière)
pv 2017-03-02-raspbian-jessie.img | sudo dd bs=4M of= /dev/sda |
- Si le N° de version de coreutils est supérieur à 8.24 on peut invoquer la commande suivante (à noter le paramètre status=progress ) :
dd bs=4M status=progress if =2017-03-02-raspbian-jessie.img of= /dev/sda |
- Vider le cache avant de retirer la Micro SD Card
sudo sync |
- Insérer la Micro SD Card dans le Raspberry Pi Zero W, brancher clavier, souris, écran et alimentation.
- Boot ! (Attention cela peut prendre du temps…)
- Quand tout sera configuré il faudra penser à supprimer sur le RP3, dans le répertoire « Téléchargements », le fichier zip téléchargé (rasbian_test.zip par exemple) ainsi que l’image disque associée (2017-03-02-raspbian-jessie.img par exemple).
Configuration du Wifi
- Saisir la commande suivante
sudo nano /etc/wpa_supplicant/wpa_supplicant .conf |
- Compléter le fichier avec les lignes suivantes (ne pas oublier les guillemets)
network={ ssid="Nom du Wifi" psk="Mot de Passe" } |
- Mettre en route le réseau (pour arrêter c’est sudo ifdown wlan0)
sudo ifup wlan0 |
- Faire un test de réseau avec un ifconfg pour récupérer l’adr puis un ping
ifconfig ping google.com |
Configuration du Wifi sans clavier ni écran
- Je me place dans le cas où on vient de copier l’image sur la Micro SD Card et où on vient de vider le cache USB du Raspberry 3 avec la commande suivante :
sudo sync |
- De plus, je suppose qu’il y a une Box qui fait serveur DHCP qui distribue des adr.
- Retirer la clé USB qui porte la Micro SD Card
- Remettre la clé USB. Si besoin, sur le RP3, cliquer sur le bouton « Annuler » de la boîte de dialogue qui apparaît sous PIXEL.
- Vérifier les périphériques montés avec
df -h |
- Par exemple, sur mon RP3 je vois la liste suivante
... /dev/sda1 /media/bob/boot /dev/sda2 /media/bob/8a907 ..... |
- Aller dans le répertoire /media/bob/8a907…. et inspecter son contenu
cd /media/bob/8a907 ... ls -all |
- On retrouve l’arborescence du futur système de fichiers du Raspberry Pi Zero W
- Saisir la commande suivante. ATTENTION : il y a un « . » devant « /etc » car on va éditer le fichier qui est sur la clé USB et PAS le fichier qui est sur le Raspberry Pi 3.
sudo nano . /etc/wpa_supplicant/wpa_supplicant .conf |
- Compléter le fichier avec les lignes suivantes (ne pas oublier les guillemets) :
network={ ssid="Nom du Wifi" psk="Mot de Passe" } |
- CTRL+O et CTRL+X pour quitter nano.
Ensuite on va modifier le fichier « interfaces » de la clé USB
- Ouverture du fichier
nano ./etc/network/interfaces |
- Dans le fichier il faut trouver les lignes
allow-hotplug wlan0 iface wlan0 inet manual ... |
- Et les modifier comme ci-dessous (ne pas oublier le dhcp en bout de ligne 🙂 )
auto wlan0 allow-hotplug wlan0 iface wlan0 inet dhcp ... |
- CTRL+O et CTRL+X pour quitter nano.
Pour terminer il faut créer un fichier « ssh » dans le sous-répertoire boot car le protocole ssh n’est pas supporté par défaut.
sudo touch .. /boot/ssh |
- ATTENTION : on parle bien du répertoire « /media/bob/boot » et PAS du répertoire « /media/bob/8a907…/boot « . Comme on est dans le répertoire /media/bob/8a907… il faut bien mettre deux points devant /boot dans la commande précédente. Prendre le temps de bien vérifier qu’un fichier vide nommé « ssh » est bien dans « /boot »
- Terminer avec les commandes suivantes avant de débrancher la clé USB qui porte la Micro SD Card du Raspberry 3
umount /dev/sda1 umount /dev/sda2 sudo sync |
- Insérer la Micro SD Card dans le Raspberry Pi Zero W et brancher l’alimentation.
- Boot !
- Ensuite il faut retrouver via sa box, l’adresse IP du Raspberry Pi Zero W et se connecter dessus en SSH pour terminer la configuration.
Utilisation du Bluetooth
Avec un mini clavier RT-MWK02+ par exemple.
Note
À ce jour (mars 2017) les manipes ci-dessous semblent à jour.
- Allumer le clavier et dans la console saisir la commande suivante :
bluetoothctl |
- On rentre alors dans une session dont le prompt commence par « [bluetooth]# ». Dans ce qui suit, après ce prompt c’est ce que l’on saisi. Le reste c’est la réponse de bluetoothctl. Saisir les commandes suivantes :
[bluetooth] # help Available commands: list List available controllers show [ctrl] Controller information select <ctrl> Select default controller devices List available devices paired-devices List paired devices power <on /off > Set controller power pairable <on /off > Set controller pairable mode discoverable <on /off > Set controller discoverable mode agent <on /off/capability > Enable /disable agent with given capability default-agent Set agent as the default one scan <on /off > Scan for devices info <dev> Device information pair <dev> Pair with device trust <dev> Trust device untrust <dev> Untrust device block <dev> Block device unblock <dev> Unblock device remove <dev> Remove device connect <dev> Connect device disconnect <dev> Disconnect device version Display version quit Quit program [bluetooth] # agent on Agent registered [bluetooth] # pairable on Changing pairable on succeeded [bluetooth] # scan on Discovery started ... [CHG] Device CC:C5:0A:1C:04:09 Name: Bluetooth 3.0 Macro Keyboard ... bluetooth] # scan off Discovery stopped ... [bluetooth] # pair CC:C5:0A:1C:04:09 Attempting to pair with CC:C5:0A:1C:04:09 [CHG] Device CC:C5:0A:1C:04:09 Connected: yes [agent] PIN code: 432703 [CHG] Device CC:C5:0A:1C:04:09 Modalias: usb:v05ACp8502d011B [CHG] Device CC:C5:0A:1C:04:09 UUIDs: 00001000-0000-1000-8000-00805f9b34fb 00001124-0000-1000-8000-00805f9b34fb 00001200-0000-1000-8000-00805f9b34fb [CHG] Device CC:C5:0A:1C:04:09 Paired: yes Pairing successful [CHG] Device CC:C5:0A:1C:04:09 Connected: no [bluetooth] # trust CC:C5:0A:1C:04:09 [CHG] Device CC:C5:0A:1C:04:09 Trusted: yes Changing CC:C5:0A:1C:04:09 trust succeeded [bluetooth] # connect CC:C5:0A:1C:04:09 Attempting to connect to CC:C5:0A:1C:04:09 [CHG] Device CC:C5:0A:1C:04:09 Connected: yes Connection successful [bluetooth] # info CC:C5:0A:1C:04:09 Device CC:C5:0A:1C:04:09 Name: Bluetooth 3.0 Macro Keyboard Alias: Bluetooth 3.0 Macro Keyboard Class: 0x002540 Icon: input-keyboard Paired: yes Trusted: yes Blocked: no Connected: yes LegacyPairing: yes UUID: Service Discovery Serve.. (00001000-0000-1000-8000-00805f9b34fb) UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb) UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb) Modalias: usb:v05ACp8502d011B [bluetooth] # exit |
Note
Une fois que cela a été fait, en ce qui me concerne… Rien ne marchait. J’ai simplement éteint et rallumé le clavier et là les caractères apparaissaient bien à l’écran. En tout cas il ne faut pas faire la manipe bluetoothctl à chaque fois 🙂
Si par la suite, le clavier ne fonctionne pas, rentrer dans bluetoothctl et saisir « connect CC:C5:0A:1C:04:09 » puis sortir.
Note importante
À ce jour (mars 2017) j’ai de très sérieux problème de charge CPU sur le Raspi Zero W avec Bluetooth. Je n’ai pas ces problèmes sur un Raspberry Pi 3 par exemple. Sur le Zero, si je « joue » avec le clavier, dès que ça marche, /usr/lib/bluetooth/bluetoothd fait grimper la charge à 100%. Je ne comprends pas ce qui se passe. Pour l’instant je m’en sors avec :
sudo systemctl stop bluetooth |
Ce n’est pas du tout satisfaisant.
Leave a Reply