Quand on a besoin (rapidement) de mettre en place un Point d’Accès AP (AP = Access Point) WiFi avec un Raspberry Pi, la solution qui vient immédiatement à l’esprit est hostapd. Accessoirement il faut installer un serveur DHCP pour distribuer des adresses aux machines qui se connectent. Tout ça en ligne de commande et dans les fichiers de configuration. Heureusement, RaspAP vient à la rescousse !
Que celui qui n’a jamais fait de connerie d’erreur dans ces moments là, en oubliant de supprimer un #, en mettant une virgule en bout de ligne à cause d’un doigt qui traine ou autre… me jette la première pierre !
Pour permettre aux deux Raspberry Pi de l’article sur MQTT de communiquer, sans passer par une box, j’ai décidé de transformer le Raspberry Pi récepteur de données en hotspot (point d’accès) pour que l’autre (plus tard les autres) Raspberry Pi puissent y accéder même en cas de problème avec la box.
Pas question ici d’utiliser le point d’accès pour repartir sur Internet. Ce sera encore une autre étape. On va y aller pas à pas et se contenter de créer un AP et de vérifier que tout fonctionne…
Installer un hotspot WiFi avec RaspAP en un rien de temps
RaspAP = Raspberry Pi Acces Point = Point d’accès Raspberry Pi
Comme indiqué au début de l’article, hostapd est la solution qui vient à l’esprit, mais il faut configurer en ligne de commande et dans des fichiers texte. Heureusement, des personnes comme billz, ont développé une installation automatisée et une interface web (webgui = Graphic User Interface Web) pour gérer tout ça. Je vous invite à découvrir RaspAP-webgui
C’est l’article de Bentek qui m’a servi de base. N’hésitez pas à faire un tour sur son blog riche en solutions pour notre framboise
Préparer le Raspberry Pi
Comme toujours, je vous conseille de partir d’une distribution “propre” nouvellement installée. Ça évite des interférences éventuelles avec d’autres programmes.
Commencez par mettre à jour le système
sudo apt-get update sudo apt-get upgrade
Si vous avez un Raspberry Pi 3, le WiFi est intégré, avec les modèles 1 et 2 il faudra prévoir une clé USB WiFi reconnue par Raspbian. Si nécessaire, connectez la clé dans un des ports USB du Raspberry Pi.
Pour éviter d’avoir un fichier de configuration “parasite”, nous allons réaliser une copie de sauvegarde du fichier de configuration original du WiFi wpa_supplicant.conf, puis le supprimer.
sudo cp /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant.conf.org
J’ai l’habitude d’appeler mes fichiers sauvegardés en .org (comme original) mais vous faites bien comme vous voulez. L’important est d’en avoir une copie
sudo rm /etc/wpa_supplicant/wpa_supplicant.conf
Ensuite on peut supprimer le fichier de configuration du WiFi.
Installer raspAP-webgui
La page github de raspAP donne la commande à utiliser pour l’installation :
wget -q https://git.io/voEUQ -O /tmp/raspap && bash /tmp/raspap
Votre Raspberry Pi va afficher RaspAP et vous propose des dossiers pour l’installation des programmes RaspAP et Lighttpd. A moins d’avoir de bonne raisons de le contredire, répondez lui “Voui” enfin… Y puisqu’il cause anglais.
A la fin de l’installation, le script vous demande de l’autoriser à redémarrer le Raspberry Pi. Ne soyez pas contrariant(e), dites lui encore Y.
Les accès à RaspAP
Lorsque vous avez redémarré le Raspberry Pi, RaspAP a configuré hostapd. L’adresse IP WiFi de votre AP (Access Point = Point d’accès) est 10.3.141.0.
C’est à cette adresse que vous accéderez à l’interface wlan0 du Raspberry Pi configuré en AP. RaspAP a également configuré le DHCP pour qu’il distribue des adresses entre 10.3.141.50 et 10.3.141.255. Lorsqu’un appareil (PC, Raspberry Pi, smartphone, tablette etc.) se connectera sur cet AP, le DHCP lui distribuera une adresse IP comprise entre ces deux valeurs.
Pour paramétrer RaspAP, on accède à l’interface d’administration via une page web, en se connectant sur l’adresse de l’AP, c’est à dire 10.3.141.1. On peut le faire soit en local sur le Raspberry Pi AP lui-même, soit depuis une autre machine connectée à l’AP.
A à la fin de l’installation, après le redémarrage , le réseau sans fil sera configuré comme point d’accès avec les paramètres par défaut suivants :
- Adresse IP : 10.3.141.1/24 et 169.254.218.244/16
- Nom d’utilisateur gestion : admin
- Mot de passe gestion : secret
- Plage DHCP : 10.3.141.50 à 10.3.141.255
- SSID : raspi-webgui
- Mot de passe du SSID : ChangeMe
Mais vous allez pouvoir modifier tout ça
Un nouveau point d’accès WiFi
PC sous Windows
Regardez la liste de vos points d’accès WiFi trouvés par votre interface sans fil. Normalement, un AP nommé raspi-webgui est apparu dans la liste en plus des AP habituels. Sélectionnez le et dites au système que vous voulez vous y connecter. (Réalisé ici sur un PC sous Windows 10)
Entrez la clé de sécurité réseau qui est ChangeMe par défaut pour RaspAP. Comme son nom l’indique (en anglais) il est judicieux de changer ce mot de passe pour éviter que quiconque puisse accéder à votre point d’accès Pensez à le faire avant de mettre votre AP en exploitation réelle.
Raspberry Pi
Sur un Raspberry Pin mettez la souris sur l’icone WiFi. Ici le Raspberry Pi est connecté à la LiveBox de la maison, et il a reçu l’adresse 192.168.1.20. Déconnectez le port Wifi du Raspberry Pi. Attendez un moment que le RasPi récupère la liste des AP WifI disponibles aux alentours. Dans la liste sélectionnez raspap-webgui.
Saisissez la clé WiFi de notre AP : ChangeMe (oui je sais, je ne l’ai pas encore changé mais pour les tests je laisse toujours les choses en l’état, je modifie après… ça permet de savoir si la modif qu’on vient de faire a créé un souci. Si vous modifiez tous les paramètres et qu’ensuite ça ne fonctionne plus, vous ne saurez pas pourquoi).
Validez. Le Raspberry Pi se connecte à l’AP raspAP et prend une adresse IP dans la plage gérée par le DHCP.
Vérifiez en mettant la souris sur l’icône WiFi. wlan0 est bien associé à raspi-webgui et a pris l’adresse 10.3.141.138 qui est dans la plage du DHCP. Tout va bien… Remarquez que wlan0 a une adresse “de secours” en 169.254.x.x.
Paramétrage de RaspAP
Sur un PC vous allez pouvoir vous connecter à l’AP
Ouvrez un navigateur web soit sur le Raspberry Pi configuré en AP, soit sur une autre machine (ici un PC sous Windows 10). raspAP demande les identifiants : Utilisateur admin Mot de passe : secret. Bien entendu vous les changerez pour une utilisation réelle !
Vous accédez au tableau de bord de l’interface de gestion de raspAP.
Dans “Configurer hotspot” vous pourrez modifier les paramètres de l’AP (SSID, mode, canal). Par défaut laissez tel quel
Dans l’écran “Configurer DHCP” vous pourrez modifier la plage d’adresse du DHCP ainsi que la duré des baux. Laissez tel quel pour le moment, vous pourrez vous amuser plus tard.
Enfin, dans système, vous obtenez des informations sur le Raspberry Pi, vous pouvez choisir la langue et accéder à une console si vous souhaitez exécuter des commandes sur le Raspberry Pi.
Le point d’accès en service
La mise en place de ce point d’accès (AP) a été faite sur le Raspberry Pi utilisé comme broker MQTT dans le précédent article. L’objectif étant de relier directement le(s) Raspberry Pi et ESP8266 chargés des mesures au broker, sans passer par la box. De temps en temps la box prend des malaises, il faut la redémarrer (merci Orange ), du coup la liaison entre les capteurs et l’affichage se coupe.
Le broker a donc pris l’adresse 10.3.141.1 et le Raspberry Pi connecté à la sonde DHT22, qui lui envoie les données de température et humidité a pris l’adresse 10.3.141.138, distribuée par le DHCP (voir copies d’écran ci-dessus).
Après redémarrage des deux Raspberry Pi, la collecte des données a commencé et il est possible de les consulter avec une tablette. Ici la tablette a pris l’adresse 10.3.141.205.
On peut alors se connecter à l’AP, par exemple l’adresse du Dashboard généré par Chronograf : 10.3.141.1:8888.
Conclusion
En quelques clics et sans trop de connaissances, il est possible de créer un Point d’Accès WiFi avec raspAP.
On ne peut qu’être admiratif (de mon point de vue) devant le travail fourni par billz et par ceux qui ont participé à la mise au point et au développement de cette solution.
Si je peux finir sur un (mauvais) jeu de mot, je dirai que le point d’accès a été installé en deux coups de cuiller à (hots)pot.
Si vous aimez cette solution (ou si vous en connaissez d’autres) n’hésitez pas à intervenir dans les commentaires ci-dessous
Sources
- https://github.com/billz/raspap-webgui
- https://raspbian-france.fr/creer-un-hotspot-wi-fi-en-moins-de-10-minutes-avec-la-raspberry-pi/
Cet article RaspAP : Créez votre hotspot Wifi avec un Raspberry Pi de façon express a été publié en premier sur Framboise 314, le Raspberry Pi à la sauce française.....