Error Codes

Overview

These identifiers provide a common set of error codes that all packages can agree on.

It doesn't preclude them defining their own error return system, but this is a preferable system to use to help error support be as general as possible.

We try and conform to the ANSI/POSIX error code format, namely starting with the character 'E'

Attention
All error codes will be returned as negative values. That means a function does not return ERR_PERM but it returns -ERR_PERM. That means you simply need to check for negative return values to detect errors.
+ Collaboration diagram for Error Codes:

Modules

 Additional errors used by networking
 
 Additional user defined error codes
 
 CANopen Data link layer errors
 
 CANopen LSS transfer errors
 
 CANopen SDO transfer errors
 
 CANopen application layer errors
 
 CANopen device profile specific errors
 
 Common error codes
 
 Generic communication protocol specific error codes
 
 IPC/network software -- argument errors
 
 IPC/network software -- operational errors
 
 Non-blocking and interrupt i/o