Собрал стенд, воспроизводящий сценарий из тикета — ближнее и дальнее устройство одновременно на шине с MGE. Не один в один, у нас достаточно отличий. Я на тестинге, чтобы установить максимально свежие прошивки устройств, у меня физически нет столько MSW, поэтому я набирал девайсы количественно, и я не стал создавать топологию звезды, дальний МГЕ - это общая шина. Оборудование у меня следующее:
два WB-MGE v.3 в режиме прозрачного моста (ближний — клиент, дальний — сервер), порт RS485-1<->RS485-1, прошивка шлюзов 1.1.0 (f0de124_main);
1 устройство на ближней стороне (шлейфом на контроллере): WB-MRWL3;
7 устройств на дальней стороне через мост: WB-MR3, WB-MWAC-v2, WB-LED, WB-MDM3, WB-MAP3EV, WB-MAO4, WB-MSW v.4;
скорость шины 9600 8N2;
версия драйвера wb-mqtt-serial: 2.260.1.
Прошивки MCU самих устройств (MR3, MWAC, LED, MDM3, MAP3EV, MAO4, MSW, MRWL3) на стенде не сверял отдельно. Каждая железка была обновлена до последней доступной версии в процессе работы над стендом.
Нашёл конфигурацию, при которой ошибки полностью пропадают:
На порту RS485 в контроллере выставил «Таймаут ответа» = 1000 мс и «Задержка перед записью в порт» = 100000 мкс. Оба значения подбирал эмпирически под задержку моста и число устройств на шине — при изменении состава устройств стоит перепроверять заново.
На каждом устройстве выставил enable_wb_continuous_read: false .
Для каждого канала, у которого в шаблоне устройства задан событийный режим (sporadic / semi-sporadic — то есть Быстрый Modbus), явно выставил sporadic: false в конфиге самого устройства.
При такой настройке — 0 ошибок за длительное тестирование (несколько контрольных 30-минутных и минутных окон), все каналы всех 8 устройств опрашиваются штатно.
Прикладываю файл конфигурации /etc/wb-mqtt-serial.conf с моего стенда как референс. Прошу прислать свой актуальный файл конфигурации — сравню настройки и посмотрю, в чём может быть отличие от вашей установки. Отдельно нашёл интересную особенность: при добавлении нового устройства через веб-интерфейс контроллера enable_wb_continuous_read у ранее настроенных устройств незаметно возвращается обратно во включённое состояние.
я тоже не отстаю - в ближнем MGE стал использовать сторой канал под низкую скорость 9600 с доступом по TCP - регулярно опрос отваливается и MGE пишет “Inactive”
и для E-bus нет-нет да и проскакивают тайм-аут. хотя казалось тут-то откуда - он сам по себе в MOD3
Павел, вы можете похулиганить с моей версией conf-файла? Я там отключил спорадику для устройств, отключил continious read и прописал явно временные задержки.