
# Permission related
AUTH_ERROR = "AUTH_ERROR"
BAD_PASSWORD = "BAD_PASSWORD"

# Communicate related
BAD_PARAMS = "BAD_PARAMS"
PROTOCOL_ERROR = "PROTOCOL_ERROR"
UNKNOWN_COMMAND = "UNKNOWN_COMMAND"
UNKNOWN_ERROR = "UNKNOWN_ERROR"

# Operation related
ALREADY_RUNNING = "ALREADY_RUNNING"
NOT_RUNNING = "NOT_RUNNING"
NOT_SUPPORT = "NOT_SUPPORT"
NO_TASK = "NO_TASK"
NO_RESPONSE = "NO_RESPONSE"
DEVICE_ERROR = "DEVICE_ERROR"
RESOURCE_BUSY = "RESOURCE_BUSY"
HARDWARE_ERROR = "HARDWARE_ERROR"
HARDWARE_FAILURE = "HARDWARE_FAILURE"
TIMEOUT = "TIMEOUT"

# Date related
NOT_FOUND = "NOT_FOUND"
NOT_EXIST = "NOT_EXIST"
TOO_LARGE = "TOO_LARGE"
NOT_MATCH = "NOT_MATCH"
BAD_FILE_FORMAT = "BAD_FILE_FORMAT"
FILE_BROKEN = "FILE_BROKEN"

SUBSYSTEM_ERROR = "SUBSYSTEM_ERROR"

EXEC_MAINBOARD_OFFLINE = "MAINBOARD_OFFLINE"
EXEC_OPERATION_ERROR = "OPERATION_ERROR"
EXEC_HEAD_OFFLINE = "HEAD_OFFLINE"
EXEC_UNKNOWN_HEAD = "UNKNOWN_HEAD"
EXEC_HEAD_RESET = "HEAD_RESET"
EXEC_TYPE_ERROR = "TYPE_ERROR"

EXEC_HEAD_ERROR = "HEAD_ERROR"
EXEC_HOME_FAILED = "HOME_FAILED"

EXEC_HEAD_RESET = "RESET"
EXEC_HEAD_CALIBRATING = "CALIBRATING"
EXEC_HEAD_SHAKE = "SHAKE"
EXEC_HEAD_TILT = "TILT"
EXEC_HEAD_HARDWARE_FAILURE = HARDWARE_FAILURE
EXEC_HEAD_FAN_FAILURE = "FAN_FAILURE"
EXEC_HEAD_INTERLOCK_TRIGGERED = "INTLK_TRIG"

EXEC_INTERNAL_ERROR = "INTERNAL_ERROR"
EXEC_BAD_COMMAND = "BAD_COMMAND"

EXEC_CONVERGENCE_FAILED = "CONVERGENCE_FAILED"
EXEC_ZPROBE_ERROR = "ZPROBE_ERROR"

EXEC_FILAMENT_RUNOUT = "FILAMENT_RUNOUT"

EXEC_SENSOR_ERROR = "SENSOR_ERROR"
