Serial protocol error: serial write failed: Broken pipe (32)

Стала пропадать периодически связь с устройством по ModbusTCP/IP, что совпадает с появлением в журнале странных предупреждений (Serial protocol error: serial write failed: Broken pipe (32)), что они означают? Просто к WB7 (
wb-2310) подключено одно устройство по ModbusTCP/IP и опрашиваются (тип регистра input) всего 10 регистров у него, на запись ничего нету.

|25-11-2024 01:12:43.433 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1023 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|---|---|
|25-11-2024 01:12:43.431 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1022 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:12:43.428 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1021 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:12:43.426 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1020 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:12:43.424 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1030 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:12:43.420 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1029 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:12:43.420 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1028 of device modbus-tcp:1: Serial protocol error: serial write failed: Connection reset by peer (104)|
|25-11-2024 01:12:43.416 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1027 of device modbus-tcp:1: Serial protocol error: request timed out|
|25-11-2024 01:12:43.416 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1027 of device modbus-tcp:1: Serial protocol error: request timed out|
|25-11-2024 01:12:42.561 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1026 of device modbus-tcp:1: Serial protocol error: request timed out|
|25-11-2024 01:12:19.514 [wb-mqtt-opcua]|INFO: [OPCUA] channel: Connection 8 | SecureChannel 16 | SecureChannel renewed with a revised lifetime of 600.00s|
|25-11-2024 01:06:47.572 [wb-mqtt-serial]|INFO: [serial device] device modbus-tcp:1 is connected|
|25-11-2024 01:06:47.540 [wb-mqtt-serial]|WARNING: <192.168.0.100:502>: closed due to repetitive errors|
|25-11-2024 01:06:42.539 [wb-mqtt-serial]|INFO: [serial device] device modbus-tcp:1 is disconnected|
|25-11-2024 01:06:42.539 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1029 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1028 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1027 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1026 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1026 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1025 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1024 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1023 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1022 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1021 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1020 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.636 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1030 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1029 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1028 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1028 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1027 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1026 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1025 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1024 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1023 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1022 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1021 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|
|25-11-2024 01:06:41.629 [wb-mqtt-serial]|WARNING: [modbus] failed to read 1 input(s) @ 1020 of device modbus-tcp:1: Serial protocol error: serial write failed: Broken pipe (32)|

Добрый день.
Описано вот тут:

Устройство не отвечает и/или не позволяет установить соединение.
Рекомендую протестировать с помощью modbus_client.
В случае аналогично результата - надо смотреть в логи самого устройства.

serial write failed: Broken pipe (32) - поиском не нашел на git.
serial write failed - это ошибка записи регистра?
Broken pipe (32) - это как интерпретировать?

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

Отправил в личном сообщении

Добрый день!

Рекомендую обновиться до последней версии прошивки и проверить, сохраняется ли проблема.

Если возникнут вопросы или потребуется помощь, пишите!

Попробую обновиться. Если я вас правильно понял, то сообщения в журнале говорят о некорректной работе wb-mqtt-serial в старой версии прошивки, верно?

P.S.: Данный WB7 отработал год, таких ошибок не было, конфигурация и перечень опрашиваемого оборудования не менялся.

Добрый день!

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

Тогда что же все-таки означает фраза serial write failed: Broken pipe (32)?

Добрый день!

Фраза “serial write failed: Broken pipe (32)” означает, что попытка записи данных в устройство по ModbusTCP завершилась неудачей из-за неожиданного разрыва соединения.

Рекомендации:

  1. Проверьте физические соединения для исключения аппаратных проблем.
  2. Для более точной проверки выполните подключение через Modbus-клиент и проверьте, отвечает ли устройство на запросы.

Инструкция по работе с Modbus-клиентом доступна по ссылке.

Речь идет о записи в регистр по Modbus (функция записи)?

Добрый день!

Ошибка не уточняет, что именно пошло не так. Прошу вас уточнить:

  1. Какие действия вы выполняете?
  2. Какой результат вы ожидаете получить?

Эта информация поможет мне разобраться в ситуации и постараться вам помочь.

  1. Пока что никаких
  2. На данный момент я хочу понять “природу” этих сообщений и какая проблема (физическая или программная):
  • Если wb-mqtt-serial пытается записывать что-то в регистры, то тогда проблема явно на стороне wb-mqtt-serial, так как в конфигурации регистры ТОЛЬКО на чтение и с чего вдруг он пытается что-то записывать спустя год - непонятно;
  • Если это сообщение о том, что не может подключиться к устройству и, соответственно, отправить (записать) запрос, то не понятно почему столько сообщений возникает за несколько миллисекунд, по идее должен срабатывать таймаут через несколько неудачных попыток.

Буду в понедельник пробовать обновить

Добрый день, удалось ли попробовать?

Добрый вечер. К сожалению, времени не было заняться этой проблемой. Наверное, получится только на следующей неделе обновиться.

Добрый день.
Буду ждать обратной связи.

Добрый день
Удалось ли решить проблему?

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

Добрый день!

Помечаю тему как решённую. Если возникнут дополнительные вопросы, прошу создать новую тему и вставить ссылку на данную для контекста. Спасибо!