Это предварительные результаты моих экспериментов по ускорению работы ESP8266 в режиме WIFI.

Отличие моего решения от известных в инете в том, что оно основано на стандартном SDK 2.0 и модифицированном загрузчике rboot.

В результате время связи WiFi сокращается от 2.5 (мин UDP 295 ms)  до 35 (установление соединения с роутером  4 сек ) раз.

 

 

 

 

 

————————————————————————————————

ESP8266 nboot+SDK2.0; WiFi+deepSleep
start 104.6 ms; 3.6 ma*s; 0.012 J(Дж);
WiFi 14.6 ms; 1.24 ma*s; 0.004 J(Дж);
All: 119.2 ms; 4.84 ma*s; 0.016 J(Дж).

 

 

Существует такая проблема как автоматический перевод ESP в режим программирования.
Классическая схема (схема 5 на рис ниже) из nodemcu построена на двух транзисторах и двух резисторах и использует два сигнала DTR и RTS от адаптера USB-COM.
—————————
Но не во всех адаптерах есть эти два сигнала. Бывает всего один DTR или вообще нет их.
Я использую любые адаптеры, в том числе и самые дешевые на чипе CH340G.
Сигналы DTR и RTS можно вывести с чипа это 13(DTR) и 14(RTS) пины.
——————-
Все просто, но вопрос лишь в наличии лишних контактов на разъеме.
Так на адаптерах с СР340G всего шесть контактов (5v, Vcc, 3v3,TXD,RXD,GND)
——————-
Если нет желания приклеивать доп контакты, то можно освободить один контакт Vcc .
Для этого надо перерезать дорожку к нему и соединить отсоединенную дорожку к контакту 3V3.
На освободившийся контакт припаиваем 13 пин CH340G.
=======================
В результате получаем USB адаптер c выходами на 3.3 v для ESP c сигналом DTR.
==========================
В инете можно найти различные варианты схем , которые работают не от двух сигналов DTR и RTS , как классика NODEMCU, а от одного DTR.
========================
классическая схема самая надежная и работает без проблем, но два сигнала и для рассматриваемого адаптера не подходит.
============================
Однако, все известные в интернете схемы имею проблему работы с терминальными программами такими как TeraTerm,PuTTY, в которых не просто управлять сигналом DTR, а его значение по умолчанию нулевое, что при старте программы автоматически переводит ESP в режим программирования.
=============================
Причина недостатка всех известных в инете схем управления с одним сигналом в том, что управление выполняется потенциалом.

==============================================================
Для устранения указанного недостатка я реализовал схему автомата управления импульсом.
схема получилась очень простая и по моей проверки работает надежно с терминальными программами и с UDK.
=========================

 

 

 

=================================================================

Схема 2.2 содержит два конденсатора С1, С2 номиналом 2.2 мкф
и один резистор R1 c номиналом 10 к, при наличии подтяжки GPIO0 к Vcc .
——————————————
Конденсатор C1 соединяет контакты DTR и RESET ESP
——————————————
Конденсатор C2 соединяет последовательно c резистором R1 контакты DTR и GPIO0 .

14
Окт

ESP8266 Deep-Sleep SDK_2.1.0

Posted by: Kamynin   in ESP8266, Умные вещи

Для существенного уменьшения потребляемого тока модулем, написал загрузчик, который обеспечивает опрос датчиков и сохранение их показателей в памяти RTC.

После этого, модуль либо переходит в режим сна, либо загружает основное приложение и передает данные по WIFI по протоколу UDP.

Результаты исследований показали, что в режиме работы без загрузки основного приложения (режим «загрузка»), минимальное активное время работы модуля составляет 85 ms, при этом модуль потребляет 2.6 ma*s.

При загрузке основного приложения (режим  «приложение»), минимальное активное время составляет 310 ms, при этом модуль потребляет 21 ma*s, устанавливает связь с сервером по WIFI, передает данные и принимает подтверждение от сервера.

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

График потребляемого модулем тока  в указанных режимах:

 

 

 

 

————————————————————————————

импульсы с амплитудой 40 ма — режим Загрузка;

импульсы с амплитудой до 300 ма — режим приложение;

Первый импульс Приложения — длительностью до 3 сек. Это время модуль затратил на установление связи с роутером и регистрацию в сети. После регистрации дальнейшая связь с сервером осуществляется в интервале от 0.31 сек.

Модуль переходит в режим Приложение каждый восьмой цикл просыпания.