Je souhaite me connecter d'un téléphone Android à un RPI 3 via Wi-Fi direct.
Je veux le faire via Wi-Fi direct car le RPI sera un contrôleur pour un ou plusieurs appareils mobiles qui seront utilisés dans les bâtiments ainsi que dans la nature.
Dans les bâtiments, il pourrait simplement se connecter au Wi-Fi existant, mais dans la nature, il n'y a pas de Wi-Fi. Par conséquent, le RPI devrait être son propre point d'accès, mais le téléphone le contrôlant ne pourrait pas être connecté au Wi-Fi du bâtiment en même temps. De plus, cela deviendrait compliqué avec plusieurs RPI, l'un devrait être l'AP et les autres devraient s'y connecter.
Ce serait cool si je pouvais juste mettre sous tension les RPI, sans faire de configuration à chaque fois que leur configuration change, et me connecter indépendamment de l'endroit où il est utilisé.
Donc, avec Wi-FI direct étant une exigence: comment puis-je faire cela? Quelqu'un peut-il me fournir un exemple (ou un lien vers un exemple)? Fondamentalement, tout indice qui me rapproche de la cible m'aidera.
ce que j'ai jusqu'ici
J'ai installé Arch Linux ARM sur le PI à l'aide de ce guide: https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-3
J'ai ensuite installé wpa_supplicant en utilisant "pacman -S wpa_supplicant"
Ensuite, j'ai créé une petite configuration pour cela sous "/etc/wpa_supplicant/p2p.conf" qui contient:
ctrl_interface=/var/run/wpa_supplicant
device_name=PI
update_config=1
alors j'ai commencé wpa_supplicant en utilisant wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/p2p.conf
Ensuite, j'ai testé le Wi-Fi direct en utilisant wpa_cli
puis p2p_find
j'ai trouvé mon téléphone. Donc je suppose que pour le conducteur, tout va bien.
J'ai juste besoin de comprendre comment utiliser wpa_supplicant pour enregistrer un programme serveur s'exécutant sur mon PI, et comment le trouver et s'y connecter à partir d'Android.
Des idées?