Ошибка в wb-zigbee2mqtt.js

Здравствуйте!
Не нашел похожую тему.
Пытаюсь подключить 2 датчика открытия дверей ZigBee от Tuya.
Сопряжение сделал, но на странице устройств запись от устройств появилась лишь после перезагрузки контроллера. При этом на события датчиков (открытие/закрытие) в топике информация не обновляется, но при этом я вижу приходящие JSON в zigbee2mqtt и корректную обработку их в HomeAssistant - там состояние датчика меняется сразу без проблем.
Далее полез в системный журнал и вижу там ошибку на каждое событие:

> ERROR: [rule error] ECMAScript error: TypeError: type error (rc -105) anon native strict preventsyield anon /usr/share/wb-rules-system/scripts/lib.js:113 preventsyield anon /usr/share/wb-rules-system/rules/wb-zigbee2mqtt.js:172 preventsyield
ERROR: invalid control definition
ERROR: [rule error] ECMAScript error: TypeError: type error (rc -105) anon native strict preventsyield anon /usr/share/wb-rules-system/scripts/lib.js:113 preventsyield anon /usr/share/wb-rules-system/rules/wb-zigbee2mqtt.js:172 preventsyield
ERROR: invalid control definition

Как поправить эту ошибку? В стандартные файлы не рискую пока лезть.

Другие датчики(температуры, движения) появлялись сразу после сопряжения и с ними таких проблем не было.

Добрый день!

Для диагностики проблемы пришлите, пожалуйста, архив с диагностической информацией контроллера. Создание архива описано в документации.

приложен диагностический архив, доступен только сотрудникам поддержки
(368,4 КБ)

Добрый день!

Проверьте значение полей friendly_name для door-датчиков в /mnt/data/root/zigbee2mqtt/data/configuration.yaml .
Убедись, что там нет символов /, #, + или пробелов.

Перепроверил. Лишних символов нет. Рядом прописаны другие датчики - их показания обрабатываются и обновляются корректно…

Уточните, точные наименования моделей данных устройств и пришлите конфиг.

Точное название устройства: Door sensor (TS0203) Tuya
Конфиг:

GNU nano 5.4                                                                                                                     /mnt/data/root/zigbee2mqtt/data/configuration.yaml                                                                                                                               
homeassistant: true
permit_join: false
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://localhost
serial:
  port: /dev/ttyMOD4
advanced:
  rtscts: false
  last_seen: epoch
  pan_id: 5262
  network_key:
    - 100
    - 107
    - 180
    - 201
    - 84
    - 62
    - 164
    - 33
    - 149
    - 56
    - 232
    - 109
    - 148
    - 150
    - 7
    - 213
  homeassistant_legacy_entity_attributes: false
  legacy_api: false
  legacy_availability_payload: false
device_options:
  legacy: false
devices:
  '0xa4c1388b5939b216':
    friendly_name: Zig_Water_1
  '0xa4c138b2274ba1dc':
    friendly_name: Zig_Temper_1
  '0xa4c138d919b4e852':
    friendly_name: Zig_Temper_2
  '0xa4c138d9813a0e5d':
    friendly_name: Zig_DD1
  '0xa4c138ac3bdb452c':
    friendly_name: Z_D02
  '0xa4c138cb6f247bcf':
    friendly_name: Z_DO1

Попробуйте подписаться на топики и сгенерируйте события от одного из этих датчиков и пришлите этот вывод, например:

mosquitto_sub -v -t 'zigbee2mqtt/Z_DO1'

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

Как это выглядит? Вы подписались и при воздействии нет ответа?

Если подписаться на один топик, то тоже самое? Например:

mosquitto_sub -v -t  'Z_DO1/last_seen'

Выглядит как отправленная команда без ответа…

Добрый день.

При срабатывании датчика сообщения не приходят?

Пригласите пожалуйста пользователя support@wirenboard.com в организацию на облачном сервисе.
Для этого в настройках организации нажмите кнопку “Пригласить”


И укажите почтовый адрес:

После этого поддержка получит доступ к вашему контроллеру для диагностики.
Не забудьте удалить потом доступ.

Добрый день! Подскажите, доступ сможете предоставить?

готово

1 лайк

Здравствуйте.
Доступ предоставил

Кому:ru4pn@yandex.ruru4pn@yandex.ru;
Тема: [Wiren Board Support] [Программное обеспечение/Rule Engine] Ошибка в wb-zigbee2mqtt.js;

Добрый день!

Похоже баг в нашем wb-zigbee2mqtt конвертере.

Воспроизвела у себя: при публикации в топик значения null такая же ошибка.

У вас в публикациях тоже вижу null
z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/Zig_Temper_1', payload '{"battery":100,"humidity":51.11,"last_seen":1755419337830,"linkquality":null,"temperature":23.27,"voltage":3000}'

Передам разработчикам, пока починят, возможно, пройдёт много времени.

Завтра попробуем какой-нибудь костыль придумать, чтобы убедиться, что точно в этом дело, и починить на вашем контроллере.

Добрый день.

Так же удалось обнаружить, что у вас старая версия wb-zigbee2mqtt 1.3.5 (актуальная: 1.4.1), а так же релиз WB-2410 (актуальный: WB-2507).
В связи с чем прошу вас создать резервную копию настроек и выполнить обновление контроллера.

Отлично, очень надеюсь на вашу помощь. Уже 3 датчика таких(два открытия дверей, один датчик присутствия), все они от производителя Tuya.

Займусь этим вопросом, спасибо. Боязно потерять существующие наработки и настройки, особенно связки с WB-HA-УД Яндекс(Алиса), поэтому лишний раз не хочется лезть в обновы.

Еще разбираемся. Когда станет ясно, что можно сделать для решения проблемы, я вам напишу.