Постоянные ошибки от сервиса wb-mqtt-serial - request timed out / invalid crc

Добрый день!

Наблюдаю постоянные ошибки пачками от сервиса wb-mqtt-serial. При этом показатели устройств через UI - в основном черные, хотя, бывает, краснеют кратковременно.

В логе (скрин ниже) можно наблюдать 2 типа ошибок:
request timed out
malformed response: invalid crc

Вроде, выглядит, как нестабильная связь с устройствами. С чем это может быть связано и как дальше диагностировать?

По поводу требований к физическому проектированию шин RS-485 в курсе, и да - есть отклонения, на концах линий висят терминаторы, далее физически уже невозможно ничего изменять, кроме, может быть, разбиения на несколько независимых линий RS-485, т.к. вся проводка заложена в стенах. Но, что хотелось бы сейчас:

  1. Как понять, о каких конкретно устройствах идет речь, в логе пишет только загадочные указатели вида modbus:30 - как понять какая это шина и какое устройство?
  2. Понять в чем конкретно дело, изолировать проблемные устройства (есть одно стороннее устройство на базе ПЛК Овен) или сегменты шин.
  3. Подтянуть на сколько возможно программные методы борьбы с нестабильностью связи (настройка опроса, задержки и пр.)
  4. Если решением будет разбиение одной шины на несколько - тоже, наверное, вариант, но надо как-то четко понять, что делается и зачем, прежде , чем начинать какие-то переделки, а мне пока не понятны методы диагностики этих проблем.

Добрый день.

Если есть больше чем одно устройство с указанным modbus адресом - то да, нужно включить debug.

Шина - одна, разве что части от конца отключать.
В логе я вижу проблемы с как с таймаутом (устройство, высоковероятно ничего не получило) так и с CRC. То есть ответ был - но испорчен.
Посмотрите в тему: Ошибки invalid crc при работе с ТЕРМ-2000 по modbus - #7 от пользователя BrainRoot

Для начала надо определиться что портится. Если случайные биты - то надо проверять физику.