​Проблема с нахождением адресов устройств wb-mr14 и ddm845r

Добрый день

Имеется оборудование wb-mr14 и ddm845r, на которые адреса modbus установлены заводом и в чаще всего подписаны на корпусе. Управляет ими контроллер wirenboard 5 по Modbus RTU. При настройке контроллера иногда возникает проблема отсутствия адреса одного или нескольких устройств на шине, в связи с чем устройство не управляется.

Данную проблему пытался решить:

  • Последовательным перебором адресов, которые обычно присваиваются на заводе;
  • Использованием консольной команды для поиска устройств:
    service wb-mqtt-serial stop
    for i in {1…247}; do modbus_client -mrtu /dev/ttyAPP1 --debug -a$i -t3 -r0x80 -s2 -pnone; done 2>/dev/null | grep Data:
    Команда выполняется успешно для тех устройств в шине, адреса которых уже найдены и прописаны в конфигурации wb-mqtt-serial и выдает Data: 0x0000 для устройств, адрес которых я пытаюсь найти.
  • Отключением всех усторйств из шины кроме искомого и использованием консольной команды для задания адреса устройству через широковещательный адрес a0:
    modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a0 -t0x06 -r0x80 X, где X - адрес, который я хочу задать данному устройству.
    При попытке проверить, сохранился ли данный адрес в адресном регистре командой
    modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a1 -t0x03 -r0x80
    выдается ошибка времени ожидания ERROR Connection timed out: select.
  • Хотел попробовать использовать утилиту modbus poll, но почему-то к wirenboard 5 удалось подключиться только один раз, на все последующие попытки я ловил ошибку времени ожидания. Подключение по tcp-ip, порт 502, устройство пингуется успешно, веб интерфейс выдает.

Можете ли вы порекомендовать какие-либо действия для решения данной проблемы?

Добрый день!
Что значит “иногда возникает”? С одними и теми же устройствами иногда работает, а иногда нет? Или с одними устройствами работает, а с другими нет?