WB-MIR v3: Errata
ERRMODBUS003: Неожиданное поведение при записи невалидных значений в некоторые регистры
Подверженные устройства
Устройства WB-MIR v3 с версией прошивки до 4.32.1.
Описание
При записи значений из диапазона [256 ... 65535] в некоторые регистры происходит отсечение старших 8 битов числа и в итоге в прошивку попадает число по модулю 256. Выглядит это так, что при записи, например числа 257, происходит то же самое, что и при записи числа 1.
Одним из таких регистров является адрес устройства (регистр 128).
Отдельно стоит отметить, что в диапазоне значений, указанных в документации, все регистры работают ожидаемо. Проблема возникает при записи невалидных значений более 255.
Возможные пути устранения
Обновить прошивку до версии 4.32.1.
Запланированное исправление
Исправлено в версии прошивки 4.32.1.
ERRMODBUS007: Потеря событий при одновременной передаче событий двумя устройствами на одной шине
Подверженные устройства
Устройства WB-MIR v3 с версией прошивки до 4.35.1.
Описание
При одновременном наличии событий от двух устройств, находящимися на одной шине, одно из них может передать пакет событий не полностью.
Причины и подробное описание
В быстром Modbus передача событий устроена так. Мастер отправляет запрос событий. Все устройства с накопленными событиями участвуют в арбитраже. Устройство, выигравшее арбитраж, отвечает, а проигравшие молчат до следующего запроса.
После того, как событие сгенерировано, оно ждёт отправки. После того, как устройство сформировало кадр и положило его на шину, событие считается отправленным, и в следующем запросе мастера, в котором подтверждается приём пакета от этого устройства, устройство удаляет такие события из своей очереди. Это штатный механизм «подтверждения приёма событий».
Дефект состоял в том, что переход события из состояния «ожидает отправки» в состояние «отправлено» происходил у устройства слишком рано — фактически в момент получения запроса событий от мастера, до того как был известен результат арбитража. Если устройство выигрывало арбитраж, всё шло штатно. Если устройство проигрывало арбитраж, его пакет не уходил на шину вовсе, но внутри устройства события уже были помечены как отправленные. Когда мастер при последующих циклах опроса в очередной раз отправлял подтверждение, относящееся к этому устройству, оно срабатывало и на эти псевдо-отправленные события, и они удалялись из очереди устройства, никогда не доходив до мастера.
С точки зрения пользователя в веб-интерфейсе состояние регистров не изменится, публикации сообщения в MQTT-топик не произойдет, хотя сами регистры и их значения при этом остаются корректными - теряется именно уведомление об изменении.
Например, к контроллеру на одну шину подключены два реле. Одновременно замыкаются входы обоих реле. При этом состояние входов (выходов) одного реле в веб-интерфейсе отображается корректно, тогда как у второго часть событий потеряется. Состояние второго реле будет отображаться как до момента замыкания, несмотря на то, что физически переключение произошло.
Пути обхода
Временно сделать событийные регистры обычными - в шаблоне устройства установить значение поля sporadic в false. Таким образом, регистры будут опрашиваться с установленным временным интервалом, как и обычные регистры.
Запланированное исправление
Исправлено в версии прошивки 4.35.1.
ERRMIR09: Безопасный режим всегда активен
Подверженные устройства
WB-MIR v3 с прошивкой 4.32.1.
Описание
Безопасный режим всегда активен, т.е. всегда воспроизводится ИК-команда при потере связи, даже если настроено действие "Ничего не делать" (регистр 956).
Возможные пути устранения
Обновить прошивку до версии 4.32.2.
Запланированное исправление
Исправлено в версии прошивки 4.32.2.