Wie kann ein Gerät die SSID und das Passwort meines Netzwerks ohne WPS erhalten?


12

Ich untersuche Möglichkeiten, wie ein IoT-Gerät auf das WLAN-Netzwerk eines Benutzers zugreifen kann. Ich kenne den WPS-Weg, bei dem das Gerät ein Signal "sendet" und der Router, nachdem er angewiesen wurde, es abzuhören, "empfängt" und dem Gerät den Zugriff gewährt. Es gibt auch die Möglichkeit, wie das Gerät einen eigenen Zugangspunkt erstellt, mit dem sich der Benutzer verbindet, um die SSID und das Kennwort des Heimnetzwerks zu übergeben. Gibt es andere Möglichkeiten, dies zu erreichen?

Ich habe diesen Artikel gelesen, in dem es um diese 'ProbMe'- Methode geht :

Ich kann mich irren, aber der Broadlink Rm Pro kann so etwas tun. Kürzlich habe ich eine davon konfiguriert und musste nur:

  1. Verbinden Sie mein Smartphone mit meinem WLAN

  2. Scannen Sie einen QR-Code oder geben Sie einen Code in die Broadlink App ein

  3. Geben Sie meine Netzwerk-SSID und mein Passwort in der Broadlink App ein

  4. Und ich weiß nicht, wie das Gerät mit meinem Netzwerk verbunden ist, die App hat sogar ihre MAC-Adresse.

Weiß jemand von Ihnen mehr über diese ProbMe-Methode und / oder andere Alternativen, um einem IoT-Gerät Zugriff auf ein Benutzer-WLAN-Netzwerk zu gewähren?

Bearbeiten: Auf der Suche nach dem ProbMe habe ich herausgefunden, dass es sich um eine Technologie von einem Unternehmen namens Econais handelt. Wenn einer von Ihnen etwas Ähnliches entwickeln / produzieren möchte, arbeitet das Unternehmen mit IoT-Software / -Hardware. Haftungsausschluss: Ich arbeite weder bei Econais noch bin ich in irgendeiner Weise damit befasst.


1
Es wurde irgendwie hier beantwortet. Viele WLAN-Chips können zwischen Client-Modus und Access Point-Modus umschalten. ESP8266 sind in der Lage iot.stackexchange.com/questions/2568/…
GusGorman402

Danke für den Kommentar @ GusGorman402. Der Client-Modus / Access Point-Modus ist eine gute Lösung für mein Problem. Wie auch immer, ich möchte darauf hinweisen, dass das Broadlink-Gerät, auf das ich bei meiner Frage hingewiesen habe, so etwas nicht verwendet hat, zumindest glaube ich nicht, dass dies der Fall war, da mein Smartphone das WLAN, mit dem es verbunden war, weder manuell noch programmgesteuert umschaltete. Ich wette, es war der ProbMe-Methode ähnlich.
Eric Akira

Ich denke, dies verwendet das von Espressif entwickelte ESP-Touch-Protokoll . Dieser Artikel enthält einige Details und Arduino-Code, um ihn über die WiFi.beginSmartConfig () -Funktion zu verwenden. Ich habe das noch nicht selbst getestet, schreibe es also noch nicht als Antwort, aber ich werde es mit allen Details aktualisieren, wenn / wenn ich es zum Laufen bringe.
jsaven

Antworten:


8

Wenn Sie einen ESP8266 verwenden, kann dies mit der integrierten Smart Config-Funktion erreicht werden. Ein Beispiel finden Sie hier: ESP8266 Arduino WiFiSmartConfig.ino .

Die wichtigsten Schritte sind, um in den STA-Modus zu wechseln: WiFi.mode(WIFI_STA);

Dann suchen Sie nach den Smart Config-Paketen: WiFi.beginSmartConfig();

Überprüfen Sie abschließend, ob die Konfiguration abgeschlossen ist: WiFi.smartConfigDone()

Das WLAN kann dann auf dem Gerät mit einem iPhone oder einer Android-App konfiguriert werden , oder Sie können Ihre eigene mit der Espressif iOS-App oder der Android-App erstellen .

Der ESP32 verfügt ebenfalls über diese Funktion. siehe Demo 11: So verwenden Sie SmartConfig auf Arduino ESP32 .


1

Die meisten von mir gekauften Geräte (IP-Kameras, Lichtschalter, Steckdosen) verwendeten hinter den Kulissen die Ultraschallkommunikation. Schauen Sie sich Marken wie Chromecast, Lisnr & Chirp an.

Wenn sich das Gerät im Konfigurationsmodus befindet, müssen Sie Ihr Smartphone in die Nähe des Geräts halten, und die Client-App sendet ein Audiosignal (möglicherweise hörbar oder unhörbar) mit modulierter SSID und Passwort. Klingt nach Steinzeit, aber es funktioniert ohne Schnickschnack :)

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.