Как интерфейс контроллера понимает, что датчик в офлайне?

Добрый день!

Раскройте, пожалуйста, как интерфейс понимает, что датчик находится в офлайне (красные строки на скриншоте)?

Строка датчика красится в красный цвет по таймеру отсутствия показаний или по какой-то другой логике (какой)?

Заранее спасибо!

Добрый день.
Вот тут подробно описан алгоритм.
Ну и для шины работающей в сложных промышленных условиях в принципе допускается несколько ошибок в минуту.

@BrainRoot

Если в течение device_timeout_ms и более чем device_max_fail_cycles подряд циклов ни один из опрошенных регистров не был успешно прочитан, то устройство будет помечено как отсоединенное и будет опрашиваться в ограниченном режиме

А вот “помечено как отсоединенное” мы где то на уровне mqtt видим?

Да, конечно. Вот тут описано.
То есть статус ошибки существует как для отдельных контролов ((регистров, как правило) устройства так и для устройства целиком, например

/devices/modbus_opemtherm_10/meta/error r

Ошибка при чтении/записи какого-то контрола выводится в него, например:

/devices/modbus_opemtherm_10/controls/Uptime/meta/error r

Добрый день!

Эта ссылка на работает. Не могли бы вы рабочую ссылку прислать, пожалуйста?

Вот ссылка: GitHub - wirenboard/wb-mqtt-serial: Wiren Board MQTT serial protocol driver

Позвольте, наверное, последний уточняющий вопрос на моем примере.

Вот у меня есть датчик сопротивления с топиком
/devices/wb-mai6_213/controls/IN 6 N Resistance

Если с этого датчика перестают приходить показания, как будет выглядеть топик, в котором можно увидеть сообщение об ошибке и каким будет собственно само сообщение об ошибке?

Топик: “/devices/wb-mai6_213/controls/IN 6 N Resistance/meta/error”
Значение зависит от типа ошибки. Прои невозможности прочитать: “r”/
Записать: “w”