ESP8266 Как вывести из режима ожидания клиента?

Dmitriy7000
Offline
Зарегистрирован: 19.04.2016

Проект переделан из вот этого первый вариант. Всё конектится, вебка работает. Но никак не пойму, как вывести из режима ожидания клиента, что бы контроллер мог действия выполнять.

Опрос датчиков и все действия совершаются при входе клиента на вебку или при совершении действия в вебке.

Как быть?

sadman41
Offline
Зарегистрирован: 19.10.2016

Переписать в неблокирующем режиме, очевидно. Для этого найти место, где все блокируется.

Dmitriy7000
Offline
Зарегистрирован: 19.04.2016

Блокируется где то в ClientWiFi.h или где то там, за строчкой WiFiClient client = server.available();

Контроллер запустился и прога работает, Loop крутится. Но стоит подключится к вебке, как loop больше не крутится. Надо закрыть окно браузера и через некоторое время loop опять закрутится. Но если зайти на вебку, разорвать связь, закрыть браузер, то loop больше не закрутится.

В самом WiFiClient.h есть такие строки:

#define TCP_DEFAULT_KEEPALIVE_IDLE_SEC          11 //7200 // 2 hours

#define TCP_DEFAULT_KEEPALIVE_INTERVAL_SEC      7 //75   // 75 sec
#define TCP_DEFAULT_KEEPALIVE_COUNT             9    // fault after 9 failures
 
Но что-то интервалы не срабатывают.
Dmitriy7000
Offline
Зарегистрирован: 19.04.2016

Решилось. Утро вечера мудрее. : )

while (client.connected()) {            // loop while the client's connected