[docs]
class ILError(Exception):
"""IngeniaLink generic error."""
pass
[docs]
class ILConfigurationError(ILError):
"""IngeniaLink configuration error."""
pass
[docs]
class ILUDPException(ILError):
"""Ingenialink exception on UDP action."""
pass
[docs]
class ILFirmwareLoadError(ILError):
"""IngeniaLink error while loading a firmware."""
pass
[docs]
class ILValueError(ILError):
"""IngeniaLink value error."""
pass
[docs]
class ILTimeoutError(ILError):
"""IngeniaLink timeout error."""
pass
[docs]
class ILAccessError(ILError):
"""IngeniaLink access error."""
pass
[docs]
class ILStateError(ILError):
"""IngeniaLink state error."""
pass
[docs]
class ILIOError(ILError):
"""IngeniaLink I/O error."""
pass
[docs]
class ILWrongRegisterError(ILError):
"""IngeniaLink Wrong register error."""
pass
[docs]
class ILRegisterNotFoundError(ILError):
"""IngeniaLink register not found in dictionary."""
pass
[docs]
class ILWrongCRCError(ILError):
"""IngeniaLink Wrong CRC error."""
pass
[docs]
class ILNACKError(ILError):
"""IngeniaLink NACK error."""
def __init__(self, err_code: int):
self.error_code = err_code
super().__init__(f"Communications error (NACK -> 0x{err_code:08X})")
[docs]
class ILDictionaryParseError(ILError):
"""IngeniaLink dictionary parse error."""
pass
[docs]
class ILWrongWorkingCount(ILError):
"""PDOs process data working count expected and received differ."""
pass