Пробую воспроизвести:
Читаю значение:
modbus_client --debug -mtcp 10.0.0.79 -a1 -t 0x04 -r 10
Connecting to 10.0.0.79:502
[00][01][00][00][00][06][01][04][00][0A][00][01]
Waiting for a confirmation...
<00><01><00><00><00><05><01><04><02><00><18>
SUCCESS: read 1 of elements:
Data: 0x0018
Применяю scale 10:
Читаю, ожидаю значение в десятичные 10 раз больше:
Получаю:
modbus_client --debug -mtcp 10.0.0.79 -a1 -t 0x04 -r 10
Connecting to 10.0.0.79:502
[00][01][00][00][00][06][01][04][00][0A][00][01]
Waiting for a confirmation...
<00><01><00><00><00><05><01><04><02><00><F4>
SUCCESS: read 1 of elements:
Data: 0x00f4
0x18*10 ~ 0xf4
Получил ожидаемое.