• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

делаю железку, подскажите как правильно работать с ESP

DonkeyKong

New member
я только начал разбираться с ESP, соответственно прошу подсказать

делаю железку, задача простая - обслуживание нескольких датчиков, отсылка информации на сервер. в качестве WiFi планирую использовать ESP8266EX (взял для начала китайские платки с 8пинами )
но также требуется подъем HTTP-сервера для задач конфигурирования и соответственно WiFiточки доступа.

пока мне представляется такое решение:
ESP8266EX - обслуживание WiFi как транспорта
STM32F103C8T6
- обработка данных с дачиков, вычисления и формирование к примеру SNMP пакетов
(датчиков пока немного - DHT11, HX711, но в перспективах может добавится и голосовой интефейс с заменой STM-ки)
- WEB-сервер для конфигурирования железки

технически я соединил STM32 через USART c ESP для двухстороннего обмена

поясню почему STM:
1. у меня <давно> написан свой стек под STM32 - там все TCP/IP/UDP/NTP/SNMP/HTTP/DHCP итд под Ethernet, соответственно хочу взять оттуда куски
2. ESP я совсем не знаю

ESPlorer поставил, к точке доступа подключился, но возникли вопросы

вопросы следующие
1. как отправлять UDP пакеты ? пробовал искать тут - но по UDP ничего не ищет форум, заявляет что слишком короткая поисковая строка :(
2. как поднять WEB сервер ? как поднять TCP/IP соединение и обрабатывать его ? как завернуть обработку пакетов на STM32 ? те мне надо обрабатывать пару страничек (интерфейс начального конфигурирования)
3. надо ли обновлять прошивку модуля и если да то как?

текущий модуль имеет прошивку:
Код:
AT+GMR

AT version:1.2.0.0(Jul  1 2016 20:04:45)
SDK version:1.5.4.1(39cb9a32)
v1.0.0
Mar 11 2018 18:27:31
OK
апдейт через интерфейс не идет

Код:
AT+CIUPDATE


ERROR
4. когда я полезу в энергосбережение то как это делается ?
прошу ссылки PDF-ки и прочее что стоит изучить
 

DonkeyKong

New member
Попробуйте ардуино для есп.
послушал совета, попробовал

не думаю, что стоит продолжать делать что-то в этом направлении.
при этом ESPlorer работает


плата вот такая

там последовательный порт и пара портов. этой платки точно не хватит под мои задачи. мне нужен рабочий WiFi и только.


таки прошу ответить на вопросы
1. как отправлять UDP пакеты ? пробовал искать тут - но по UDP ничего не ищет форум, заявляет что слишком короткая поисковая строка :(
2. как поднять WEB сервер ? как поднять TCP/IP соединение и обрабатывать его ? как завернуть обработку пакетов на STM32 ? те мне надо обрабатывать пару страничек (интерфейс начального конфигурирования)
3. надо ли обновлять прошивку модуля и если да то как?


обсуждение зачем STM32 это таки оффтопик:
я уже пояснил, что у меня много наработок именно под STM32 линейку и что важно, в дальнейшем функционал будет усложняться и ESP уже не хватит на эти задачи. тогда как в случае с STM32 я спокойно перенесу проект с F1 на F4 или F7.
ну и среда разработки у меня keil и она несколько удобнее чем ардуино
 

CodeNameHawk

Moderator
Команда форума
послушал совета, попробовал
Это откуда вытащили, я такого даже не видел.
При помощи ардуиноиде, залейте любой скетч из примера для есп(но что бы это сделать, надо выполнить домашнее задание, по настройке ардуиноиде, для работы с есп) но есть нюанс, ат прошивка пропадет.(восстановить ее позже нет проблем)
давайте таки про UDP пакеты ?
В гоогле вас забанили?
https://gist.github.com/mgub/3f4d2f074305d4d84344
Только там версия AT firmware v0.22.
 
Последнее редактирование:

DonkeyKong

New member
Это откуда вытащили, я такого даже не видел.
это проверка соединение в этой ардуиноиде
собственно я откровенно не понимаю зачем рекламировать ардуино, если я написал, что не хочу переносить проект с STM на ESP ?

я конечно сделал по инструкции
и подключил библиотеку
выбрал плату "Generic ESP8266"
пробую Get Board Info - получаю



При помощи ардуиноиде, залейте любой скетч из примера для есп(но что бы это сделать, надо выполнить домашнее задание, по настройке ардуиноиде, для работы с есп) но есть нюанс, ат прошивка пропадет.(восстановить ее позже нет проблем)
а зачем ? чем это мне поможет отправить UDP-пакет AT-командами ?

не, я конечно не против экспериментов:
Код:
Arduino: 1.8.19 (Windows 7), Board: "Generic ESP8266 Module, 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, dtr (aka nodemcu), 26 MHz, 40MHz, DOUT (compatible), 1MB (FS:64KB OTA:~470KB), 2, nonos-sdk 2.2.1+100 (190703), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
. Variables and constants in RAM (global, static), used 28008 / 80192 bytes (34%)
│   SEGMENT  BYTES    DESCRIPTION
│== DATA     1496     initialized variables
│== RODATA   920      constants       
L== BSS      25592    zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 59143 / 65536 bytes (90%)
│   SEGMENT  BYTES    DESCRIPTION
│== ICACHE   32768    reserved space for flash instruction cache
L== IRAM     26375    code in IRAM    
. Code in flash (default, ICACHE_FLASH_ATTR), used 231572 / 1048576 bytes (22%)
│   SEGMENT  BYTES    DESCRIPTION
L== IROM     231572   code in flash   
An error occurred while uploading the sketch
esptool.py v3.0
Serial port COM3

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
те не заливает
ну и конечно я в шоке от объема кода, который родился из пустого скетча - 231кБ (!)
что за мегабиблиотеки туда ардуино тащит ? у меня стек помещался в 16кБ еще на AVR-ках и 32кБ на STM32
впрочем давайте таки про ATкоманды

В гоогле вас забанили?
https://gist.github.com/mgub/3f4d2f074305d4d84344
Только там версия AT firmware v0.22.
там про прием UDP - там так и написано "Create a UDP Server to Listen for Incoming Broadcasts"
а мне надо их отправлять

и прошу подсказать как обновить AT прошивку
 

DonkeyKong

New member
Работать ат командами на есп, это как бурить стену перфоратором, не включив его в розетку.
Есть на форуме.
прошу ткнуть меня в это место. я потому и спрашиваю, что не нашел рабочей инструкции. какая плата я уже указал и какая у меня версия тоже.
 

CodeNameHawk

Moderator
Команда форума
ардуино это сплошные грабли, ничего не работает
При помощи ардуиноиде, залейте любой скетч из примера для есп
Вы читаете что вам пишут, где вы здесь прочитали проверить board?
Достаточно посмотреть одно видео, чтобы понять где вы ошиблись.
Подсказка, вы видели на сайте ардуино официальную плату есп?
Так чего ковыряетесь в
пробую Get Board Info - получаю
что не нашел рабочей инструкции.
Покажите, как при помощи гоогла, вы ничего не нашли на этом форуме, по заливке АТ.
 

enjoynering

Well-known member
у вас не скриншоте видно что вы выбрали совсем другую плату - wifi101.

Ели вы правильно плату в примитивном редакторе arduino выбирать немможете, то что же дальше будет?
 

DonkeyKong

New member
Вы читаете что вам пишут, где вы здесь прочитали проверить board?
Достаточно посмотреть одно видео, чтобы понять где вы ошиблись.
Подсказка, вы видели на сайте ардуино официальную плату есп?
Так чего ковыряетесь в
я задал простые вопросы, но меня начали "лечить" вместо ответа на них. я пошел на встречу идеям и потыкался в это ардуино.

Покажите, как при помощи гоогла, вы ничего не нашли на этом форуме, по заливке АТ.
находится только вот это
с прошивкой 2013ого года


у вас не скриншоте видно что вы выбрали совсем другую плату - wifi101.
Ели вы правильно плату в примитивном редакторе arduino выбирать немможете, то что же дальше будет?
1. никаких внятных инструкций тут не поступало
2. да, представляете себе, я не работал с ардуино совсем.
предпочитаю нормальные среды разработки к примеру Keil в котором и дебаг нормальный и все остальное.
ну и я честно не готов делать что-то в среде, которая тащит 231кБ неизвестного кода для пустого скетча
меня совсем не радует перспектива поймать глюки в решении, из-за багов в нем.

меня честно удивила ваша токсичность, вот уже давно не встречал такого в среде разработчиков.
я спрашиваю "1. как отправлять UDP пакеты ? " так нет ни единого ответа по теме!
зато вот прорекамировать ардуино - пожалуйста. поймите меня правильно, с Keil-а пересаживаться на ардуино это смешно.
да и во времена, когда я писал код для AVR я и то использовал нормальную среду - CodevisionAVR, ибо она давала самый оптимальный и компактный код. (втч и относительно avr-gcc - примерно на 20%)

если хотите сделать реальное полезное, ответьте на заданные мой вопросы, кроме прошивки - я с ней разобрался

Дабы другим, кому потребуется обновить AT-прошивку, эта тема была полезна, я укажу нужные ссылки и что нужно делать:

1. взять старую версию Flash Download Tools - ибо новая V3.9.3 с сайта
https://www.espressif.com/en/support/download/other-tools не работает правильно с этими платами
нужна более старая версия к примеру - FLASH_DOWNLOAD_TOOLS_V3.6.4
2. порядок действий есть тут
те для прошивки надо соединить GPIO0 c GND и потом подать питание
cама прошивка


Прошивки которые влезут в эту 1МБ флешку вот тут

самая засада оказалась именно с поиском этих версий ибо практически все ссылки по AT ведут вот сюда
(а эти прошивки не годятся - там 2 или 4МБ )
а тут вообще предлагают писать письма при попытке скачать версию под 1МБ
 

CodeNameHawk

Moderator
Команда форума
находится только вот это
Похоже текст вы разбираете очень слабо.
https://google.gik-team.com/?q=форум+esp8266+заливка+АТ
Первая ссылка ведет на
https://esp8266.ru/forum/threads/nodemcu-zalit-proshivku-s-at-komandami.2906/
я задал простые вопросы, но меня начали "лечить" вместо ответа на них.
Задайтесь вопросом а почему? Издеваются, тупые, просто хотели сэкономить ваше время, так как ответ на следующий вопрос, что это такое при работе с ат прошивкой, самый простой ответ: переходите на ардуино.
 
Сверху Снизу