Le raspberry pi zero W est un tout petit ordinateur avec carte wifi. Recette simple pour une installation de raspbian lite sans clavier ni écran.
Le raspberry pi zero W est vraiment tout petit! Mais il peut quand même faire pas mal de boulot. Il est sorti en février 2017, et présente un avantage considérable par rapport à son prédécesseur, le raspberry pi zero : il peut se connecter au Wifi!
Dans cet article, vous apprendrez comment installer raspbian sur cette carte sans utiliser ni écran, ni clavier. Cela veut dire qu'à aucun moment, nous n'utiliserons le pi directement. Pour l'utiliser, nous devrons donc nous connecter à distance par ssh.
Pourquoi ce défi ? parce que cette toute petite carte ne comporte que quelques connecteurs :
Rares sont ceux qui possèdent les câbles nécessaires pour connecter écran et clavier là-dessus pour une installation standard, et nous allons donc procéder de manière plus intelligente (et plus rapide).
Voici donc ce que nous allons faire :
Le raspberry pi zero W existe en deux versions:
À gauche, le pi zero WH possède un header GPIO soudé en usine. Comme vous pouvez le voir, le mien est un pi zero W. Ce modèle est plus adapté pour être intégré à un circuit électronique, mais il me faudra souder moi-même un header pour expérimenter avec une breadboard.
Je suggère de se procurer le pi zero chez kubii (10 euros pour the W, 15 euros pour the WH). Je ne suis aucunement affilié avec eux, mais on peut leur faire confiance et ils ont de bons produits. Alors un peu de pub ne fait pas de mal.
Une chose à garder à l'esprit : Le pi zero ressemble vraiment au pi 3B+, mais il est beaucoup moins puissant.
Pi 3 B+ | Pi Zero | |
CPU |
Quad Core
ARM Cortex-A53 |
Single Core
ARM1176JZF-S |
Fréquence d'horloge | 1.4 GHz | 1 GHz |
Nombre de coeurs | 4 | 1 |
RAM | 1 GB | 512 MB |
Prix | 35 euros | 10 or 15 euros |
Avec son unique coeur et sa mémoire réduite, le pi zero devra être dédié à une seule tâche assez simple.
Par exemple, je vais utiliser le mien pour monitorer la puissance électrique consommée chez moi. Sa petite taille me permettra de le loger facilement dans le tableau électrique, et il n'aura pas grand chose à faire :
Cela étant dit, c'est parti pour l'installation.
Cette opération est bien expliquée dans mon tuto sur l' installation minimale d'un raspberry pi . Veuillez vous y référer et revenir ici après avoir flashé l'image de raspbian lite sur la carte SD.
Par défaut, le serveur ssh est désactivé dans raspbian lite, et nous en avons vraiment besoin pour pouvoir se connecter au pi à distance après l'installation.
Dans l' installation minimale d'un raspberry pi , nous avons mis en service le serveur ssh avec raspi-config, mais ce n'est pas possible ici car nous ne pouvons (ou ne voulons) pas connecter un clavier et un écran au pi zero.
La solution est simple !
Après l'écriture de la carte SD, retirez-la du lecteur et ré-insérez la de façon à ce que votre système d'exploitation monte la partion boot de la carte SD sur votre ordinateur. Voici ce que je vois sur mon mac:
Sous MacOS ou Linux, ouvrez un terminal et allez à la racine de la partion boot. Ensuite, faites:
touch ssh
Cela crée un fichier vide appelé ssh dans ce répertoire, et cela suffit à mettre en service le serveur ssh lors du premier démarrage du pi!
Pour configurer la connection wifi, nous allons créer un autre fichier à la racine de la partion boot.
Appelez-le wpa_supplicant.conf, et utiliser votre éditeur de texte favori (par exemple nano ou emacs) pour y mettre le texte suivant :
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=FR
network={
ssid="The name of your wifi network"
psk="Your password"
key_mgmt=WPA-PSK
}
Évidemment, prenez bien garde à :
Maintenant, démontez (éjectez) la carte SD, mettez la dans le pi zero, et branchez son alimentation. La led du pi zero commencera à clignoter. Donnez-lui un peu de temps pour démarrer son serveur ssh.
Après environ 30 s, le pi zero devrait être connecté à votre réseau wifi. Mais nous ne connaissons pas son adresse IP! Enquêtons...
Si votre routeur a fait correctement son boulot, vous devriez pouvoir effectuer un ping vers le pi en utilisant son nom par défaut, qui est raspberry. Je suppose bien sûr que vous n'avez pas déjà un autre raspberry pi sur le réseau avec ce nom-là. D'ailleurs rappelez-vous de toujours donner un nom unique à vos pis, car on a tendance à les accumuler...
Voici comment faire le ping :
ping raspberry
PING raspberrypi.lan (192.168.86.72): 56 data bytes
64 bytes from 192.168.86.72: icmp_seq=0 ttl=64 time=9.043 ms
64 bytes from 192.168.86.72: icmp_seq=1 ttl=64 time=12.771 ms
64 bytes from 192.168.86.72: icmp_seq=2 ttl=64 time=8.236 ms
64 bytes from 192.168.86.72: icmp_seq=3 ttl=64 time=13.609 ms
64 bytes from 192.168.86.72: icmp_seq=4 ttl=64 time=13.310 ms
64 bytes from 192.168.86.72: icmp_seq=5 ttl=64 time=13.606 ms
64 bytes from 192.168.86.72: icmp_seq=6 ttl=64 time=7.753 ms
Maintenant vous savez que vous pouvez utiliser le nom de machine par défaut pour ssh, et vous connaissez l'adresse IP du pi.
Si cela ne fonctionne pas, vous pouvez aller sur la page d'administration de votre routeur pour voir si une nouvelle machine est connectée. Je ne peux pas vraiment vous aider avec ça.
Enfin, vous pouvez utiliser nmap. Installez cet outil , ouvrez un terminal, et tapez:
nmap -sP 192.168.1.1/24
Je suppose ici que les adresses de votre réseau local commencent par 192.168.1, ce qui est généralement le cas. Chez moi, elles commencent par 192.168.86, donc j'ai tapé nmap -sP 192.168.86.1/24. Le /24 veut dire que nmap va scanner toutes les adresses, de 192.168.1.0 à 192.168.1.255.
Starting Nmap 7.70 ( https://nmap.org ) at 2019-04-28 16:57 CEST
Nmap scan report for testwifi.here (192.168.86.1)
Host is up (0.014s latency).
Nmap scan report for 192.168.86.22
Host is up (0.021s latency).
Nmap scan report for 192.168.86.24
Host is up (0.029s latency).
Nmap scan report for raspmedia.lan (192.168.86.30)
Host is up (0.020s latency).
Nmap scan report for chromecast-audio.lan (192.168.86.46)
Host is up (0.043s latency).
Nmap scan report for rasphome.lan (192.168.86.58)
Host is up (0.023s latency).
Nmap scan report for 192.168.86.60
Host is up (0.054s latency).
Nmap scan report for lyocms23.lan (192.168.86.61)
Host is up (0.00051s latency).
Nmap scan report for pizerow1.lan (192.168.86.72)
Host is up (0.014s latency).
Nmap done: 256 IP addresses (9 hosts up) scanned in 3.64 seconds
Avec ces informations, vous devriez être capable de trouver l'adresse IP de votre pi zero.
Connectez-vous au pi par ssh :
ssh pi@<raspberry, or IP address>
Utilisez le mot de passe par défaut, qui est raspberry.
Nous allons maintenant configurer la machine avec raspi-config :
sudo raspi-config
Dans Localisation Options :
Revenez en arrière et allez dans Network Options :
Revenez en arrière et changez le mot de passe utilisateur (User password). C'est important car, pour des raisons de sécurité, vous ne pouvez pas garder un mot de passe connu par tous!
Vous pouvez maintenant quitter raspi-config et redémarrer. Après le redémarrage, vous devrez vous reconnecter par ssh, avec le nouveau nom de machine.
Enfin, nous allons mettre à jour le sytème :
sudo apt update
sudo apt upgrade
Et, si vous le souhaitez, vous pouvez installer des packages supplémentaires, par exemple :
sudo apt install xterm emacs git dbus-x11
Dans cet article, vous avez appris :
Préparez-vous à quelques tutos sur le thème des objets connectés!
N'hésitez pas à me donner votre avis dans les commentaires ! Je répondrai à toutes les questions.
Et si vous avez aimé cet article, vous pouvez souscrire à ma newsletter pour être prévenu lorsque j'en sortirai un nouveau. Pas plus d'un mail par semaine, promis!
Rejoignez ma mailing list pour plus de posts et du contenu exclusif: