• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Объединение WiFiWeb и esp-now

pvvx

Активный участник сообщества
VSCode - это проприетарщина от MS.
Всегда желателен скрипт сборки в нативном Linux.

git clone "репо"
make или cmake

На крайний случай - сборка в самом github или описание контейнера.
Всё остальное сложно-постижимо для "пользователей".
 

pvvx

Активный участник сообщества
Весь форум переполнен сообщениями - не та версия либы, или SDK, или дурины, или ...
Но решения давно существуют.
 

pvvx

Активный участник сообщества
Сборка в самом github ещё типа не привычна всем, но осуществляется проще для пользователя - клонируете в свой репо, редактируете код online и github собирает.
Никакой свалки на вашем компе не образуется.
 

pvvx

Активный участник сообщества
Далее делаете OTA прямо файлом из вашего "репо"
И не копируете сюда все кексы, а указываете в вопросе ссылку на свой код.
 
Спасибо! По поводу перехода на VS и platform не получилось. Имею опыт расчетов с использованием VS2013 но тоже не получилось перестроиться на Arduino. Возможно потому, что у меня win8.1 менять его не хочу, Поэтому и Arduino IDE 2.1.1 Хотя по описаниям Arduino тоже должен был бы по запросу подсоединять необходимое.
 

mrdenis

New member
Добрый день.

Я собрал пару устройств на ESP8266-07, сделал из одной ESPGateway, а из второй ESPNode, воспользовавшись библиотекой ZHnetwork.
Получилось следующее:
1. Gateway работает: регистрится в WIFI и на MQTT, шлет о себе все отлично, но только, если конфиг не гружу из EEPROM. EEPROM категорически отказывается хранить конфигурацию... даже после добавления EEPROM.commit() в saveConfig()...
2. При включении ESPNode при попытке переправить данные в MQTT в вызванной из onEspnowMessage функции mqttPublish случается "Stack smashing detected.". Я уже чего только не делал (заводил новый буфер, разбирал и собирал обратно JSON перед самой отправкой в mqttPublish).. отправлять сообщения, полученные из espow сети, GW не хочет...
Код:
==>>>onEspnowMessage
ENPT_ATTRIBUTES>>>
==>>>mqttPublish
ch_sys/espnow_led/483FDA68B226/attributes
-----------------------------------------------------------
 => {"Type":"ESP-NOW TEST node","MAC":"483FDA68B226","Uptime":"Days:0 Hours:21 Mins:27"}
-----------------------------------------------------------
 7B 22 54 79 70 65 22 3A 22 45
 53 50 2D 4E 4F 57 20 54 45 53
 54 20 6E 6F 64 65 22 2C 22 4D
 41 43 22 3A 22 34 38 33 46 44
 41 36 38 42 32 32 36 22 2C 22
 55 70 74 69 6D 65 22 3A 22 44
 61 79 73 3A 30 20 48 6F 75 72
 73 3A 32 31 20 4D 69 6E 73 3A
 32 37 22 7D 0
-----------------------------------------------------------

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Stack smashing detected.
...
Может кто подскажет, в какую сторону посмотреть ?
Заранее благодарю за подсказки, если что :)
 

aZholtikov

Active member
И просто уточнить... Это условие соблюдается?
  1. For correct work at ESP-NOW + STA mode your WiFi router must be set on channel 1 and set gateway mode.
 

mrdenis

New member
Посмотреть как реализовано сохранение в EEPROM здесь https://github.com/aZholtikov/ESP-NOW-Gateway/tree/main
Проблема в том, что я именно этот GW (это же Ваша разработка:) и собираю/зашиваю (в ардуино иде) и он работает так как я описал....
Я вобщем-то и не менял ничего в нем...
 

aZholtikov

Active member
Не тестировалось в Arduino IDE. Только в VSCode + PlatformIO.
Могу предположить, что в Arduino IDE надо как-то дополнительно активировать раздел Flash, куда пишутся данные EEPROM.
 

aZholtikov

Active member
В любом случае если не получится - пересылайте мне по почте (в профиле GitHub) коды шлюза и ноды. В сб/вс попробую их на Arduino IDE.
 

mrdenis

New member
В первом моем сообщении кусок моих Serial.print ов на Gateway...
там как раз видно JSON пакет с ноды, который передается в функцию mqttPublish и на этом все...
До этого подобным образом уходят через mqttPublish успешно пакеты JSON самого GAteway (Атрибуты и Кипэливы), а то, что из onEspnowMessage - экспшн..

С EEPROM по идее либа используется заточенная под ESP со всеми нюансами, она грузится со всем пакетом под ESP... Единственное, что я вычитал и добавил в код saveConfig(){...} - EEPROM.commit(), но он не помог :(
 

mrdenis

New member
В любом случае если не получится - пересылайте мне по почте (в профиле GitHub) коды шлюза и ноды. В сб/вс попробую их на Arduino IDE.
Понял.
Еще посмотрю сегодня-завтра... и определюсь с отправкой.
Благодарю за внимание к моей проблеме :)
 
Сверху Снизу