Как устройство может получить SSID и пароль моей сети без WPS?

13

Я изучаю способы заставить устройство IoT получать доступ к пользовательской сети Wi-Fi. Я знаю о способе WPS, когда устройство «транслирует» сигнал, а маршрутизатор, получив команду прослушивания, «принимает» его и дает устройству доступ. Есть также способ, которым устройство создает свою собственную точку доступа, пользователь подключается к ней, чтобы передать SSID и пароль домашней сети. Есть ли другие способы сделать это?

Я читал эту статью , что говорит об этом «ProbMe» метод :

Я могу ошибаться, но Broadlink Rm Pro может сделать что-то вроде этого. Недавно я настроил один из них, и мне просто нужно было:

  1. Подключите мой смартфон к моему Wi-Fi

  2. Отсканируйте QR-код или введите код в приложении Broadlink

  3. Введите SSID и пароль моей сети в приложении Broadlink

  4. И, я не знаю, как, устройство подключено к моей сети, приложение даже имеет свой MAC-адрес.

Кто-нибудь из вас знает больше об этом методе ProbMe и / или других альтернативах, чтобы предоставить IoT-устройству доступ к пользовательской Wi-Fi-сети?

Редактировать: В поисках ProbMe я обнаружил, что это технология от компании под названием Econais. Просто поделитесь, если кто-то из вас хочет разработать / произвести нечто подобное, компания работает с программным и аппаратным обеспечением IoT. Отказ от ответственности: я не работаю в Econais, и я не имею к этому никакого отношения.

Эрик Акира
источник
1
Это было своего рода ответом здесь. Многие чипы Wi-Fi имеют возможность переключения между режимом клиента и режимом точки доступа. ESP8266 способны iot.stackexchange.com/questions/2568/…
GusGorman402
Спасибо за комментарий @ GusGorman402. Клиентский режим / Режим точки доступа - хорошее решение для моей проблемы. В любом случае, я хотел бы отметить, что устройство Broadlink, которое я указал на мой вопрос, не использовало что-то подобное, по крайней мере, я не думаю, что оно использовалось, так как мой смартфон не переключал Wi-Fi, к которому он был подключен, ни вручную, ни программно. Могу поспорить, что это было что-то похожее на метод ProbMe.
Эрик Акира
Я думаю, что это использует протокол ESP-Touch, разработанный Espressif. В этой статье приводятся некоторые подробности и некоторый код Arduino для его использования через функцию WiFi.beginSmartConfig (). Я сам не проверял это, так что пока не ставлю это в качестве ответа, но я уточню все детали, если / когда я получу его работу.
Jsaven

Ответы:

9

Если вы используете ESP8266, встроенная функция Smart Config может достичь этого. Пример можно найти здесь: ESP8266 Arduino WiFiSmartConfig.ino .

Важные шаги должны установить в режим STA: WiFi.mode(WIFI_STA);

Затем начните искать пакеты smart config: WiFi.beginSmartConfig();

Наконец, проверьте, чтобы конфигурация была завершена: WiFi.smartConfigDone()

Wi-Fi может быть настроен на устройстве с помощью iPhone или Android Ap , или вы можете создать свой собственный из Espressif iOS Ap или Android Ap .

ESP32 также имеет эту возможность; см. демонстрацию 11: Как использовать SmartConfig на Arduino ESP32 .

jsaven
источник
1

Большинство устройств, которые я купил (IP-камеры, выключатели света, розетки), использовали ультразвуковую связь за кулисами. Посмотрите на такие бренды, как Chromecast, Lisnr & Chirp.

Когда устройство находится в режиме настройки, вы должны держать смартфон рядом с устройством, и клиентское приложение отправит аудиосигнал (может быть слышимым или не слышимым) с модулированным SSID и паролем. Звучит как каменный век, но это работает без излишеств :)

Ε Г И І И О
источник