Basic Modbus Troubleshooting
When troubleshooting a Modbus setup ‘no-response’ errors can be the most difficult to troubleshoot because it means that no activity is being recognized by the device.
CRC errors are a bit easier to deal with because it usually means that the device is at least recognizing bit activity on the network line, however the bits probably make no sense to the device.
Exception errors are usually the easiest (or least difficult) problem to deal with because it usually means that the device is successfully communicating with the Modbus device.
An exception error indicates that a good packet with a successful CRC check was received. This generally means that communication is successful, but the controller is asking for something the Modbus device does not understand.
Errors and solutions.
- No-response errors:
- Check that communication parameters are correct (baud rate, etc).
- Check that the slave address matches.
- Check that Pre-Delay is at least 50 mS.
- Check wiring and power.
- Check for reversed polarity on RS485 lines. If uncertain, just try swapping them.
- Check to see that slave device is enabled for Modbus communication (many devices default to disabled).
- CRC errors:
- Check baud rate and character format.
- Check wiring – if everything else is correct, CRC errors mean noise on the line.
- Check for reversed polarity on RS485 lines. Reversed polarity often looks like just noise.
- Check to see that Pre-Delay is at least 50 mS.