Решение проблем с зависанием и потерей связи Wi-FI (updated: 05 Jul 2017, 17:43:09)


Это черновик статьи.

Здесь я постараюсь описывать варианты решения проблем со стабильностью прошивки. Если у вас есть что добавить, то отписываемся через обратную связь.


При некоторых ситуациях ESP8266 может работать не стабильно, то теряется связь, то зависает или перезагружается. Нормальное состояние работы прошивки - это когда время работы модуля исчисляется месяцами, если конечно электрики не подведут..


Причины, из-за которых невозможно зайти на веб интерфейс (модуль не пингуется):

1. Модуль завис или постоянно перезапускается.

2. Потеряна связь по WI-FI.

Как определить какая именно причина недоступности модуля в Вашем случае ? :

Если причина в связи Wi-Fi , то на дисплеях данные будут меняться, так же будут отрабатываться функции модуля, например функция KEY у прерываний. Термостат и Логический модуль будут отрабатывать действия при изменений внешних условий.

При обрыве связи Wi-FI время работы(Uptime) не сбрасывается.

Решение проблем с зависанием и перезапуском модуля

Хотя в модуле реализован механизм перезапуска при зависании (Watchdog), но в некоторых случаях он не спасает. Чаще этот механизм работает и модуль просто перезапускается.

Частые причины зависаний и перезапуска:

1. Не хватает тока от блока питания, требуется не менее 300мА.

2. Помехи по питанию. Спасает подключение электролита рядом с модулем на 200 мкф и больше. Рекомендуется установка керамического конденсатора на 0.1 мкф.

3. Импульсные помехи вблизи модуля. Необходимы как можно короткие провода к устройствам и/или оптическая развязка.

4. Мало свободного ОЗУ. Не старайтесь собирать прошивку с максимальным количеством функций. Если объём свободного ОЗУ меньше 12кб (для SSL функций меньше 25кб) , то возможны проблемы в работе.

5. Ошибка в работе какой либо опции в прошивке. Может встречаться в Beta а так же новых опциях проекта. Для решения проблемы необходимо написать сообщение администратору проекта с указанием установленных функций и при каких обстоятельствах происходит проблема.


Решение проблем с обрывами связи WI-FI

1. Низкое качество сигнала. На вкладке http://[ip_adr]/debug можно посмотреть уровень сигнала от роутера. Менее -80 db это уже не стабильная связь (число отрицательное, т.е. -50 это лучше, чем -80) . Необходимо так же смотреть уровень сигнала от модуля со стороны роутера. Проблему можно решить подключением антенны к ESP.

2. Конфликт IP адресов в сети. Попробуйте задать другой IP адрес вручную в настройках модуля.

3. Роутер отключает wifi связь устройству из-за бездействия. Помогает включение какой либо отправки на сервисы статистики.

4. Плохая совместимость с роутером. Точных данных по этой проблеме нет. Может помочь настройка параметров роутера, к сожалению эта настройка уменьшает скорость работы сети Wi-Fi:

-Ширина канала ставится 20мбит/с вместо автовыбора 20/40.

-Уменьшаем скорость сети путем выбора стандарта WI-FI вместо IEEE 802.11n ставим IEEE 802.11g или даже IEEE 802.11b.

В некоторых случаях более новый SDK может работать стабильнее, чем рекомендуемый SDK 1.3.0. Но последние SDK более ресурсоёмкие и количество полезных функций влазит меньше в прошивку.

Самый оптимальный вариант - это использовать отдельный роутер для сети модулей ESP8266, например купив в китае 3G/4G Router за $ 7 .