Реклама ⓘ
Главная » Arduino
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

WiFi ESP8266. Nodemcu Lua для ESP-01. Управление нагрузками по web интерфейсу

Довольно широко известно, что компания Espressif выпускает крайне недорогие модули WiFi, стоимость составляет порядка 2-3 долларов за один модуль. Кроме дешевизны, да и благодаря ей, на основе WiFi модулей ESP8266 развиваются инструменты программирования и управления, доступные каждому желающему. Первым модулем ESP8266 был выпущен ESP-01, особенностями которого являются малый размер, встроенная PCB антенна и всего два доступных порта ввода – вывода. Построен этот модуль по аналогии с популярным NRF24L01. Далее модули, пройдя некоторый путь эволюции, стали выпускаться в несколько другом форм факторе:

С одной стороны такие модули как ESP-07 более удобные и имеют большее количество портов ввода – вывода, но занимают большее посадочное место. Поэтому, кажется, устаревший формат ESP-01 все же проще использовать в несложных проектах, для которых компактность имеет не последнее значение, так как для подключения только необходимо место для восьми штырьков. Справедливости ради стоит отметить, что из-за этого конструкция с модулем ESP-01 будет выше.

На сегодняшний день существует несколько способов программировать модули ESP8266 и управлять ими: по умолчанию настройка и управление происходит посредством AT команд, можно также перепрошить модуль nodemcu и писать прошивки на lua, а можно воспользоваться средой программирования Arduino последних версий, где этот модуль WiFi поддерживается. Каждый способ имеет свои плюсы и минусы и имеет право на существование.

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

Изначально (если это не модуль или плата nodemcu) WiFi модуль идет с AT прошивкой, нам необходимо перепрошить его nodemcu. Для этого необходимо воспользоваться софтом для прошивки модулей ESP. На мой взгляд, самая удобная программа это ESP8266Flasher (или nodemcu flasher). Для подключения к компьютеру модуля ESP необходим USB-UART преобразователь. Забегая немного вперед, нужно отметить, что не всякий преобразователь интерфейсов будет работать. При таком подключении к компьютеру WiFi модуль должен в терминал отсылать сообщения, ответы на команды, но если этого не происходит, то варианта может быть два как минимум при условии верного подключения модуля по UART. Первый это действительно неисправный преобразователь USB-UART или с какими-то особенностями, отклонениями. Второй вариант это то, что вы используете купленный готовый преобразователь со всеми прибамбасами и светодиодиками. Как раз неверное подключение этих светодиодов (к линиям данных) и не даст корректно работать WiFi модулю. Варианта снова два – попробовать использовать другой преобразователь или просто отпаять лишние детали.

Что бы прошить модуль ESP-01, необходимо его подключить следующим образом: подключить плюс и минус питания к модулю (напряжение от 3 до 3,6 вольт), линии Rx и Tx модуля USB-UART, выводы ресет и чип энебл подтянуть к плюсу питания, вывод GPIO0 подтянуть к земле. Сначала подключаются выводы, потом подается питание, а не наоборот.

Дальше все просто, открываем nodemcu flasher, выбираем нужный порт, во вкладке Config выбираем путь к прошивке, во вкладке Advanced задаем настройки для модуля. Практически при любой конфигурации параметров модуль работает нормально, необходимо задать объем флэш памяти WiFi модуля. Для ESP-01 это 512 кб. Хотя все работает, если даже задать больший объем.

Во вкладке Operation жмем Flash и должен пойти процесс загрузки, при этом появляется QR код и MAC адреса.

Во вкладке Log можно просмотреть статус выполненных операций. При успешной загрузке в нижнем левом углу появится галочка.

По поводу прошивок nodemcu, ESP-01 самые старые модули и памяти в них мало, поэтому чем новее прошивка, тем больше риск нестабильной работы. В моем случае наиболее стабильно на ESP-01 заработала прошивка nodemcu_integer_dev_json_20150317 (хотя проверял не все). При этом на более новых модулях с большим количеством памяти нормально работают и более поздние прошивки.

При обычном включении, когда не нужно перепрошивать модуль, вывод GPIO0 не должен быть подтянут к земле или быть соединенным с ней.

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

Задумка следующая: управлять какими-либо нагрузками при помощи, компьютера, телефона, планшета или другого устройства, подключенного к сети WiFi. Устройство будет соответствовать следующей схеме.

WiFi модуль ESP-01 требует напряжение питания от 3 вольт до 3,6 вольт, причем порог этот лучше не превышать. Для питания модуля используется стабилизатор напряжения AMS1117 adj. Резисторами R5, R6 задается уровень выходного напряжения (стабилизатор напряжения с регулируемым выходным напряжением). Вместо AMS1117 adj можно использовать любой другой стабилизатор на 3,3 вольта либо питать схему непосредственно от источника напряжения на 3,3 вольта. При использовании источника напряжение от USB (5 вольт) нужно использовать стабилизатор напряжения с малым падением напряжения, что бы выходное напряжение было в диапазоне нормального. Джемпером Jmp1 устанавливается режим работы модуля – обычный или режим прошивки. Модуль ESP-01 имеет всего два порта ввода – вывода – GPIO0 и GPIO2. Они и используются для управления светодиодами LED1, LED2 (нагрузками).

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

Схема собирается на небольшой универсальной плате для модуля ESP-01. С одной стороны плата имеет ряд выводов для подключения USB-UART преобразователя (Rx, Tx, +5v, Gnd), с другой стороны на плате расположены пользовательские выводы модуля (GPIO0, GPIO2, Rst, +3,3v, Gnd).

Для подключения к компьютеру и питания схемы используется преобразователь USB-UART на PL2303. При этом из двух одинаковых преобразователей интерфейсов нормально заработал только один. Оказалось печатные платы у них хоть и похожие, но немного разные и подключенные светодиоды нарушали работу, хотя в целом для других 5 вольтовых схем модуль работает нормально.

Для прошивки модуля под nodemcu необходимо поставить перемычку как на фото – замкнуть GPIO0 на землю. Для пользовательских прошивок этот вывод можно использовать.

Согласно схеме подключаем светодиоды и при помощи ESPlorer загружаем прошивку в модуль. Строго говоря, это даже не прошивка, а скрипт. При включении всегда стартует файл init.lua, в нем и находится вся логика работы нашего устройства. В этом файле необходимо прописать название сети WiFi, к которой необходимо соединяться и соответственно пароль. Далее конфигурируются выводы модуля на выходной сигнал – GPIO0 и GPOI2 (доступные для ESP-01). Далее создается сервер с html кодом (текстом), который задает внешний вид страницы и элементы на ней. Так как у нас есть два выхода WiFi модуля, то нам необходимо две кнопки, что бы ими управлять, в данном случае их четыре – кнопка «включить» и кнопка «выключить» для одного выход и так же для второго выхода. Чтобы включить светодиод или выключить обрабатывается нажатие кнопок на web странице. Подключаем к питание к модулю, он подключается к сети и через несколько секунд в сети будет доступна страничка WiFi модуля. Что бы к ней подключится, необходимо в браузере задать автоматически выдаваемый IP адрес устройства. Есть два способа узнать на каком адресе сейчас находится модуль. Первый заключается в том, что если модуль подключается через USB-UART переходник к компьютеру, он выдает в терминал IP адрес при успешном старте. Второй способ заключается в том, чтобы просто запустить программное обеспечение, сканирующее сеть. Данные получаются в следующем виде (IP адрес, MAC адрес, название компании сетевого адаптера):

192.168.100.3   18-FE-34-99-1E-00   Espressif Inc.    

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

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

индекс  GPIO индекс  GPIO
0 GPIO16  7 GPIO13 
1 GPIO5 8 GPIO15
2 GPIO4 9 GPIO3
3 GPIO0 10 GPIO1
4 GPIO2 11 GPIO9
5 GPIO14 12 GPIO10
6 GPIO12    

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

Весь алгоритм на программном языке можно просмотреть в исходном коде init.lua

Как вывод можно отметить следующее. Nodemcu достаточно интересна и вполне несложная прошивка для работы с WiFi модулями ESP8266. Однако хорошей стабильности работы прошивок, особенно сложных, можно не получить с применением этого инструментария. Хотя nodemcu успешно прошивается даже в старые модули ESP-01 могут возникать ошибки, связанные с недостатком памяти. Таким образом, nodemcu лучше всего использовать с модулями с большим количеством памяти, например, ESP-12E. Из плюсов весомым аргументом является простота и быстрое написание прошивок.

К статье прилагается необходимый софт, печатная плата в формате lay6, исходный код для ESPlorer, небольшое видео.

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 WiFi модульESP82661 ESP-01Поиск в магазине ОтронВ блокнот
VR1 Линейный регулятор
AMS1117-ADJ
1 Поиск в магазине ОтронВ блокнот
C1 Конденсатор1 мкФ1 Поиск в магазине ОтронВ блокнот
C1 Конденсатор1 мкФ1 Поиск в магазине ОтронВ блокнот
C2 Конденсатор2.2 мкФ1 Поиск в магазине ОтронВ блокнот
C3 Электролитический конденсатор100 мкФ1 Поиск в магазине ОтронВ блокнот
C4 Конденсатор100 нФ1 Поиск в магазине ОтронВ блокнот
R1 Резистор
1 кОм
1 Поиск в магазине ОтронВ блокнот
R2, R9 Резистор
10 кОм
2 Поиск в магазине ОтронВ блокнот
R3, R4, R7, R8 Резистор
390 Ом
4 Поиск в магазине ОтронВ блокнот
R5 Резистор
3 кОм
1 Поиск в магазине ОтронВ блокнот
R6 Резистор
1.8 кОм
1 Поиск в магазине ОтронВ блокнот
Jmp1 ПеремычкаДжемпер1 Поиск в магазине ОтронВ блокнот
LED1, LED2 Светодиод2 Поиск в магазине ОтронВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Опубликована: 0 4
Я собрал 0 6
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 4.7 Проголосовало: 6 чел.

Комментарии (90) | Я собрал (0) | Подписаться

0
olega88 #
Спасибо! А то валяется года полтора уже.
Ответить
0

[Автор]
Gauss #
Именно этот модуль у меня тоже скоро валяться будет, заказал поновее
Ответить
0
Electric_84 #
Спасибо за статью. Познавательно. Но вот попытался повторить и не смог прошить lua-скрипт. В ESPlorer'е порт открывается, пишет "Got answer!", но при попытке автодетекта софта пишет "Can't autodetect firmware, because proper answer not received.". Скрипт соответственно тоже не шьется. Кроме ESP-01 есть еще и ESP-12E/Q, та же ерунда. Не подскажете в чем может быть причина? Спасибо.
Всё, разобрался. На сайте esp8266.ru уже спрашивали о такой же ошибке. Все дело в новой прошивке NodeMCU. Теперь буду разбираться дальше.
Ответить
0

[Автор]
Gauss #
Точно так же у меня было - взял другой преобразователь UART (на такой же микросхеме) - сразу начало работать (возможная причина - мешают светодиоды, подключенные к линиям UART). Главное не забыть залить прошивку nodemcu
Ответить
0
Electric_84 #
Прошивки заливаются без проблем (преобразователь на FTDI). Проблема была именно с ESPlorer. Вот что ответил автор программы:
"В последней NodeMCU прошивке они изменили стандартный ответ - отключите автоопределение прошивки на вкладке Settings - Firmware Autodetection, открывайте порт на скорости 9600, а потом уже переходите на 921600 (ESPlorer сам перенастроит порт и отправит команду NodeMCU для переключения скорости)".
Сделал как посоветовал автор и всё заработало.
Ответить
0

[Автор]
Gauss #
Вроде у меня последняя версия esplorer 0.2.0 rc2, но такого не возникало
Ответить
0
Tig #
Смотрю где скачать ПО, по дате esplorer не обновлялся уже давно - проект приостановлен что ли?
Ответить
0

[Автор]
Gauss #
Да вроде на момент опубликования версия указана была последняя, но да, обновлений давно не было походу...
Ответить
0
denis_n73 #
Не заметил чтоб где-то было указано что линии RX-TX тоже 3 вольтовые, и ни в коем случае нельзя подавать 5 вольтовую логику.
У вас сами модули работают без перезагрузок? Я программирую их в ардуине, так никакой стабильности, постоянно перезагружаются, питания достаточно, емкостями обвесил и нифига. Да еще и греются сильно
Ответить
0

[Автор]
Gauss #
Подробнее про ардуину, пожалуйста!
Да - фишка с 3 В логикой есть, но у меня PL2303, CH340 работают очень хорошо (при схеме без висюлек и светодиодов на линях)
Именно ESP-01 показывают плохую стабильность при интенсивном использовании часто вылетает ошибка, говорящая о недостаточности памяти (емкости тоже пробовал довешивать), ESP-07 намного большую стабильность показал, но тоже не огонь, интересно что покажет ESP-13 и интересно какие отзыва на модули с 4мб памяти devboard.
Ответить
0
denis_n73 #
У меня ESP-12, программатор делал сам на FT232 и линейном стабилизаторе (до 300мА). От лабораторного БП тоже запитывал, ни чем не лучше. Ардуину использую только как среду разработки. Модуль уходит в зависания при включении, НО! Если положить палец на антенну, то нормально работает. Стоит подключиться к точке доступа, дальше уже более стабильно. При зависании модуль перезагружает сторожевой таймер (который еще и не всегда срабатывает), и в сериал порт выдается код ошибки типа cause:4 boot (3,7). Хотя бы эти коды где-нибудь найти
Ответить
0

[Автор]
Gauss #
Я могу предложить два варианта на данный момент - попробовать другой модуль (мало ли бракованный или подбитый) или попробовать прошить другой версией модуль. Может быть попробовать использовать другую среду разработки, так как за ардуино не могу сказать. У вас есть над чем поэкспериментировать?
Ответить
0
Electric_84 #
Модули запитываете от отдельного ИП? У меня на преобразователе USB-UART отдельный 3-х вольтовый стабилизатор, часами вожусь, перепрошиваю, никаких проблем.
Ответить
0

[Автор]
Gauss #
pl2303 хоть и имеет выход 3,3 вольта, но тянет слабо, например, греется переходничок нормально, решил, как на фото, использовать отдельный стабилизатор, при работе не греется, а вот сам модуль греется, но это нормально
Ответить
0
Electric_84 #
Конфуз получился. Я отвечал для denis_n73 (по поводу нестабильной работы), а получилось как бы Вам.
Ответить
0

[Автор]
Gauss #
Мне тоже интересно что за проблема у denis_n73, дело ли в ардуино (не пользовался для ESP), в коде или все же на уровне железа. Перегрузка модуля меня тоже наводила на мысль о недостаточном питании, но мне кажется все же дело в прошивке - при откате на более раннюю версию работа стала более стабильной
Ответить
0
Electric_84 #
Ну, там не сложно. В "Настойки" внизу есть пункт "Дополнительные ссылки для Менеджера плат". Туда надо добавить строку:
http://arduino.esp8266.com/package_esp8266com_index.json
Нажать OK. Потом зайти в "Менеджер плат" (там где выбирается плата, в самом верху), подождать какое-то время чтобы софт Ардуины обновил связи и в самом низу появится новая плата "esp8266 by ESP8266 Community". Нажимаете кнопку "Установить" и всё. Загружается порядка 150-160 МБ. Потом в списке плат для выбора появятся новые платы Generic ESP8266, Adafruit, NodeMCU и т.д.
Ответить
0

[Автор]
Gauss #
Я вот думал попробовать ардуино как среду разработки для esp, но вот руки не дошли. Я вообще имел ввиду прошивки на ардуино насколько стабильно работают для разных модулей
Ответить
0
Electric_84 #
Ну, вот я буквально вчера возился с ESP-01. Часов пять-шесть возился (разбираюсь что к чему и как, не силен я в сетевых примочках). За все время ни одной самопроизвольной перезагрузки.
Есть еще ESP-12E, вот такие.
Но их я еще не пробовал, там изначально NodeMSU зашит, надо, наверное, стандартную прошивку для начала поставить.
Отредактирован 10.12.2015 22:47
Ответить
0

[Автор]
Gauss #
А, так все-таки для работы под ардуиной нужна стандартная AT прошивка?
Правда ли, что в модулях по ссылке 4 мб? там по идее esp-12
Ответить
0
Electric_84 #
Вот проверил. Для работы с Arduino IDE стандартная прошивка не нужна. Это если работать не с АТ командами, естественно, а именно с МК ESP. Но оригинальная прошивка при этом перестает работать (затирается?). Правда что NodeMSU, что стандартная прошивка восстанавливаются без проблем с одним нюансом. При прошивке NodeMSU нужно указать размер установленной памяти. А я ее не посмотрел, затер Ардуиной... Сегодня вечером выйду куплю еще один такой же модуль и тогда гляну сколько там памяти стоит...
Ответить
0
Electric_84 #
Значит так: на новом Devkit модуле Esplorer показывает 3462401 байта памяти. Зашил NodeMSU в свой модуль, при прошивке указал 4 МБ, посмотрел Esplorer'ом, показало 3396281 байта свободной памяти, что логично, прошивки-то разные. Для чистоты эксперимента взял модуль ESP-01, указал все те же 4 МБ памяти, прошил, зашел в Esplorer, свободной памяти 22841 байта. Потом взял ESP-12 и специально указал всего 512 КБ, Esplorer опять правильно определил доступную память (3,4 МБ). Так что если даже при прошивке и указать завышенный/заниженный объем памяти, то софт (Esplorer) все равно определяет реальный размер.
Ответить
0

[Автор]
Gauss #
Причем при прошивке только если flash speed менять, то будет разница, остальные параметры походу автоматом определяются
Ответить
0

[Автор]
Gauss #
С nodemcu можно в ESPlorer посмотреть командой chip info
Ответить
0
Electric_84 #
У меня выдает вот такие цифры:
0 9 6 456127 1458400 4096 0 40000000
а в описании команды:
Возвращает NodeMCU version, chipid, flashid, flash size, flash mode, flash speed.
Шил я версию 0.9.6. Значит размер 4096 КБ и скорость 40 МГц.
Я все никак разобраться не мог, а вот теперь, спасибо, с Вашей помощью, понял.
Ответить
0

[Автор]
Gauss #
Ага, правильно, 4 мб, а это esp-12 c какой буквой? Я брал esp-12q - продавец говорил модуль на 4 мб, а отзывы покупателей (как потом заметил) говорили, что на 1 мб
Ответить
0
Electric_84 #
Хороший вопрос. Как бы это посмотреть не выпаивая сам модуль? Читал что и у Е, и у Q модификаций один и тот же объем памяти. Я так понимаю Ваши модули еще в пути?
Отредактирован 13.12.2015 15:48
Ответить
0

[Автор]
Gauss #
Да, ESP-12q и 13 в пути еще...
Посмотреть только если программно запросить командой информацию из модуля, думаю. По идее смысл делать одинаковые модули с разными названиями, с другой стороны Китай...
Ответить
0
Electric_84 #
Насколько я понял, там разница в дополнительных выводах (на торце, с 9 по 14). Выводы 11 и 12 (GPIO9/10) можно использовать только в версии D, а на схеме что я давал выше написано, что выводы с 9 по 14 (те что на торце) можно использовать только с флеш памятью Quad-SPI и их нельзя использовать в приложениях, так что модули Q не имеют реального преимущества перед другими из 12-ой серии.
Ответить
0

[Автор]
Gauss #
Теоретически к этим дополнительным выводам можно подключить дополнительную память, но вопрос в том как это повлияет на работу самого модуля (не встречал в интернете какого-то такого решения). Модификации ESP-12-D и ESP-12-Q отличающиеся размером flash памяти (не видел инфы о доступности дополнительных выводов, но может быть то, что я читал уже старая информация)
Ответить
0
Electric_84 #
Вот здесь на странице 6 есть про доступность GPIO для модификации D. А про невозможность использования дополнительных выводов в пользовательском приложении есть на схеме, которую я приводил (мое сообщение от 13.12.2015 в 16:05).
Ответить
0

[Автор]
Gauss #
Пока модуль D не рассматривал, я эту звездочку сноску не заметил. Пока нет даже Q модуля, особо не вникал в документ...
Ответить
0
Electric_84 #
Вот нарыл по теме. Тыц.
Судя по всему стоит 25Q32. Да и на фотке вскрытого модуля (автор говорит что версия Q), та же память стоит.
Прикрепленный файл: 2491-07.jpg
Ответить
0

[Автор]
Gauss #
Посмотрел на алиэкспресс такая память стоит по 0,39$, за копейки почему бы сразу не ставить в модули нормальный объем. На 16 мб меньше 1$ - можно самому так распаивать и модернизировать, чем ждать пока новые версии модулей появятся
Ответить
0
Electric_84 #
Кстати, это идея. Где-то у меня лежит 25Q32BVSIG, надо будет на одном из ESP-01 попробовать заменить.
Ответить
0

[Автор]
Gauss #
Главное, что бы это было возможно (мало ли где-то в ESP8266 прописывается). Обязательно отпишитесь о результатах - очень интересно что получится!
Ответить
0
Electric_84 #
Нахрапом не получилось. У них корпуса разные. И это единственная м/с на такой объем, все остальные на 512К.
Где-то читал что бутлоадер записан в самой ESP, так что содержимое EPROM'ки вроде как не критично для загрузчика.
Ответить
0

[Автор]
Gauss #
Значит вероятность удачного эксперимента обещает быть положительной! Как попробуете, то не забудьте отписаться!
Ответить
0
Electric_84 #
Перепаял. Немного подогнул выводы, так чтобы они попали на свои места. Но так как опыт с SMD компонентами у меня небольшой, то с первого раза не получилось, прошивки не писались. Пришлось отпаивать, наносить побольше припоя на дорожки и паять второй раз. Со второго раза все завелось. Записал стандартную прошивку, потом записал NodeMCU, определилось как 4 МБ, правда половина памяти была уже чем-то занята (м/с была со старой материнки), форматнул в ESPlorer'е, вся свободная память стала доступной. Так что идея хорошая, теперь у меня ESP-01 с 4 мегами памяти.
Вот как было и как стало.
Ответить
0

[Автор]
Gauss #
Отличные новости! Перепаяно вполне аккуратно! Пойду и я тогда искать EEPROMку на материнках. Надеюсь от этого стабильность прошивки nodemcu возрастет.
Второй прикол с памятью - попробовать увеличить память через выводы на торце ESP12E(Q, D) дополнительной микросхемой - возможно ли так, тогда можно будет апнуть память без перепайки компонентов
Ответить
+1
Electric_84 #
Да, можете смело перепаивать.
Только это была относительно новая материнка с сокетом 1155, я на ней запорол БИОС, в сервисе за программирование запросили дорого, вот я ее и выбросил. А ведь мог использовать модуль ESP-01 как программатор :( Кстати, еще одна идея: выпаять память, поставить панельку и использовать как программатор для SPI памяти :)
Удачи.
Ответить
0

[Автор]
Gauss #
Ну да, по сути то когда прошиваем модуль, то прошивку ставим в память, так что тоже вариант!
Я старые материнки посмотрел - не нашел подходящей памяти, вся маленькая, и правда нужна относительно новая материнка, значит под настроение нужно из китая заказать на 16 мб попробовать
Ответить
0

[Автор]
Gauss #
По поводу прошивки памяти - можно попробовать подключить Pickit2, вцелом spi память шьет, но в списке марки только микрочипа, но шьет и атмеловские и некоторые другие
Ответить
0
Electric_84 #
Это первое что я сделал, но что-то не нашел поддержку чипов с большим объемом памяти. Если не ошибаюсь, то до 512К.
Ответить
0
Electric_84 #
В дополнение к предыдущему сообщению. Лежит у меня на выброс несколько роутеров TL-WR841N. Так вот, на них тоже стоит 32 Mbit'ная память, а именно S25FL032P.
P.S. Было бы неплохо на форум перейти, а то много не по теме Вашей статьи.
Ответить
0

[Автор]
Gauss #
От темы WiFi модулей мы не отходим главное, а в спорах рождается истина!
Я вот хочу попробовать подключить дополнительную память к торцевым контактам ESP-12E (Q), печалит, что походу только после НГ стоит ждать посылку из-за праздников
Ответить
0
Electric_84 #
Вполне вариант. Заводская память же прямо на этих выводах и висит. Только нужно как-то разделить сигналы CS, а то одним сигналом будут выбираться оба чипа одновременно.
Отредактирован 14.12.2015 20:53
Ответить
0

[Автор]
Gauss #
Хотел бы предложить просто параллельно подключить бОльшую память, но если это заработает, то может быть причиной каких-нибудь глюков. Вообще же можно снять крышку отпаять память, а к выводам подключать любую память - по принципу программатора памяти, как писали выше. Мне больше всего интересно просто заработает или нет, подключив память просто параллельно...
Ответить
0
Electric_84 #
Сомнительно. В режиме Quad SPI выводы IO0-IO3 работают как двунаправленные порты ввода-вывода. Соединив два вывода вместе получим монтажное ИЛИ, если это выводы с ОК, то у нас в лучшем случае при наличии на одном из выводов "1", будет читаться "1", вне зависимости от того что записана во второй м/с, а в худшем вывод просто сгорит. Я бы так не стал делать. А вот выпаять м/с и поставить другую, даже в бОльшем корпусе, вполне, ИМХО, рабочая идея.
Ответить
0

[Автор]
Gauss #
Немножко неудобно крышку отпаивать - шанс повредить пайки под крышкой, да и не только пайки - это единственный минус, но если сильно приспичит, ну или старые модули с 1 мб, то можно пробовать. Насмотрел в китае 16 мб память за 4,75$ за 5 штук
Ответить
+1
Electric_84 #
Вот сейчас нашел... Всё уже опробовано до нас :)
Ответить
0

[Автор]
Gauss #
Если такие идеи рождаются не только у нас, значит идем по верной дороге!
Ответить
0

[Автор]
Gauss #
Кстати, возможно в скором будущем появятся более продвинутые модули на ESP32
Ответить
0
Tig #
И насколько это будет круче?
Ответить
0

[Автор]
Gauss #
Основные особенности:
1. Более быстрый WiFi - 144 Mbps
2. Bluetooth Low Energy (BLE) на борту (а в позже обещают и Classic Bluetooth)
3. Два процессора Tensilica L108 на борту - 160 MHz
4. Низкое потребление в режиме Deep Sleep
5. Богатая периферия с поддержкой DMA: чувствительный к касанию вход (capacitive touch), нескоько АЦП, ЦАПы, I2C, UART, SPI, SDIO, I2S, RMII, PWM и др. (USB - нет)
6. RAM: SRAM ~400 KB !
7. Поддержка Security на аппаратном уровне (AES и SSL)
8. Упрощенные APIs
Пишут, что будет дороже ESP-8266, но не на много.
Ответить
0
Tig #
Главное, чтобы качество и стабильность возросли, а то мне кажется, что продукт не доработан в полной мере
Ответить
0

[Автор]
Gauss #
Здесь в точку. 8266 еще не отлажен, как уже идут слухи о новом продукте, с другой стороны может быть это пока еще слухи и не совсем скоро это произойдет
Ответить
0
Tig #
Давайте обрабатывать синицу в руках, чем что-то в небе :)
Ответить
0

[Автор]
Gauss #
А другого и не остается!
Ответить
0

[Автор]
Gauss #
Заметил, что перезагрузки модуля в основном заметны, если используется в качестве устройства, которое долгое время должно сохранять какие-то параметры или состояния, если например считываем и передаем температуру - это совсем не критично, только задержка в несколько секунд на перезагрузку и далее нормально читается и передается температура (все еще мелкие модули 512-1024 кб)
Ответить
0
tzzz #
Что-то не пойму, так сколько памяти в esp-12? 1 мб или 4 мб?
Ответить
0
Electric_84 #
Везде пишут что 4.
Ответить
0

[Автор]
Gauss #
Должно быть 4 Мб, но китайцы могут делать и поделки походу
Ответить
0
radiomanoff #
Собрал, все заработало. Но почему-то надписи "канал1(2)","вкл", "выкл", "поле переменной" выводится крякозябами. Надпись ESP8266 ESP-01 и gpio0(2) нормально.
Пробовал менять в скрипте на английский, эффекта нет...
Ответить
0

[Автор]
Gauss #
У меня гугл хром, по-моему даже настройки все стандартные, попробуйте кодировку поменять (наверное что-то лишнее заменили при правке на английский)
Ответить
0
Electric_84 #
А можно ли как-то прервать выполнение скрипта? А то если скрипт начал выполняться и где-то в нем есть ошибка, модуль зависает и ни на какие команды не реагирует. Пока что тупо перепрошиваю модуль. Неужели нет другого пути?
Еще заметил такую странность: у сети было название TP-Link_1720. АТ-командами модуль подключался без проблем, но ни из Lua, ни из Arduino подключение к роутеру не происходило. Поменял название на другое, без символов "-" и "_", всё сразу заработало. Где-то видел что надо делать подмену таких символов на UTF-8 или Юникод.
Ответить
+1

[Автор]
Gauss #
Я понял: если скрипт с ошибкой и при выполнении в терминал постоянно шлет сообщения об ошибке, при этом заставить выполнить какие-то команды проблема - все время перебивается ошибками?
Я тоже пытался бороться с этим, но походу просто форматирование и перепрошивка наиболее действенные меры
Ответить
0
Electric_84 #
Да именно оно. Форматирование не работает, удаление файла не работает, не реагирует ни на что, пишет что система занята. Только GPIO0 на землю и перепрошивка.
Ответить
0

[Автор]
Gauss #
В esplorer я жму несколько раз format - с одного раза не сработает обычно - но с нескольких попыток всегда хоть как-то форматирует. Правда при этом отклик в терминал всегда есть, что послана команда, но она не выполняется часто при скрипте с ошибками
Ответить
0
Electric_84 #
Скорее всего я просто не дожидался этого момента. Жму, жму, отклика никакого, ставлю на перепрошивку. Хотя, не нравится мне этот метод. Надо будет на ESP-12 попробовать такую идею: выделить один вывод, если он при старте "сидит" на земле, то в файле init.lua сделать строчку которая бы вытирала файл init.lua. Эдакое харакири по китайски.
Ответить
0

[Автор]
Gauss #
Или попробовать сторожевой таймер https://github.com/nodemcu/nodemcu-firmware/wiki/nodemcu_api_ru#i2csetup - тут описана одна команда сброса, но не очень ясно работает ли он сразу или его запускать нужно, а если сразу, то какой у него период
Отредактирован 17.12.2015 18:27
Ответить
0

[Автор]
Gauss #
Экспериментировал с юартом и прописал так, что все команды эхом возвращаются обратно в терминал - то есть какую бы команду не послал она не выполнится и вернется обратно. Перепрошить не удастся просто так. Выход из таких ситуаций - нажать ресет на модуле и быстро послать команду форматирования, например, пока код не начал выполняться
Ответить
0
Hork112 #
А какая дальность у этих модулей?
Ответить
0
Electric_84 #
Я сам не проверял, но вот что люди пишут.
Ответить
0

[Автор]
Gauss #
Вообще китайцы пишут, что до 400 м в прямой видимости, но дальше дома я не пробовал, ESP-07 с внешней антенной ловят получше еще
Ответить
0
Tig #
Как-то сильно много для модуля таких размеров и pcb антенной...
Ответить
0

[Автор]
Gauss #
Ну а чего удивляться, мир не стоит на месте, а многое еще зависит от условий тестирования - в чистом поле эти параметры должны соответствовать, а в городе по разному может быть - это и другие точки, это различная электроника, силовые сети, стены, дома и так далее - все уменьшает дальность
Ответить
0
Tig #
Вот этот вопрос не дает покоя прямо, надо как-то самому попробовать!
Ответить
0

[Автор]
Gauss #
Главное не забудь отписаться о результатах!
Ответить
0
Tig #
Уговорил - покупаю модуль пока на рынке это еще можно сделать, а то что-то обсуждать перестали
Ответить
0

[Автор]
Gauss #
Я вот из Китая заказываю - местные барыги берут дорого слишком...
Ответить
0
Tig #
К слову, может быть кто сравнивал с радиомодулями на дальность, качество сигнала?
Ответить
0

[Автор]
Gauss #
С какими?
Ответить
0
андрей #
Походу все модули на esp8266 будут иметь примерно одинаковую дальность, если антенны одинаковые
Ответить
0

[Автор]
Gauss #
По логике да, но PCB антенны могут быть тоже разные
Ответить
0
Юрий #
Подскажите пожалуйста, в чем дело: заливаю прошивку - всё нормально, точка доступа ESP_0D752A появляется. Заливаю скрипт - точка доступа пропадает. Что делаю не так?
Ответить
0

[Автор]
Gauss #
Прошивка nodemcu не создает точек доступа, без понятия что за прошивка такая
Ответить
0
Юрий #
Автор писал: "В моем случае наиболее стабильно на ESP-01 заработала прошивка nodemcu_integer_dev_json_20150317". Вот как только ей прошьёшь модуль, в сети появляется точка доступа, к которой можно подключиться
Ответить
0
Юрий #
Сейчас попробовал прошиться другой версией - nodemcu_integer_0.9.6-dev_20150704.bin, тоже самое, появляется точка доступа.
Ответить
0

[Автор]
Gauss #
Не знаю что там за точка доступа на самом и зачем она нужна (я не проверял, да и !бессмысленно это, когда пишутся скрипты, в которых собственно все задается и настраивается с известными нам параметрами для доступа и работы согласно функциям заложенным в систему)
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Raspberry Pi 2
Raspberry Pi 2
Квадрокоптер Syma X11 Паяльная станция Hakko 936
вверх