ERROR CRC при работе с modbus_client

Не могу победить ошибку CRC при получении данных по Modbus с датчика WB-MS-THLS консольным клиентом modbus_client.

Дано: WirenBoard 5, датчик WB-MS-THLS, данные в web интерфейсе отображаются исправно.
Пытаюсь получить их консольно:

  1. Останавливаю /etc/init.d/wb-homa-modbus stop

  2. Пытаюсь получить из 128 холдинг регистра Modbus-адрес устройства (известно что он = 1)

    root@wirenboard:~# modbus_client --debug -mrtu /dev/ttyAPP1 -a1 -t3 -r128 b9600 d8 s2
    0x2070 0xabd0 0xabd0 Opening /dev/ttyAPP1 at 9600 bauds (E, 8, 1)
    [01][03][00][80][00][01][85][E2]
    Waiting for a confirmation…
    <01><00><02><00><01><79><00>
    ERROR CRC received 7900 != CRC calculated 79C0
    ERROR occured!

  3. Иду другим путем

    root@wirenboard:~# serial_tool -b 9600 -p N -d 8 -s 2 -t 1 /dev/ttyAPP1
    serial_tool on /dev/ttyAPP1: 9600 8N2.0
    Enter your commands below in HEX form.
    All characters but 0-9,a-f including spaces are ignored.
    Press Control-D or Control-C to leave the application.
    Press [Enter] to print received data

    [01][03][00][80][00][01][85][E2]
    << 01 03 02 00 01 79 84
    exiting

Почему возникает ошибка с CRC ?

Неправильно вызываете modbus_client.
Правильно

-b9600 -s2 -pnone

root@wirenboard:~# modbus_client --debug -mrtu /dev/ttyAPP1 -a1 -t3 -r128 -b9600 -s2 -pnone

Пробовал, не отрабатывает, выдает список параметров.

В вот так отработало:

root@wirenboard:~# modbus_client --debug -mrtu /dev/ttyAPP1 -a1 -t3 -r128 -s2 -pnone
Opening /dev/ttyAPP1 at 9600 bauds (N, 8, 2)
[01][03][00][80][00][01][85][E2]
Waiting for a confirmation...
<01><03><02><00><01><79><84>
SUCCESS: read 1 of elements:
Data: 0x0001

Какая-то проблема с параметром -b, он не задается.

Нужно обновить modbus_client. Я правда не уверен, что новый пакет есть в репозитории Wirenboard.
Пакет можно взять тут https://github.com/contactless/modbus-utils/releases .