• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Esp в режиме точки доступа

mwklim

New member
Всем доброго времени суток, мне очень сильно нужна ваша помощь. Я создаю точку доступа на esp, подключаюсь к этой точки доступа с компа/телефона, и мне нужно, чтобы все запросы, которые отправляются с браузера(например если я буду пытаться зайти на какой-либо сайт), выводились в COM-порт в том виде, в котором они отправляются с браузера.
 

Victor

Administrator
Команда форума
Я создаю точку доступа на esp
сделать, чтобы ESP работала как обычный роутер не получится, но логгировать запросы можно.
в Arduino IDE пишите скетч с вебсервером и DNS
перенаправляете весь трафик на себя, как в captive portal [inline]DNSServer.start(53, "*", myIP);[/inline]
в вебсервере перехватываете событие [inline]WebServer.onNotFound(handleNotFound);[/inline]
а в функции [inline]handleNotFound[/inline] выводите запрос в порт.
Единственный ньюанс в том, что смартфон/планшет определят, что интернета нет и покажут специальное окно (не в браузере) captive portal
теоретически вроде можно сделать и форвардинг трафика на ESP8266 в реальный интернет, но нужно пересобирать lwip
 

pet

Member
доброго времени суток!
у меня проблем с именем точки доступа! программирую на ардуино модуль вот такой! в запуске точки доступа функция WiFi.softAP(Ssid, Pass ); как будто игнорируется! хотя IP адрес легко настраивается. та же самая функция на простом esp8266 12e работает без проблем.
пробовал использовать функцию SDK bool wifi_softap_set_config (struct softap_config *config) но не получилось передать ей структуру, компилятор ругается что то хочет не пойму. В общем зашёл в тупик, выйти надо а как? мозгов не хватает!
помогите товарищи!:(
 

pet

Member
немного поковыряв документацию нашёл
структуру sdk для задания параметров точки доступа которая выглядит следующим образом[
Код:
struct softap_config {
uint8 ssid[32];
uint8 password[64];
uint8 ssid_len; // Note: Recommend to set it according to your ssid
uint8 channel; // Note: support 1 ~ 13
AUTH_MODE authmode; // Note: Don't support AUTH_WEP in softAP mode.
uint8 ssid_hidden; // Note: default 0
uint8 max_connection; // Note: default 4, max 4
uint16 beacon_interval; // Note: support 100 ~ 60000 ms, default 100
};
Уважаемые знатоки, Внимание вопрос:):rolleyes: : почему имя точки доступа имеет тип uint8??? и как это обойти????
 

dmitryc

New member
Так, uint8 это же char (один байт)
Код:
        char ssid[] = "MyWiFi";
        struct softap_config soap_cfg;
       
        os_memcpy(&soap_cfg.ssid, ssid, sizeof ssid);
 
  • Like
Реакции: pet
Сверху Снизу