из оборудования:
WB7 (2207),
Модуль расширения WBE2R-R-ZIGBEE v.2
и 4-х канальное Zigbee реле
+Zigbee2MQTT
Кто-нибудь знает что происходит?
буду признателен за помощь
ЗЫ: какое-то время назад работало нормалью, и вот опять
в логах при загрузке проскакивали ошибки, которых раньше не было:
19-12-2022 02:29:58.076 [ssh]
/etc/ssh/sshd_config line 37: Deprecated option RhostsRSAAuthentication
19-12-2022 02:29:58.076 [ssh]
/etc/ssh/sshd_config line 37: Deprecated option RhostsRSAAuthentication
19-12-2022 02:29:58.076 [ssh]
/etc/ssh/sshd_config line 30: Deprecated option RSAAuthentication
19-12-2022 02:29:58.076 [ssh]
/etc/ssh/sshd_config line 19: Deprecated option ServerKeyBits
19-12-2022 02:29:58.076 [ssh]
/etc/ssh/sshd_config line 18: Deprecated option KeyRegenerationInterval
19-12-2022 02:29:58.046 [init.scope]
Reloading OpenBSD Secure Shell server.
19-12-2022 02:29:58.019
the NTP socket is in use, exiting
и такие:
19-12-2022 02:29:01.290 [wb-rules]
ERROR: [rule error] failed to open config file: /etc/wb-mqtt-dac.conf
19-12-2022 02:29:01.288 [wb-rules]
ERROR: [rule error] failed to open config file: /var/lib/wb-mqtt-dac/conf.d/system.conf
Спасибо.
Но почему бы устройство вдруг решило отправлять побольше сообщений? Оно же отправляло нормально неделю назад…
мне кажется на железку надо грешить в последнюю очередь
вот пример из раньшего времени:
12-12-2022 10:44:48.611 [zigbee2mqtt] Zigbee2MQTT:info 2022-12-12 07:44:48: MQTT publish: topic ‘zigbee2mqtt/my relay1’, payload ‘{“last_seen”:1670831088598,“linkquality”:54,“state_l1”:“OFF”,“state_l2”:“OFF”,“state_l3”:“OFF”,“state_l4”:“OFF”}’
Под кнопкой имеете ввиду физическую кнопку на устройстве? И зачем вы при старте скрипта отправляете устройству команду через publish?
Расскажите подробнее по шагам, что делаете и что хотите получить. Сейчас, к сожалению, со стороны выглядит как попытка сделать что-то без понимания результата, но я уверен, что это не так.
конечно я пытаюсь быть осмысленным
задача управление вентиляторами конвекторов. К ним проложены только питание а там 3 положения. Поэтому читаем состояние вентилятора на термостате BAC-002ALN и устанавливаем соответствующее состояние зигби реле. НО. Это даже не важно. Я удалил все скрипты и оставил только одну команду, которая выполняется 1 раз при загрузке скрипта, чтобы не отвлекаться на другие варианты. И она генерит множество сообщений. Я подписался на топик. Там действительно проходит несколько сообщений подряд.
Исполнение одного Publish генерит 14 сообщений (7 пар, в паре - одинаковые last_seen)
как в такой ситуации обрабатывать zigbee кнопки по last_seen? (сообщения от кнопки тоже дуплицируются)
========
1671616476365
36
OFF
OFF
OFF
OFF
1671616476365
36
OFF
OFF
OFF
OFF
1671616476383
40
OFF
OFF
OFF
OFF
1671616476383
40
OFF
OFF
OFF
OFF
1671616476439
40
OFF
OFF
OFF
OFF
1671616476439
40
OFF
OFF
OFF
OFF
1671616476464
40
OFF
OFF
OFF
OFF
1671616476464
40
OFF
OFF
OFF
OFF
1671616476517
40
OFF
OFF
OFF
OFF
1671616476517
40
OFF
OFF
OFF
OFF
1671616476517
40
OFF
OFF
OFF
OFF
1671616476517
40
OFF
OFF
OFF
OFF
1671616476535
40
OFF
OFF
OFF
OFF
1671616476535
40
OFF
OFF
OFF
OFF
ради эксперимента изменил скрипт и добавил еще одну строку
Это сообщение об ошибке, что команда устройству не доставлена.
Вот тут я не понял, кто отправляет сообщения — устройство? Как вы их отлавливаете? Обмен происходит так: вы с помощью publish отправляете команду в топик Zigbee-устройства, далее zigbee2mqtt видит это сообщение и отправляет его устройству по протоколу Zigbee. Некоторые устройства присылают в подтверждение кроме статуса и своё текущее состояние.
Возможно, вы действительно, отловили какой-то баг, поэтому попрошу сделать ещё пару шагов и написать результат по каждому из них:
Удалите строки с publish из скрипта и перезапустите wb-rules в консоли командой systemctl restart wb-rules и убедитесь, что сообщения не публикуются.
Добавьте в скрипт одну строку и снова выполните в консоли systemctl restart wb-rules. Убедитесь, что снова публикация происходит много раз.
Также пришлите, пожалуйста, диагностический архив, инструкция. Архив лучше выгрузить сразу после ваших экспериментов по шагам выше.
Спасибо.
я использую команду
mosquitto_sub -t /devices/#
смотрю все топики
я отключил всё кроме: 3-х zigbee устройств 4-х канальное реле, розетка, кнопка и термостат BAC-002ALN по modbus.
все скрипты удалены, есть только один скрипт с одним publish. я добавляю или удаляю пустую строку и сохраняю. в этот момент он (скрипт) единожды (я надеюсь) исполняется. при этом в отдельном окне, где запущен mosquitto_sub -t /devices/# вижу в онлайне все сообщения.