А не может так случиться, что читаете по адресу, смещённому на +1 или -1?

Недавно подключал расходомер к облаку, а перед этим к компьютеру с ModbusPull - измеренный расход в одном случае был в регистре 0, а в другом - в регистре 1.