Ключевое ?лово

vk

Для начала необходимо определить сколько памяти установлено на модуле ESP8266.  Встречаются варианты модулей, с установленной памятью 512 кбайт(4 мегабита) , а так же 4мбайт(32 мегабита). Редко, но попадаются с флеш памятью 1 мбайт(8 мегабит). Почти все разновидности ESP-12 и новые ESP-07 имеют на борту 4 мегабайта. Объем памяти можно определить по маркировке flash чипа, посмотреть в программе Flash Download Tool или на вкладке /debug. Маркировка имеет вид 25QXX, где XX - объем в мегабитах, например 25Q32 имеет на борту 32 мегабита=4 мегабайта.

Определение размера памяти по вкладке ip_adr/debug:

Вкладка debug содержит разную полезную информацию, в том числе и реальный размер чипа флеш памяти в строке Flash real size, а так же размер памяти, установленный в прошивающей программе Flash set size, который важен для правильной поддержки OTA.

Если у вас нет купленых ключей, то прошивку можно скачать на страничке проекта, где доступны2 облегченных варианта прошивки:

-Вариант с поддержкой OTA с объемом памяти чипа 1мбайт.  Данная прошивка прошивается и в модули и с бОльшим объемом flash. Необходимо обязательно выбирать в прошивающей программе размер памяти 1мбайт !! Модули с 512кб не поддерживаются !!

-Вариант без поддержки OTA. Подходит для любого объема flash памяти. Необходимо обязательно выбирать в прошивающей программе размер памяти 512кбайт !!

Возможность дальнейшего обновления прошивки по OTA доступна только у кого есть активированные ключи !

Прошивку можно собрать так же в конструкторе прошивки , где необходимо выбрать настройки для поддержки OTA и объема flash 1 мегабайт.

При использовании OTA и с объемом 512кб невозможно одновременно использовать множество опций конструктора, а так же использовать новые SDK, т.к. прошивка в модуль не помещается !!

Если у вас имеются проблемы со стартом прошивки, то обязательно смотрим ниже абзац про решение проблем с прошивкой !

Подключение модуля для прошивки

Для прошивки ESP8266 необходим USB-UART переходник или Arduino. ESP8266 необходимо обеспечить напряжение питания 3.3в и током 200..300мА. Питание 3.3в от ARDUINO или от USB-UART подключать не рекомендуется - модуль может работать не стабильно из-за нехватки тока. Рекомендуется использовать стабилизатор вида 1117.

Подключение ESP8266 к USB-UART: Необходимо подключить общие выводы GND(минус). RX у USB-UART на TX ESP, TX у USB-UART на RX ESP. Подключаем так же источник питания 3.3в.

Подключение ESP8266 к Arduino: Необходимо подключить общие выводы GND(минус).RX у Arduino на RX ESP, TX у Arduino на TX ESP. Подключаем так же источник питания 3.3в. RESET у Arduina необходимо подключить к GND.

На модуле ESP8266 вывод CH_EN необходимо подключить к +3.3в для того, чтобы включить чип.

GPIO 0 на время программирования, перед включением питания необходимо подключить к GND(земля). После успешной прошивки GPIO 0 можно отключить от GND. Если на модуле выведен GPIO 15, то его необходимо подключить на GND через резистор 10кОм на постоянной основе !!

Прошивка модуля

Для начала необходимо установить драйвера для вашего USB-UART переходника или Arduinы.

Прошивка через Nodemcu Flasher: Устанавливаем на вкладке Advanced Параметр Flash size в соотвествии выбранным размером flash памяти (в байтах). Остальные параметры не трогаем. Указываем на вкладке Config путь на файл прошивки с адресом 0x0000. На вкладке Operation выбираем COM порт и жмем кнопку FLASH.

Прошивка через Flash download tool: Описание в разработке(Действия аналогичны).

Прошивка через esptool. Пример команды esptool.py --port /dev/ttyUSB0 write_flash -fs 8m 0x00000 esp8266.bin . где -fs 8m параметр нужен только для указания размера при одномегабайтовой прошивке.

Скорость COM порта рекомендуется ставить не выше 115200.

Запуск модуля

После успешной прошивки необходимо запустить режим safe mode, замкнув между собой RX и TX и перезапустив модуль или нажать 3 раза подрят (с интервалом нажатия около секунды) кнопку RESET на ESP8266. В эфире появится точка с именем homessmart , к которой можно подключится используя смартфон или ноутбук.

main optПосле успешного коннекта заходим по адресу http://192.168.4.1 . Настраиваем подключение на свой роутер на вкладке main веб интерфейса. Необходимо вбить в поля WiFi options данные своей точки доступа. Для подключения к роутеру выбираем режим "Station mode". После нажатия кнопки set ниже появится IP адрес, на который можно заходить внутри своей беспроводной сети.

Далее обновляем страницу и видим внизу IP адрес, на который уже можно будет заходить внутри Вашей локальной сети.

Тут же вы можете установить свой логин и пароль на странички настроек веб интерфейса. По умолчанию логин esp8266, пароль 0000. Длинна логина и пароля не более 8 символов. Пароль затребуется на все вкладки настроек. А при установленной опции "Full Security" и на все GET запросы управления. В режиме safe mode пароль не запрашивается !

На данной вкладке можно задать имя модулю, которое будет отображаться на главной и в системе flymon, а так же в топике на MQTT сервере.

 

Решение проблем с прошивкой

Иногда, после сторонних прошивок или мусора модуль может не запустится и необходимо выполнить дополнительные действия. Необходимо затереть flash память пустым бланком по адресу 0x00000. Если вы используйте прошивку с размером 1 мегабайт, то качаем этот бланк. Далее уже прошиваем саму прошивку снова.

У некоторых пользователей даже после зачистки бланком модуль не стартует или стартует только при установленном режиме 512 кб или 4мб, возможно это связано с низким качеством flash памяти или частичной её несовместимостью с чипом ESP8266. Обратите внимание, что если даже у вас получилось запустить прошивку в режиме 4мб, то обновление по OTA в таком режиме не пройдет - модуль не запустится после обновления. По некоторым сведениям от пользователей помогает замена чипа памяти.

Если на главной странице модуля выводится сообщение "Error flash size ! (code 0x1)", то это значит была прошита прошивка 1мегабайт в режиме 512кб. При этом включается режим Safe Mode и возможны сбои в работе модуля из-за таких неверных настроек. Убедитесь, что на модуле установлен необходимый размер памяти - это видно на веб вкладке ИП_АДРЕС/debug в строке Flash real size. Режим объема памяти указывается в прошивающей программе.

Если на главной странице модуля выводится сообщение "Error flash size ! (code 0x2)", то это модуль имеет всего 512кб flash памяти и это значит, что необходимо использовать прошивку без включенного режима 1 мегабайт или не использовать OTA. Можно так же перепаять микросхему flash памяти на более ёмкую.

ВАЖНО !!  Если модуль не может получить IP адрес. Висит постоянно статус connect , то рекомендуется вписать IP адрес вручную ниже. Для этого необходимо выбрать режим Static IP и вписать IP модуля и IP шлюза(IP роутера). После этого можно заходить на модуль уже внутри сети по IP адресу, который указали в настройках..

Сохранение настроек в файл

Настройки модуля можно сохранить в файл, исключая настройки WI-FI, состояния GPIO, список датчиков DS18B20. Файл необходимо скачать по адресу ИП_АДРЕС/configsave.bin . Записывается обратно в модуль через программатор по адресу 0x3C000 для 512кб прошивки, 0x7C000 - для 1мб. Настройки можно скачать и через esptool.py используя пример ниже подставив нужный адрес. 

Скачать настройки WI-FI можно по адресу ИП_АДРЕС/configsave.bin?pg=66 для 512кб, ИП_АДРЕС/configsave.bin?pg=130 для 1 мег. Скачать через esptool.py можно командой esptool.py read_flash 0x7E000 4096 mywifi_settings.bin для 512 кб (Для 1024кб адрес будет 0xfe000).

Полезные ссылки:

Видеоиструкция по настройке от Umka 

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.