Я вижу следующие варианты:
- Можно только для этого канала установить большой интервал опроса, например, 600000 мс (10 минут) или даже 3600000 (1 час). Тогда этот регистр будет читаться один раз в течение заданного интервала времени, и сообщение об ошибке будет в логах появляться только раз в этот интервал. На время записи это не повлияет. Однако в веб-интерфейсе этот параметр все равно будет помечен красным цветом.
{
"name" : "G1_valSet",
"reg_type" : "holding",
"address" : 2005,
"type": "dimmer",
"scale" : 0.583,
"offset" : -48,
"format": "u16",
"poll_interval": 3600000
}
- Подключить устройство на отдельный порт и не использовать сервис wb-mqtt-serial для этого порта (снять галочку Enable port). Для отображения и изменения значения регистров в веб-интерфейсе использовать виртуальное устройство. Чтение и запись регистров можно осуществлять с помощью движка правил по таймеру, используя команду runShellCommand(cmd, options), как описано здесь: https://github.com/wirenboard/wb-rules. В качестве команды использовать утилиту modbus_client (https://wirenboard.com/wiki/Modbus-client). Соответственно в проблемный регистр только записывать данные, но не читать.