nodemcu перезагружается каждые 15-40 мин
nodemcu перезагружается каждые 15-40 мин
здравствуйте, уважаемые Знатоки ФЛпрог!
после нескольких удачных поделок на ардуино, решил замахнуться на проект умного дома. Все работает, но есть одно болшое "НО".
выключается самопроизвольно свет, сначала думал проблема в программе, но в журнале работы wqtt видно что идет переподключение.
с некоторой периодичностью, "4 SPALNYA" это нодемсю, которая вылетает. проект состоит из нодемсю+ардуМега(п, реле, платы оптопар, рс 485 для связи между удаленными платами ардуино.
нодемсю принимает с WQTT и отправляет по модбасу в мегу и соответсвенно из меги по модбасу обрадно через нодемсю в WQTT
соединение мега/нодемсю 19-(ТХ), 18-(RX) (D1) DE/PE не использовал.
проект флпрог нодемсю: пробовал сгруппировать паб и саб, результат тот же: при сокращении количества паб и саб. работает нормально
подскажите пожалуйста в каком направлении дейсвовать?
проект для меги не могу приложить, 8,2мб
после нескольких удачных поделок на ардуино, решил замахнуться на проект умного дома. Все работает, но есть одно болшое "НО".
выключается самопроизвольно свет, сначала думал проблема в программе, но в журнале работы wqtt видно что идет переподключение.
с некоторой периодичностью, "4 SPALNYA" это нодемсю, которая вылетает. проект состоит из нодемсю+ардуМега(п, реле, платы оптопар, рс 485 для связи между удаленными платами ардуино.
нодемсю принимает с WQTT и отправляет по модбасу в мегу и соответсвенно из меги по модбасу обрадно через нодемсю в WQTT
соединение мега/нодемсю 19-(ТХ), 18-(RX) (D1) DE/PE не использовал.
проект флпрог нодемсю: пробовал сгруппировать паб и саб, результат тот же: при сокращении количества паб и саб. работает нормально
подскажите пожалуйста в каком направлении дейсвовать?
проект для меги не могу приложить, 8,2мб
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Dryundel
- Полковник
- Сообщения: 2473
- Зарегистрирован: 22 май 2017, 23:15
- Откуда: Ярославль
- Имя: Андрей
- Благодарил (а): 10 раз
- Поблагодарили: 40 раз
Re: nodemcu перезагружается каждые 15-40 мин
Сам спросил, сам же практически и ответил.Ageres писал(а): 01 июл 2025, 22:15 при сокращении количества паб и саб. работает нормально
подскажите пожалуйста в каком направлении дейсвовать?
проект для меги не могу приложить, 8,2мб

Проблема в вашей "нодемсю".
ESP8266 - одноядерный процессор. И Wi-Fi и MQTT крутятся на этом одном ядре. При увеличении топиков увеличивается и время цикла, ну и на каком то пределе Wi-Fi виснет и ребутит девайс.
Как вариант - переходить на ESP32.
До кучи эту тему посмотрите - ESP 8266 перезагружается каждые 45 минут((
-
- Лейтенант
- Сообщения: 313
- Зарегистрирован: 08 дек 2021, 22:41
- Имя: Вячеслав
- Благодарил (а): 16 раз
- Поблагодарили: 49 раз
Re: nodemcu перезагружается каждые 15-40 мин
Попробуйте уменьшить количество блоков. Например, практически все блоки Pub можно заменить на один - загнать все ваши переменные в одну строку Json блоком сложения строк.
А Sub - загоните ваши булевские переменные в биты, т.е. одной посылкой байта передавать 8 переменных (побитно), блоками Mux, Demux.
А Sub - загоните ваши булевские переменные в биты, т.е. одной посылкой байта передавать 8 переменных (побитно), блоками Mux, Demux.
Re: nodemcu перезагружается каждые 15-40 мин
не совсем понял, а как это зашифровать\расшифровать на стороне wqtt. (mqtt брокера). я когда создаю там допустим люстру, указываю топик.slsl писал(а): 02 июл 2025, 06:47 Попробуйте уменьшить количество блоков. Например, практически все блоки Pub можно заменить на один - загнать все ваши переменные в одну строку Json блоком сложения строк.
А Sub - загоните ваши булевские переменные в биты, т.е. одной посылкой байта передавать 8 переменных (побитно), блоками Mux, Demux.
а брокер отсылает сообщения по одному
- Dryundel
- Полковник
- Сообщения: 2473
- Зарегистрирован: 22 май 2017, 23:15
- Откуда: Ярославль
- Имя: Андрей
- Благодарил (а): 10 раз
- Поблагодарили: 40 раз
Re: nodemcu перезагружается каждые 15-40 мин
Сэр. Не говорите в приличном обществе всякие программерские словечки.

Ну или ликбез напишите по данной теме.
Re: nodemcu перезагружается каждые 15-40 мин
что значит утечка памяти? вы имеете ввиду заполнение памяти есп программой?
Variables and constants in RAM (global, static), used 31688 / 80192 bytes (39%)
║ SEGMENT BYTES DESCRIPTION
╠══ DATA 1720 initialized variables
╠══ RODATA 1480 constants
╚══ BSS 28488 zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 60375 / 65536 bytes (92%)
║ SEGMENT BYTES DESCRIPTION
╠══ ICACHE 32768 reserved space for flash instruction cache
╚══ IRAM 27607 code in IRAM
. Code in flash (default, ICACHE_FLASH_ATTR), used 275584 / 1048576 bytes (26%)
║ SEGMENT BYTES DESCRIPTION
╚══ IROM 275584 code in flash
скажите это уже заполнена память?
- Phazz
- Полковник
- Сообщения: 3169
- Зарегистрирован: 17 окт 2016, 15:38
- Откуда: Сургут
- Имя: Анатолий
- Благодарил (а): 239 раз
- Поблагодарили: 128 раз
Re: nodemcu перезагружается каждые 15-40 мин
WQTT умеет парсить jsonAgeres писал(а): 02 июл 2025, 09:01не совсем понял, а как это зашифровать\расшифровать на стороне wqtt. (mqtt брокера). я когда создаю там допустим люстру, указываю топик.slsl писал(а): 02 июл 2025, 06:47 Попробуйте уменьшить количество блоков. Например, практически все блоки Pub можно заменить на один - загнать все ваши переменные в одну строку Json блоком сложения строк.
А Sub - загоните ваши булевские переменные в биты, т.е. одной посылкой байта передавать 8 переменных (побитно), блоками Mux, Demux.
а брокер отсылает сообщения по одному
https://www.wqtt.ru/doc/json-path-dlya-datchikov/
- montirovka
- Капитан
- Сообщения: 770
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 50 раз
- Поблагодарили: 178 раз
Re: nodemcu перезагружается каждые 15-40 мин
Набрал с интернете что такое Утечка памяти.
Это жжжжж не с проста. Я понял что это заполнение памяти мусором.
Re: nodemcu перезагружается каждые 15-40 мин
флпрог 752
подскажите в какой версии фл прог сделать mqtt и modbas
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Re: nodemcu перезагружается каждые 15-40 мин
может есть какие нибудь примеры этого джейсона?slsl писал(а): 02 июл 2025, 06:47 Попробуйте уменьшить количество блоков. Например, практически все блоки Pub можно заменить на один - загнать все ваши переменные в одну строку Json блоком сложения строк.
А Sub - загоните ваши булевские переменные в биты, т.е. одной посылкой байта передавать 8 переменных (побитно), блоками Mux, Demux.
почитал, ничего не понял. не программист я
-
- Лейтенант
- Сообщения: 313
- Зарегистрирован: 08 дек 2021, 22:41
- Имя: Вячеслав
- Благодарил (а): 16 раз
- Поблагодарили: 49 раз
Re: nodemcu перезагружается каждые 15-40 мин
Блок сложения строк - формирует строку Json. По аналогии можете напихать в него нужное количество переменных. В названиях полей не должно быть пробелов.Ageres писал(а): 02 июл 2025, 21:05может есть какие нибудь примеры этого джейсона?slsl писал(а): 02 июл 2025, 06:47 Попробуйте уменьшить количество блоков. Например, практически все блоки Pub можно заменить на один - загнать все ваши переменные в одну строку Json блоком сложения строк.
А Sub - загоните ваши булевские переменные в биты, т.е. одной посылкой байта передавать 8 переменных (побитно), блоками Mux, Demux.
почитал, ничего не понял. не программист я
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Re: nodemcu перезагружается каждые 15-40 мин
Блок сложения строк - формирует строку Json. По аналогии можете напихать в него нужное количество переменных. В названиях полей не должно быть пробелов.
[/quote]
Благодарю!. практически разобрался, только слэш не надо ставить, добился, что отправляя вручную из вэбсокета джейсон- строку
WQTT меня понимает и разделяет по полочкам осталось дело за малым, сложить строки в нодемсю.
ВОТ ТОЛЬКО ВОПРОС!!! а обратно КАК? (на стороне брокера сложить в строку JSON), или брокер WQTT этого не может?
[/quote]
Благодарю!. практически разобрался, только слэш не надо ставить, добился, что отправляя вручную из вэбсокета джейсон- строку
WQTT меня понимает и разделяет по полочкам осталось дело за малым, сложить строки в нодемсю.
ВОТ ТОЛЬКО ВОПРОС!!! а обратно КАК? (на стороне брокера сложить в строку JSON), или брокер WQTT этого не может?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Phazz
- Полковник
- Сообщения: 3169
- Зарегистрирован: 17 окт 2016, 15:38
- Откуда: Сургут
- Имя: Анатолий
- Благодарил (а): 239 раз
- Поблагодарили: 128 раз
Re: nodemcu перезагружается каждые 15-40 мин
Слэш нужно ставить, чтобы не было ошибок компиляции в Arduino IDE
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя