В последних SDK, вроде с версии 1.2.0, появился странный глюк:
Не всегда срабатывает установка режима wifi-sleep (NONE, LIGHT, MODEM).
Сильно зависит от многих факторов - последовательности установки опций WiFi и если сбилось что-то в китай-части SDK, то при старте модуля режим WiFi-sleep не устанавливается. Т.е. устанавливается частично. К примеру в режиме LIGHT китайцы так и не починили работу модуля. Проявляется в том, что большие файлы или длинные данные LwIP передать не может. Данная опция тупо увеличивает времена таймеров в сотню раз, по которым LwIP производит обслуживание потока. По умолчанию, для нормальной работы LwIP использует таймер на 25ms, а они ставят на тысячи, чтобы во время паузы вызовов таймера остановить CPU. Естественно у него возникают глюки...
Обходной маневр нормальной установки режимов wifi-sleep пока не найден, да и прошлый "патч" не проходит... Намудрили что-то китайцы с этим...
Вообще wifi-sleep (LIGHT, MODEM) в последних SDK работает только для режима WiFi STATION (тоже странность). Установка wifi-sleep отрабатывает если произвести принудительную смену режима из AP+ST в ST. Иначе, даже при старте с прошлыми запомненными значениями установок в китай-части SDK режим wifi-sleep не включается (это происходит на любых прошивках, хоть их IOT, если что-то там в китай-сохранениях сбилось). Включается глюк не дающий передавать много данных, а потребление не падает. Такая фича.... И таких глюков в китай-части SDK ещё сотни
2 явных глюка (вызывает протектед), связанных с wifi_set_opmode() (похоже она-же и завязана с установкой wifi-sleep) им отправлено давно...
В своих частях ещё можно что-то исправить, а в китай - нет и главное, что исправлять и проверять они ничего не хотят, а только пиарятся со своей программой для "Баунти" (для буратин?)