Ich möchte eine Verbindung von einem Android-Handy zu einem RPI 3 über Wi-Fi Direct herstellen.
Ich möchte dies direkt über WLAN tun, da das RPI ein Controller für ein oder mehrere mobile Geräte ist, die sowohl in Gebäuden als auch in der Natur verwendet werden.
In Gebäuden könnte es nur eine Verbindung zum vorhandenen WLAN herstellen, aber in der Natur gibt es kein WLAN. Daher muss das RPI ein eigener AP sein, aber das Telefon, das es steuert, kann nicht gleichzeitig mit dem WLAN des Gebäudes verbunden werden. Außerdem würde es mit mehreren RPIs kompliziert werden, einer müsste der AP sein und die anderen müssten sich mit ihm verbinden.
Es wäre cool, wenn ich die RPIs einfach einschalten könnte, ohne bei jeder Änderung des Setups eine Konfiguration vornehmen zu müssen, und unabhängig davon, wo sie verwendet werden.
Wenn Wi-Fi Direct eine Voraussetzung ist: Wie kann ich das tun? Kann mir jemand ein Beispiel (oder einen Link zu einem Beispiel) geben? Grundsätzlich hilft jeder Hinweis, der mich näher an das Ziel bringt.
was ich bisher habe
Ich habe Arch Linux ARM mithilfe dieses Handbuchs auf dem PI installiert: https://archlinuxarm.org/platforms/armv8/broadcom/raspberry-pi-3
Dann habe ich wpa_supplicant mit "pacman -S wpa_supplicant" installiert
Dann habe ich unter "/etc/wpa_supplicant/p2p.conf" eine kleine Konfiguration dafür erstellt, die folgendes enthält:
ctrl_interface=/var/run/wpa_supplicant
device_name=PI
update_config=1
dann habe ich angefangen wpa_supplicant zu benutzen wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/p2p.conf
Dann habe ich Wi-Fi direkt mit getestet wpa_cli
und dann p2p_find
das Handy gefunden. Also nehme ich fahrerseitig an, alles ist gut.
Ich muss nur herausfinden, wie ich wpa_supplicant verwende, um ein Serverprogramm zu registrieren, das auf meinem PI läuft, und wie ich es von Android aus finde und verbinde.
Irgendwelche Ideen?
quelle
Antworten:
Ich konfiguriere /etc/wpa_supplicant/wpa_supplicant.conf wie folgt für zwei RPi3:
Dann starte es mit dem Befehl:
Dann folge ich diesem Link und verbinde zwei RPi3 per PIN-Authentifizierung:
RPi3_1: (ggf. mit sudo)
RPi3_2: (ggf. mit sudo)
Dann erkennen sie sich gegenseitig die MAC-Adresse. Anschließend startet ein RPI die Verbindung mit der generierten PIN:
RPi3_1 (ggf. mit sudo):
RPi3_2:
Dabei sind xx: ..: xx und yy: ..: yy die MAC-Adresse von RPi3_2 bzw. RPi3_1.
http://processors.wiki.ti.com/index.php/OMAP_Wireless_Connectivity_NLCP_WiFi_Direct_Configuration_Scripts#Create_1:2_P2P_Group_-_Connect_with_PIN_code
Grundsätzlich sind zwei RPi3 miteinander verbunden.
quelle
Verwenden Sie das Android als Hotspot und WLAN vom PI 3, um die Verbindung zum Internet aufrechtzuerhalten und eine Verbindung zwischen beiden Geräten herzustellen
quelle