Uncaught Throwable handling response

Hello. What does this error means after and before normal requests?

code 10:51:29 drivers.ModbusOverTCPDriver[Port2].ReadHoldingRegistersRequest Received message: [ 05 03 20 00 03 00 00 00 2A 00 6C 00 01 00 00 00 03 00 00 00 00 00 03 00 00 00 2A 00 6C 00 2C 00 00 00 03 7C DD ]
(T) 10:51:29 drivers.ModbusOverTCPDriver[Port2].ReadHoldingRegistersRequest Sending message: [ 05 03 02 BC 00 10 85 DE ]

ERROR 10:51:29 drivers.ModbusOverTCPDriver[Port2].ReadHoldingRegistersRequest Uncaught Throwable handling response. key=java.lang.Object@535cdd9c, req=[ ], rsp=[ 05 03 0C 00 00 00 00 00 00 03 E8 03 E8 00 01 B6 E7 ]

java.lang.ArrayIndexOutOfBoundsException

(T) 10:51:29 drivers.ModbusOverTCPDriver[Port2].ReadHoldingRegistersRequest Received message: [ 05 03 0C 00 00 00 00 00 00 03 E8 03 E8 00 01 B6 E7 ]
(T) 10:51:28 drivers.ModbusOverTCPDriver[Port2].ReadHoldingRegistersRequest Sending message: [ 05 03 02 CC 00 10 84 05 ][/code]

The device is Modbus RTU over TCP
Ignition 7.6.7 x64

Basically it means there was an error parsing the response from the device.

In this case the device seems to be sending back what might be the response for another request, or in any case, is sending back too few bytes for the request that was sent.

The request is asking for 16 registers starting at address 0x02CC, but the value response contains only 12 bytes, when it should contain 32.

[quote=“Kevin.Herron”]Basically it means there was an error parsing the response from the device.

In this case the device seems to be sending back what might be the response for another request, or in any case, is sending back too few bytes for the request that was sent.

The request is asking for 16 registers starting at address 0x02CC, but the value response contains only 12 bytes, when it should contain 32.[/quote]

Thanks, but why it can happens?
~ 50-100 good requests and responses and then 1 like this one.