using System.ComponentModel;
namespace AMWD.Protocols.Modbus.Common
{
///
/// List of Modbus exception codes.
///
public enum ModbusErrorCode : byte
{
///
/// No error.
///
[Description("No error")]
NoError = 0x00,
///
/// Function code not valid/supported.
///
[Description("Illegal function")]
IllegalFunction = 0x01,
///
/// Data address not in range.
///
[Description("Illegal data address")]
IllegalDataAddress = 0x02,
///
/// The data value to set is not valid.
///
[Description("Illegal data value")]
IllegalDataValue = 0x03,
///
/// Slave device produced a failure.
///
[Description("Slave device failure")]
SlaveDeviceFailure = 0x04,
///
/// Ack
///
[Description("Acknowledge")]
Acknowledge = 0x05,
///
/// Slave device is working on another task.
///
[Description("Slave device busy")]
SlaveDeviceBusy = 0x06,
///
/// nAck
///
[Description("Negative acknowledge")]
NegativeAcknowledge = 0x07,
///
/// Momory Parity Error.
///
[Description("Memory parity error")]
MemoryParityError = 0x08,
///
/// Gateway of the device could not be reached.
///
[Description("Gateway path unavailable")]
GatewayPath = 0x0A,
///
/// Gateway device did no respond.
///
[Description("Gateway target device failed to respond")]
GatewayTargetDevice = 0x0B
}
}