Modbus групповое считывание регистров

Создал шаблон своего устройства Modbus. Если опрашивать по одному регистру, все корректно считывается.
Пытаюсь сделать групповой запрос 6 регистров. Запрос формируется корректно, устройство отвечает, но в данных устройства отображается только первый параметр, остальные красным цветом и не меняются.
Групповой запрос на 3 регистра - данные в устройстве актуальны для 4 регистров, последние 2 - красным цветом.
Конфиг wb-serial:

{
  "debug" : true,
  "max_unchanged_interval" : 0,
  "ports" : 
  [
    {
      "baud_rate" : 115200,
      "data_bits" : 8,
      "devices" : 
      [
        {
          "channels" : 
          [
            {
              "name" : "Hardware version",
              "read_period_ms" : 2000
            },
            {
              "name" : "Main power",
              "read_period_ms" : 2000
            },
            {
              "name" : "Motor power",
              "read_period_ms" : 2000
            },
            {
              "name" : "Reserve",
              "read_period_ms" : 2000
            },
            {
              "name" : "Motor voltage output ",
              "read_period_ms" : 2000
            },
            {
              "name" : "Motor current output ",
              "read_period_ms" : 2000
            }
          ],
          "device_type" : "rwd",
          "enabled" : true,
          "min_read_registers" : 3,
          "name" : "RWD surface",
          "slave_id" : "128"
        }
      ],
      "enabled" : true,
      "guard_interval_us" : 10,
      "parity" : "N",
      "path" : "/dev/ttyRS485-1",
      "poll_interval" : 0,
      "port_type" : "serial",
      "response_timeout_ms" : 500,
      "stop_bits" : 1
    },
    {
      "baud_rate" : 9600,
      "data_bits" : 8,
      "devices" : [],
      "enabled" : false,
      "parity" : "N",
      "path" : "/dev/ttyRS485-2",
      "port_type" : "serial",
      "read_rate_limit_ms" : 0,
      "stop_bits" : 2
    },
    {
      "baud_rate" : 9600,
      "data_bits" : 8,
      "devices" : [],
      "enabled" : false,
      "parity" : "N",
      "path" : "/dev/ttyMOD1",
      "stop_bits" : 2
    },
    {
      "baud_rate" : 9600,
      "data_bits" : 8,
      "devices" : [],
      "enabled" : false,
      "parity" : "N",
      "path" : "/dev/ttyMOD2",
      "stop_bits" : 2
    },
    {
      "baud_rate" : 9600,
      "data_bits" : 8,
      "devices" : [],
      "enabled" : false,
      "parity" : "N",
      "path" : "/dev/ttyMOD3",
      "stop_bits" : 2
    },
    {
      "baud_rate" : 9600,
      "data_bits" : 8,
      "devices" : [],
      "enabled" : false,
      "parity" : "N",
      "path" : "/dev/ttyMOD4",
      "stop_bits" : 2
    }
  ],
  "rate_limit" : 1
}

Лог

|26-02-2024 10:57:51.960|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536004633: Wait until 2536005781|
|---|---|
|26-02-2024 10:57:51.869|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536004533: Wait until 2536005781|
|26-02-2024 10:57:51.768|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536004433: Wait until 2536005781|
|26-02-2024 10:57:51.645|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536004333: Wait until 2536005781|
|26-02-2024 10:57:51.544|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536004232: Wait until 2536005781|
|26-02-2024 10:57:51.445|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536004132: Wait until 2536005781|
|26-02-2024 10:57:51.344|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536004032: Wait until 2536005781|
|26-02-2024 10:57:51.244|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003932: Wait until 2536005781|
|26-02-2024 10:57:51.144|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003832: Wait until 2536005781|
|26-02-2024 10:57:51.144|DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 80 03 0c 00 00 00 01 00 02 00 03 00 04 00 06 79 83|
|26-02-2024 10:57:51.094|DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us|
|26-02-2024 10:57:51.093|DEBUG: [port] /dev/ttyRS485-1: Write: 80 03 00 00 00 06 db d9|
|26-02-2024 10:57:51.093|DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us|
|26-02-2024 10:57:51.045|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003733: Wait until 2536003781|
|26-02-2024 10:57:50.945|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003633: Wait until 2536003781|
|26-02-2024 10:57:50.856|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003533: Wait until 2536003781|
|26-02-2024 10:57:50.745|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003433: Wait until 2536003781|
|26-02-2024 10:57:50.645|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003333: Wait until 2536003781|
|26-02-2024 10:57:50.545|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003232: Wait until 2536003781|
|26-02-2024 10:57:50.445|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003132: Wait until 2536003781|
|26-02-2024 10:57:50.344|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536003032: Wait until 2536003781|
|26-02-2024 10:57:50.245|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002932: Wait until 2536003781|
|26-02-2024 10:57:50.144|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002832: Wait until 2536003781|
|26-02-2024 10:57:50.044|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002732: Wait until 2536003781|
|26-02-2024 10:57:49.944|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002632: Wait until 2536003781|
|26-02-2024 10:57:49.858|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002532: Wait until 2536003781|
|26-02-2024 10:57:49.744|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002431: Wait until 2536003781|
|26-02-2024 10:57:49.644|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002331: Wait until 2536003781|
|26-02-2024 10:57:49.543|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002231: Wait until 2536003781|
|26-02-2024 10:57:49.443|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002131: Wait until 2536003781|
|26-02-2024 10:57:49.343|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536002031: Wait until 2536003781|
|26-02-2024 10:57:49.243|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536001931: Wait until 2536003781|
|26-02-2024 10:57:49.143|DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2536001831: Wait until 2536003781|
|26-02-2024 10:57:49.143|DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 80 03 0c 00 00 00 01 00 02 00 03 00 04 00 06 79 83|
|26-02-2024 10:57:49.094|DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us|
|26-02-2024 10:57:49.094|DEBUG: [port] /dev/ttyRS485-1: Write: 80 03 00 00 00 06 db d9|
|26-02-2024 10:57:49.093|DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us|

image

Добрый день.
В приложенном логе не вижу ошибок.
Покажите пожалуйста как выглядят ошибки в логе wb-mqtt-serial. Ну и - не заданы ли условия “ошибочных” значений, “error_value” например.

В логе я тоже ошибок не вижу. Но проблема в том, что данные не обновляются, кроме первого параметра
image

еще раз уточню - если считывать регистры по одному, все работает корректно. Проблема именно при групповом чтении в последующем парсинге ответа. Какие-то проблемы с количеством байт в ответе и в настройках…

Все равно не очень понятно. Покажите пожалуйста последовательность зарос-ответ при выполнении которой возникают отличные от ожидаемых результаты.

Вот запрос и ответ. Судя по ответу, в регистре 0 я надеюсь видеть 2, в р1 - 1, в р2 - 2, в р3 - 3, в р4 - 4, в р5 - 5.

26-02-2024 16:09:49.540	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554722228: Wait until 2554723282
26-02-2024 16:09:49.440	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554722128: Wait until 2554723282
26-02-2024 16:09:49.340	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554722028: Wait until 2554723282
26-02-2024 16:09:49.240	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554721928: Wait until 2554723282
26-02-2024 16:09:49.140	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554721828: Wait until 2554723282
26-02-2024 16:09:49.059	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554721727: Wait until 2554723282
26-02-2024 16:09:48.940	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554721627: Wait until 2554723282
26-02-2024 16:09:48.856	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554721527: Wait until 2554723282
26-02-2024 16:09:48.739	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554721427: Wait until 2554723282
26-02-2024 16:09:48.640	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>2554721327: Wait until 2554723282
26-02-2024 16:09:48.639	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 80 03 0c 00 02 00 01 00 02 00 03 00 04 00 05 32 3a
26-02-2024 16:09:48.595	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
26-02-2024 16:09:48.594	DEBUG: [port] /dev/ttyRS485-1: Write: 80 03 00 00 00 06 db d9
26-02-2024 16:09:48.594	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
26-02-2024 16:09:48.594	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us

А по факту распарсен только регистр 0, для остальных данных как будто нет.
image

Это с настройкой минимальное кол-во считываемых регистров - 6. Если менять этот параметр, то по какой-то логике данные будут для некоторых других регистров…

Какая версия wb-mqtt-serial?

какой командой это можно узнать?

Совершенно стандартной, dpkg -s wb-mqtt-serial

Version: 2.109.1

Набросал быстренько modbus slave с holding регистрами по адресам 0…5
Описал в шаблоне как

           {
                "name": "testreg1",
                "reg_type": "holding",
                "address": "1",
                "scale": 1,
                "max": 255,
                "type": "value",
                "format": "u16",
                "group": "general"
            },
            {
                "name": "testreg2",
                "reg_type": "holding",
                "address": "2",
                "scale": 1,
                "max": 255,
                "type": "value",
                "format": "u16",
                "group": "general"
            },
            {
                "name": "testreg3",
                "reg_type": "holding",
                "address": "3",
                "scale": 1,
                "max": 255,
                "type": "value",
                "format": "u16",
                "group": "general"
            },
            {
                "name": "testreg4",
                "reg_type": "holding",
                "address": "4",
                "scale": 1,
                "max": 255,
                "type": "value",
                "format": "u16",
                "group": "general"
            },
           {
                "name": "testreg5",
                "reg_type": "holding",
                "address": "5",
                "scale": 1,
                "max": 255,
                "type": "value",
                "format": "u16",
                "group": "general"
            },

Не настраивал более ничего.
Работает.
Screenshot_20240226_173501

Попробовал добавить 2000мс между чтениями, для проверки

       {
          "channels" :.
          [
            {
              "name" : "testreg0",
              "read_period_ms" : 2000
            },
            {
              "name" : "testreg1",
              "read_period_ms" : 2000
            },
            {
              "name" : "testreg2",
              "read_period_ms" : 2000
            },
            {
              "name" : "testreg3",
              "read_period_ms" : 2000
            },
            {
              "name" : "testreg4",
              "read_period_ms" : 2000
            }
          ],
          "device_type" : "stm_diy",
          "slave_id" : "10"
        },

Соответственно работает без ошибок.
Но и читается по одному:

Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: Write: 0a 03 00 01 00 02 94 b0
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 0a 03 04 00 03 00 04 b1 30
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: Write: 0a 03 00 02 00 02 64 b0
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 0a 03 04 00 04 00 05 c1 31
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: Write: 0a 03 00 03 00 02 35 70
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 0a 03 04 00 05 00 06 d0 f0
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: Write: 0a 03 00 04 00 02 84 b1
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 0a 03 04 00 06 00 07 e1 30
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: Write: 0a 03 00 05 00 02 d5 71
Feb 26 15:00:31 wirenboard-AWWCDXFH wb-mqtt-serial[24784]: DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 0a 03 04 00 07 00 00 f1 32

а попробуйте с параметром “min_read_registers”: 7 что был именно групповой запрос на чтение

можете показать групповой запрос на считывание всех регистров? и как ваше устройство обрабатывает ответ…

когда ждать ответа?

Описал в шаблоне как:

        "min_read_registers": 8,

В debug:

Feb 28 13:43:21 wirenboard-AWWCDXFH wb-mqtt-serial[19649]: DEBUG: [port] /dev/ttyRS485-2: Write: 0a 03 00 00 00 06 c4 b3
Feb 28 13:43:21 wirenboard-AWWCDXFH wb-mqtt-serial[19649]: DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 0a 03 0c 00 01 00 02 00 03 00 04 00 05 00 06 97 28

Ну и соответственно:
Screenshot_20240228_164607

Чтение - ожидаемое:

modbus_client --debug -mrtu -pnone -s2 -b9600 /dev/ttyRS485-2 -a10 -t0x3 -r0 -c 6
Opening /dev/ttyRS485-2 at 9600 bauds (N, 8, 2)
[0A][03][00][00][00][06][C4][B3]
Waiting for a confirmation...
<0A><03><0C><00><01><00><02><00><06><00><04><00><05><00><06><C2><28>
SUCCESS: read 6 of elements:
	Data: 0x0001 0x0002 0x0006 0x0004 0x0005 0x0006

Так и у меня данные из порта корректно считываются. Но в устройстве обновляется только первое значение, остальные красные…
Может вы cможете удаленно подключиться?

Я не смог воспроизвести некорректную работу.

Пока - не вижу даже логов.

Тут я вижу прочитанные результаты.

какие логи (чтобы было быстрее - напишите команды)?
лог порта ничего не дает

root@wirenboard-AORUHX7T:~# modbus_client --debug -mrtu -pnone -s1 -b115200 /dev                                                                                                                                                                             /ttyRS485-1 -a128 -t0x3 -r0 -c6
Opening /dev/ttyRS485-1 at 115200 bauds (N, 8, 1)
[80][03][00][00][00][06][DB][D9]
Waiting for a confirmation...
<80><03><0C><00><11><00><00><00><00><00><00><00><FB><00><00><F3><DD>
SUCCESS: read 6 of elements:
        Data: 0x0011 0x0000 0x0000 0x0000 0x00fb 0x0000

красным выделено то, что не обновляется. Если параметры, выделенные красным цветом изменить в приборе, на панели они не меняются (верные значения отображает только 1 параметр)

Не воспроизводится. Написал инкремент значений - они инкрементятся ожидаемо.
Поэтому - выложите debug лог wb-mqtt-serial где видно несколько чтений, как минимум.

29-02-2024 15:19:37.686	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190487836: Wait until 190487836
29-02-2024 15:19:37.686	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 624
29-02-2024 15:19:37.686	DEBUG: [register] new val for <modbus:0:holding: 0>: 270
29-02-2024 15:19:37.682	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 70 03 94 03 8e 03 87 03 83 03 7e 84 f3
29-02-2024 15:19:37.132	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:37.126	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19
29-02-2024 15:19:37.126	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
29-02-2024 15:19:37.126	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190487275: Wait until 190487275
29-02-2024 15:19:37.125	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 623
29-02-2024 15:19:37.125	DEBUG: [register] new val for <modbus:0:holding: 0>: 26f
29-02-2024 15:19:37.124	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 6f 03 93 03 8d 03 86 03 82 03 7d d9 16
29-02-2024 15:19:36.579	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:36.574	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19
29-02-2024 15:19:36.574	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
29-02-2024 15:19:36.574	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190486723: Wait until 190486723
29-02-2024 15:19:36.573	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 622
29-02-2024 15:19:36.573	DEBUG: [register] new val for <modbus:0:holding: 0>: 26e
29-02-2024 15:19:36.570	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 6e 03 92 03 8c 03 85 03 81 03 7c b5 7a
29-02-2024 15:19:36.017	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:36.015	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19
29-02-2024 15:19:36.015	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
29-02-2024 15:19:36.015	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190486164: Wait until 190486164
29-02-2024 15:19:36.014	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 621
29-02-2024 15:19:36.014	DEBUG: [register] new val for <modbus:0:holding: 0>: 26d
29-02-2024 15:19:36.013	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 6d 03 91 03 8b 03 84 03 80 03 7b f5 cc
29-02-2024 15:19:35.459	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:35.459	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19
29-02-2024 15:19:35.459	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
29-02-2024 15:19:35.459	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190485606: Wait until 190485606
29-02-2024 15:19:35.459	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 620
29-02-2024 15:19:35.459	DEBUG: [register] new val for <modbus:0:holding: 0>: 26c
29-02-2024 15:19:35.455	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 6c 03 90 03 8a 03 83 03 7f 03 7a a8 50
29-02-2024 15:19:34.903	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:34.900	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19
29-02-2024 15:19:34.900	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
29-02-2024 15:19:34.900	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190485050: Wait until 190485050
29-02-2024 15:19:34.900	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 619
29-02-2024 15:19:34.900	DEBUG: [register] new val for <modbus:0:holding: 0>: 26b
29-02-2024 15:19:34.899	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 6b 03 8f 03 89 03 82 03 7e 03 79 21 15
29-02-2024 15:19:34.348	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:34.348	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19
29-02-2024 15:19:34.348	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
29-02-2024 15:19:34.348	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190484495: Wait until 190484495
29-02-2024 15:19:34.348	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 618
29-02-2024 15:19:34.348	DEBUG: [register] new val for <modbus:0:holding: 0>: 26a
29-02-2024 15:19:34.348	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 6a 03 8e 03 88 03 81 03 7d 03 78 4d 79
29-02-2024 15:19:33.795	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:33.795	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19
29-02-2024 15:19:33.795	DEBUG: [port] /dev/ttyRS485-1: Sleep 10 us
29-02-2024 15:19:33.795	DEBUG: [serial client] </dev/ttyRS485-1 115200 8 N 1>190483941: Wait until 190483941
29-02-2024 15:19:33.795	DEBUG: [serial port driver] channel '0' of device 'wb-modbus-0-1' <-- 617
29-02-2024 15:19:33.795	DEBUG: [register] new val for <modbus:0:holding: 0>: 269
29-02-2024 15:19:33.795	DEBUG: [port] /dev/ttyRS485-1: ReadFrame: 00 03 0c 02 69 03 8d 03 87 03 80 03 7c 03 77 85 c9
29-02-2024 15:19:33.242	DEBUG: [port] /dev/ttyRS485-1: Sleep 695 us
29-02-2024 15:19:33.242	DEBUG: [port] /dev/ttyRS485-1: Write: 00 03 00 00 00 06 c4 19

image

wb-mqtt-serial не тестировался для работы с широковещательным адресом. Ну и по спецификации - только в диапазоне 1-247. Поменяйте адрес устройства.