MODBUS data receiving problem?


Thread Starter


I am now developing a modbus/ascii on my device and connect a inverter which supports modbus/ascii/rtu.
when I receiving the data from inverter, it usually got a wrong data, especially the last byte! I had measured data from inverter and saw it is wrong, however someone use advantech's module and no such error. I want to ask if MODBUS has any error detection/correction to recovery the errors?

Error detection measures:
MODBUS ASCII uses parity for each byte and LRC for the entire message.
MODBUS RTU uses CRC for the entire message.
No error correction - a bad message should be discarded.
All is documented in PI-MBUS-300 available in PDF format at

Meir Saggie
A modbus data analyzer program or modbus simulation program is a most when troubleshooting this kind of problems. Based on past experience, noise in the communications line can cause data errors. Bad communication devices can cause data errors too (short haul modems, protocol or media converters, etc) The device sending the data calculates a CRC(Modbus RTU) for the message and sends it at the end of the reply. The receiving device calculates the CRC of the message received and if it does not match the original CRC it just discards the data. Good luck in your troubleshooting.