Exception Error Codes
The PLC may respond with an exception error if it is unable to comply with the poll or command that the Modbus Server sent to the PLC. Following is a list of Exception Codes supported by the Modbus protocol. The Exception code descriptions may or may not be supported by all devices.
Exception Code 01 (Illegal Function)
This exception code indicates that the slave device cannot perform the particular Modbus function that was issued by the master node because either the slave device does not understand the function or it is unable to execute the function.
Exception Code 02 (Illegal Data Address)
This exception code indicates that the PLC (slave device) rejected the message sent from the PC because the address referenced in the message is not allowed.
Exception Code 03 (Illegal Data Value)
This exception code indicates that the data which is being read from or written to, in the slave device, does not match the expected data type for that register.
Exception Code 04 (Failure in Device)
This exception code indicates that an abortive or irrecoverable error occurred in the slave device.
Exception Code 05 (Acknowledge)
This exception code indicates that the slave device has received a long duration program command.
Exception Code 06 (Busy, Rejected Message)
This exception code indicates that the slave device received and rejected a message because the Slave Device is busy processing a long duration program command.
Exception Code 07 (Negative Acknowledge)
This exception code indicates that the program function cannot be performed.
Other Exception Codes
Exception Codes beyond 07 are not defined. Contact the Manufacturer of the Slave Device for a description of Exception Codes.
https://wdnresource.wonderware.com/supp ... 000877.htm“Slave xx reported an Illegal Data Value”
(The xx refers to the node address of the slave device.) This error message means that the data which is being read from or written to a register in the slave device does not match the expected data type for that register. That is, the data is not the same data type that the Modbus or Modbus Plus I/O Server expects for that register.
For example, if a I/O Server topic is defined with a Slave Type of “584/984” and the I/O Server tries to write to Coil 9999, but the data from the tagname is something other than a discrete data type, then the error “Slave xx reported an Illegal Data Value” will result. This error could also occur if the Slave Type selected is not correct for the type of PLC that is being advised. For example, if you try to write data to a Modbus 984 PLC, but the Slave Type selected was “484”, then this error will result.
https://wdnresource.wonderware.com/supp ... lving4.htm