Skip to main content

api_reference_dynamixel_error

  • Dynamixel error module defines error codes, exception classes, and utility functions for handling errors in the DYNAMIXEL Easy SDK.

Exception Class

DxlRuntimeError

MethodDescription
DxlRuntimeError(dxl_error: DxlError)Initializes the DxlRuntimeError with a DxlError.
DxlRuntimeError(msg: str)Initializes the DxlRuntimeError with a message.

Enum Class

DxlError

Enum MemberValue
SDK_COMM_SUCCESS0
SDK_COMM_PORT_BUSY-1000
SDK_COMM_TX_FAIL-1001
SDK_COMM_RX_FAIL-1002
SDK_COMM_TX_ERROR-2000
SDK_COMM_RX_WAITING-3000
SDK_COMM_RX_TIMEOUT-3001
SDK_COMM_RX_CORRUPT-3002
SDK_COMM_NOT_AVAILABLE-9000
SDK_ERRNUM_RESULT_FAIL1
SDK_ERRNUM_INSTRUCTION2
SDK_ERRNUM_CRC3
SDK_ERRNUM_DATA_RANGE4
SDK_ERRNUM_DATA_LENGTH5
SDK_ERRNUM_DATA_LIMIT6
SDK_ERRNUM_ACCESS7
EASY_SDK_FUNCTION_NOT_SUPPORTED11
EASY_SDK_TORQUE_STATUS_MISMATCH12
EASY_SDK_OPERATING_MODE_MISMATCH13
EASY_SDK_ADD_PARAM_FAIL21
EASY_SDK_COMMAND_IS_EMPTY22
EASY_SDK_DUPLICATE_ID23
EASY_SDK_FAIL_TO_GET_DATA24

Module Function

getErrorMessage(dxl_error)

  • Returns the error message corresponding to the given DxlError.
ParameterReturn Message
DxlError.SDK_COMM_SUCCESS[TxRxResult] Communication success!
DxlError.SDK_COMM_PORT_BUSY[TxRxResult] Port is in use!
DxlError.SDK_COMM_TX_FAIL[TxRxResult] Failed to transmit instruction packet
DxlError.SDK_COMM_RX_FAIL[TxRxResult] Failed to get status packet from device
DxlError.SDK_COMM_TX_ERROR[TxRxResult] Incorrect instruction packet
DxlError.SDK_COMM_RX_WAITING[TxRxResult] Receiving status packet
DxlError.SDK_COMM_RX_TIMEOUT[TxRxResult] No status packet received
DxlError.SDK_COMM_RX_CORRUPT[TxRxResult] Incorrect status packet
DxlError.SDK_COMM_NOT_AVAILABLE[TxRxResult] Protocol does not support this function
DxlError.SDK_ERRNUM_RESULT_FAIL[RxPacketError] Failed to process the instruction packet!
DxlError.SDK_ERRNUM_INSTRUCTION[RxPacketError] Undefined instruction or incorrect instruction!
DxlError.SDK_ERRNUM_CRC[RxPacketError] CRC doesn't match!
DxlError.SDK_ERRNUM_DATA_RANGE[RxPacketError] The data value is out of range!
DxlError.SDK_ERRNUM_DATA_LENGTH[RxPacketError] The data length does not match as expected!
DxlError.SDK_ERRNUM_DATA_LIMIT[RxPacketError] The data value exceeds the limit value!
DxlError.SDK_ERRNUM_ACCESS[RxPacketError] Writing or Reading is not available to target address!
DxlError.EASY_SDK_FUNCTION_NOT_SUPPORTED[EasySDKUsageError] Function not supported
DxlError.EASY_SDK_TORQUE_STATUS_MISMATCH[EasySDKUsageError] Motor torque status mismatch
DxlError.EASY_SDK_OPERATING_MODE_MISMATCH[EasySDKUsageError] Operating mode mismatch
DxlError.EASY_SDK_ADD_PARAM_FAIL[EasySDKUsageError] Failed to add parameter
DxlError.EASY_SDK_COMMAND_IS_EMPTY[EasySDKUsageError] No command to execute
DxlError.EASY_SDK_DUPLICATE_ID[EasySDKUsageError] Duplicate ID in staged commands
DxlError.EASY_SDK_FAIL_TO_GET_DATA[EasySDKUsageError] Failed to get data from motor