WB-MSW v3 не реагирует на запись в /on

Доброго времени.

WB-MSW v3 (s/n 4266170754, FW 4.16.8) периодически (закономерность не выявил) перестаёт отвечать (реагировать) на запись в /Play from ROM*/on .
То в ROM3, то в ROM2, то в 1-й. В какой-то один. Остальные регистры совершенно нормально реагируют. Все параметры читаются без задержек и ошибок.
Вот, например, дам топиков (mosquitto_sub); ROM1 уже “не отвечает”, пробую ROM2-ROM3:
/devices/wb-msw-v3_45/controls/Play from ROM2/on 1 (сработал)
/devices/wb-msw-v3_45/controls/Play from ROM2 1 (сработал)
/devices/wb-msw-v3_45/controls/Play from ROM2 0 (сработал)
…пауза в действиях…
/devices/wb-msw-v3_45/controls/Play from ROM3/on 1 (сработал)
/devices/wb-msw-v3_45/controls/Play from ROM3 1 (сработал)
/devices/wb-msw-v3_45/controls/Play from ROM3 0 (сработал)
…пауза в действиях…
/devices/wb-msw-v3_45/controls/Play from ROM1/on 0 (не записал 0, не ответил)
…пауза в действиях…
/devices/wb-msw-v3_45/controls/Play from ROM1/on 0 (не записал 0, не ответил)

И так далее… Лечится сие перезагрузкой ус-ва (командой или по питанию), либо попыткой записи без /on, напимер:

/devices/wb-msw-v3_45/controls/Play from ROM1 0 (просто “проглотил”)
…пауза в действиях…
/devices/wb-msw-v3_45/controls/Play from ROM1/on 1 (сработал)
/devices/wb-msw-v3_45/controls/Play from ROM1 1 (сработал)

Далее всё работает корректно по повторного появления такой проблемы.
Таких запросов десяток за день. Корректно работать может неделю-две. А может за день пять раз “зависнуть”.

Проблема возникла при переходе на WB6. На WB5 он работал год (или больше) без проблем. Не помню, какая была прошивка “из коробки”, но обновление до 4.16.8 проблему не решает.

v3 у меня единственный.

Добрый день.
Так а по каким призакам определяете что именно “не сработал”? Дело в том что запись “1” в coil воспроизведения команды из банка проявится только если этот же coil прочитается сразу же, до окончания воспроизведения команды. Jgbcfyj nen^ Инструкция по работе с ИК-приёмопередатчиком в устройствах WB-MSW, WB-MIR — Wiren Board

Добрый.

Как определяю? Буквально: ИК не передаёт сигнал. В моём примере, записанный в ROM1.
Я не использую modbus_client напрямую. Делаю это через приложение по MQTT, либо (когда не срабатывает, как примере) через WEB WB6 путём нажатия на кнопку “Play from ROM1” соответствующего ус-ва из меню “Devices”. Я могу нажимать эту кнопку 100 раз без положительного результата. Как только перезагружаю модуль (просто, например, откидываю крышку и сдёргиваю разъём), всё начинает работать, как положено: сигнал воспроизводится и приёмник ус-ва реагирует.

Может быть подскажите, как поступить в следующий раз? Перезагрузить службу какую-то? Остановить и выполнить набор команд через консоль, используя modbus_client ?

В той же документации описано:

В каждый момент времени можно выполнять только одну операцию только над одним сигналом. Так как во время выполнения любой операции в один из регистров флагов ставится 1, а после завершения операции туда же ставится 0, в каждый момент времени среди всех регистров флагов, относящихся к ИК-приёмопередатчику, только один регистр может быть установлен в единицу. Попытка записи 1 в регистры флагов, связанных с ИК, при уже имеющейся единице приведёт к ошибке BUSY.

В случае когда не воспроизводится - надо прочитать все coil, относящиеся к ИК и проверить - нет ли в каком-нибудь “1”.

То есть, не будет возможности вызвать любой из сигналов в ROM*? Или только тот, который содержит “1”?

В следующий раз попробую прочесть их все.

То есть - если в каком-то cil стоит “1” - запись в другой не сработает.
Ну и посмотреть в лог wb-mqtt-serial надо, что возвращается при попытке такой записи.

Ясно. Точнее - не ясно…
Фактически я могу вызвать проигрывание сигнала из любой другой ROM (хоть брокером извне - из сети, хоть через WEB-интерфес).
То есть, повторюсь, “зависает” одна из нескольких мною используемых. В этот же момент времени остальные сигналы проигрываются без каких-либо задержек или отказов.

Так, то есть просто “не воспроизводится”, без каких-либо ошибок в логах? а другие в то же время - воспроизводятся. А посмотрите через камеру на светодиод - действительно не генерируется команда?
И, кстати, выгрузите в файл содержимое банков пожалуйста - попробую воспроизвести.

[quote=“BrainRoot, post:9, topic:10042”]
А посмотрите через камеру на светодиод - действительно не генерируется команда?[/quote]
Да. Не генерируется. Странная штука, но с февраля (видимо, после каких-то обновлений) подобная проблема возникла всего один раз. И у меня не было физички возможности чего-либо документировать.

Думаю, что пока вопрос можно считать закрытой.

1 лайк

Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.