Node red wled (адресная лента)

Добрый день! Подскажите куда копать.
Настроил управление адресной лентой(wled на nodemcu) голосом через колонку алиса, посредством node red.
По видео https://rutube.ru/video/d2054d4ec8f7a3003e6d739d9acb861c/?r=plemwd
Включается, меняет эффекты, но пресет(сохраненные мной типы работы ленты) работают, через раз. Раз пять семь сработает, потом выпадает в ошибку.

msg : Object
{ payload: "Midnoise", _msgid: "c21e340782dd924e" }
10.01.2025, 21:48:08node: debug 6
msg : Object
{ payload: "2", _msgid: "5b5fe164a3c6ea8f" }
10.01.2025, 21:48:18node: debug 6
msg : Object
object
payload: "3"
_msgid: "335a838c747f5e2f"
10.01.2025, 21:48:18node: wled
msg : error
"TypeError: Cannot read properties of undefined (reading 'includes')"

Добрый день.
Я не совсем понимаю что вы делаете. Так как я не специалист Nodered - то помочь с кодом в нем (если такой помощи ожидаете) - не смогу, тут целесообразно обратиться в поддержку NodeRed.
Пожалуйста - сформулируйте вопрос по оборудованию нашего производства, с работой которого возникают проблемы.

У меня нет проблем и вопросов к вашему оборудованию.
Просто nodered стоит на wb7 и отправляет команды на wled. Думал может быть кто подскажет в чем проблема не стабильности работы запроса который отправляется на nodemcu.
А делаю голосовое управление через колонку алиса, которая отправляет команду чтобы переключались разные эффекты на адресной светодиодной ленте

А что такое “запрос” (предполагаю что публикация в топик, но лучше уточнить), чем один от другого отличается? Всегда ли он публикуется?

В node red ставится плагин node-red-contrib-wled2 (node) - Node-RED
И плагин алисы
node-red-contrib-alice (node) - Node-RED
нода алисы отправляется команда на ноду wled с типом переменной строка или числовым значением.
Судя приложенного выше видео, числовое значение отправленное на ноду wled меняет яркость свечения адресной ленты( эта функция работает. Отправляешь команду Алиса яркость 10 и меняется яркость свечения. Если отправляешь команду Эффект( отправляется названия эффекта переливания светодиодов, отправляется слово с типом переменной string ) Это тоже работает. Есть еще так называется Пресет, это сохраненное значение яркости и эффекта одновременно, как я понял из видео отправляется числовое значение с переменной string, оно работает но через раз, несколько раз мегяется, а потом выпадает ошибка type error и после этогл нода wled перестает реагировать на команды, до перезапуска.
Как мог объяснил. Время будет попробую видео сделат, чтобы более понятно было.

А “команда” - доходит? каждый раз верно?

А, то есть именно компонент, добавленный в NR перестает работать.
А как понятно что “перестает реагировать”. Как отслеживаете реакцию в нормальном состоянии? Что этот компонент вообще делает, если публикует то что и куда?

Затрудняюсь ответить на 100%. У меня на даче мобильный интернет и алиса работает через него. (Было предположение, что возможно из за мобильного сигнала может быть сбой.)
Если визуально, то отправлял команду и через web интерфейс WLED наблюдал. При голосовой команде в веб интерфейсе происходило переключение пресета или эффекта или яркости ленты и всегда по разному. Мог 5 команд выполнить, а потом происходил сбой, мог 15, иногда и больше. В поток nodered в конце установил ноду с задержкой 5 секунд, чтобы не спамить плату управления лентой(nodemcu), так как когда экспериментировал с яркостью заметил, что если подряд говорить команды то плата может подвисать.

Есть желание установить home assistant на нем как я прочитал есть плагин где реализовано управление wled . И понаблюдать как там будет себя вести nodemcu.

В NR есть нода wled. У нее есть состояние connect и disconnect, В самой ноде прописывается только ip адрес. Во время зависания wled она пишет disconnect.
И в ноде debag(подключенной на выходе значения отправляемой на ноду wled. для отладки ) пишется выше указанная ошибка “TypeError: Cannot read properties of undefined (reading ‘includes’)”
На счет того, что делает нода wled точно не могу сказать, все что я сделал это было из этого видео( https://rutube.ru/video/d2054d4ec8f7a3003e6d739d9acb861c/?r=plemwd), только у автора ролика сделано через dashboard. а я попробовал реализовать через плагин Алисы. Посмотрев ролик если я правильно понял, то NR отправляет команды на плату управления лентой с определенным типом переменной. Яркость меняется числовой переменной с отправленным числом от0-255, Эффект меняется строковой переменной с названием эффекта(как они прописаны в веб интерфейсе wled), Пресет меняется отправленной строковой переменной в виде числа(число но тип строка). Возможно я что то не правильно понял(видео на английском языке). Предположительно NR отправляет get запрос на плату которая изменяет значение(параметр) ленты.
И судя по самой справке в NR по данному плагину описано , только вот это:

payloadboolean | number | string | object

  • boolean true/false to switch on and off
  • number 0-255 to set brightness
  • string the name of an effect or a palette (see List of effects and palettes)
  • string the number of a preset
  • object state to post to the /json/state endpoint (see JSON API docs)

А адрес чего прописывается?

Так, а кто и куда пишет?

То есть - на вход поступает нечто неожиданное.

Вот этот момент не очень понятен. Что именно отправляется и каким способом?
Если

имеется в виду http get - то отследить, конечно, проще.
Но с NodeRed я некомпетентен и скорее всего не помогу в отладке, у меня мало знаний.

Ip адрес ленты

В mqtt топиках точно ни каких значений не пишется

Поступает число или слово, Я писал выше. То которое я отправляю через алису.

Я предположил, что get или post запрос. Как в NR это посмотреть я не знаю. Поищу может как то сетевой трафик через консоль смогу отследить.

Ну да, глянул: JSON API - WLED Project

Единственный, пожалуй, способ - собрать проект с отладкой и заниматься дебагом.
Как раз из-за похожих кейсов и понял что мой уровень - он ниже требуемого для использования NR.

Это просто, Tcpdump на разных уровнях / Хабр например.
Ну и да, логично роверить - отправлется ли что-то устройству. Если нет - тогда можно сразу переходить к отладке самого компонента.

Понял. Спасибо. Как свободное время появится проверю.

Отмечу решённой из-за отсутствия активности. Если появятся дополнительные вопросы - создайте новую тему.