Error Codes Reference¶
This section lists various error code constants defined in ESP-IDF.
For general information about error codes in ESP-IDF, see Error Handling.
ESP_FAIL
(-1): Generic esp_err_t code indicating failure
ESP_OK
(0): esp_err_t value indicating success (no error)
ESP_ERR_NO_MEM
(0x101): Out of memory
ESP_ERR_INVALID_ARG
(0x102): Invalid argument
ESP_ERR_INVALID_STATE
(0x103): Invalid state
ESP_ERR_INVALID_SIZE
(0x104): Invalid size
ESP_ERR_NOT_FOUND
(0x105): Requested resource not found
ESP_ERR_NOT_SUPPORTED
(0x106): Operation or feature not supported
ESP_ERR_TIMEOUT
(0x107): Operation timed out
ESP_ERR_INVALID_RESPONSE
(0x108): Received response was invalid
ESP_ERR_INVALID_CRC
(0x109): CRC or checksum was invalid
ESP_ERR_INVALID_VERSION
(0x10a): Version was invalid
ESP_ERR_INVALID_MAC
(0x10b): MAC address was invalid
ESP_ERR_NOT_FINISHED
(0x201)
ESP_ERR_NVS_BASE
(0x1100): Starting number of error codes
ESP_ERR_NVS_NOT_INITIALIZED
(0x1101): The storage driver is not initialized
ESP_ERR_NVS_NOT_FOUND
(0x1102): Id namespace doesn’t exist yet and mode is NVS_READONLY
ESP_ERR_NVS_TYPE_MISMATCH
(0x1103): The type of set or get operation doesn’t match the type of value stored in NVS
ESP_ERR_NVS_READ_ONLY
(0x1104): Storage handle was opened as read only
ESP_ERR_NVS_NOT_ENOUGH_SPACE
(0x1105): There is not enough space in the underlying storage to save the value
ESP_ERR_NVS_INVALID_NAME
(0x1106): Namespace name doesn’t satisfy constraints
ESP_ERR_NVS_INVALID_HANDLE
(0x1107): Handle has been closed or is NULL
ESP_ERR_NVS_REMOVE_FAILED
(0x1108): The value wasn’t updated because flash write operation has failed. The value was written however, and update will be finished after re-initialization of nvs, provided that flash operation doesn’t fail again.
ESP_ERR_NVS_KEY_TOO_LONG
(0x1109): Key name is too long
ESP_ERR_NVS_PAGE_FULL
(0x110a): Internal error; never returned by nvs API functions
ESP_ERR_NVS_INVALID_STATE
(0x110b): NVS is in an inconsistent state due to a previous error. Call nvs_flash_init and nvs_open again, then retry.
ESP_ERR_NVS_INVALID_LENGTH
(0x110c): String or blob length is not sufficient to store data
ESP_ERR_NVS_NO_FREE_PAGES
(0x110d): NVS partition doesn’t contain any empty pages. This may happen if NVS partition was truncated. Erase the whole partition and call nvs_flash_init again.
ESP_ERR_NVS_VALUE_TOO_LONG
(0x110e): String or blob length is longer than supported by the implementation
ESP_ERR_NVS_PART_NOT_FOUND
(0x110f): Partition with specified name is not found in the partition table
ESP_ERR_NVS_NEW_VERSION_FOUND
(0x1110): NVS partition contains data in new format and cannot be recognized by this version of code
ESP_ERR_NVS_XTS_ENCR_FAILED
(0x1111): XTS encryption failed while writing NVS entry
ESP_ERR_NVS_XTS_DECR_FAILED
(0x1112): XTS decryption failed while reading NVS entry
ESP_ERR_NVS_XTS_CFG_FAILED
(0x1113): XTS configuration setting failed
ESP_ERR_NVS_XTS_CFG_NOT_FOUND
(0x1114): XTS configuration not found
ESP_ERR_NVS_ENCR_NOT_SUPPORTED
(0x1115): NVS encryption is not supported in this version
ESP_ERR_NVS_KEYS_NOT_INITIALIZED
(0x1116): NVS key partition is uninitialized
ESP_ERR_NVS_CORRUPT_KEY_PART
(0x1117): NVS key partition is corrupt
ESP_ERR_NVS_CONTENT_DIFFERS
(0x1118): Internal error; never returned by nvs API functions. NVS key is different in comparison
ESP_ERR_NVS_WRONG_ENCRYPTION
(0x1119): NVS partition is marked as encrypted with generic flash encryption. This is forbidden since the NVS encryption works differently.
ESP_ERR_ULP_BASE
(0x1200): Offset for ULP-related error codes
ESP_ERR_ULP_SIZE_TOO_BIG
(0x1201): Program doesn’t fit into RTC memory reserved for the ULP
ESP_ERR_ULP_INVALID_LOAD_ADDR
(0x1202): Load address is outside of RTC memory reserved for the ULP
ESP_ERR_ULP_DUPLICATE_LABEL
(0x1203): More than one label with the same number was defined
ESP_ERR_ULP_UNDEFINED_LABEL
(0x1204): Branch instructions references an undefined label
ESP_ERR_ULP_BRANCH_OUT_OF_RANGE
(0x1205): Branch target is out of range of B instruction (try replacing with BX)
ESP_ERR_OTA_BASE
(0x1500): Base error code for ota_ops api
ESP_ERR_OTA_PARTITION_CONFLICT
(0x1501): Error if request was to write or erase the current running partition
ESP_ERR_OTA_SELECT_INFO_INVALID
(0x1502): Error if OTA data partition contains invalid content
ESP_ERR_OTA_VALIDATE_FAILED
(0x1503): Error if OTA app image is invalid
ESP_ERR_OTA_SMALL_SEC_VER
(0x1504): Error if the firmware has a secure version less than the running firmware.
ESP_ERR_OTA_ROLLBACK_FAILED
(0x1505): Error if flash does not have valid firmware in passive partition and hence rollback is not possible
ESP_ERR_OTA_ROLLBACK_INVALID_STATE
(0x1506): Error if current active firmware is still marked in pending validation state (ESP_OTA_IMG_PENDING_VERIFY), essentially first boot of firmware image post upgrade and hence firmware upgrade is not possible
ESP_ERR_EFUSE
(0x1600): Base error code for efuse api.
ESP_OK_EFUSE_CNT
(0x1601): OK the required number of bits is set.
ESP_ERR_EFUSE_CNT_IS_FULL
(0x1602): Error field is full.
ESP_ERR_EFUSE_REPEATED_PROG
(0x1603): Error repeated programming of programmed bits is strictly forbidden.
ESP_ERR_CODING
(0x1604): Error while a encoding operation.
ESP_ERR_NOT_ENOUGH_UNUSED_KEY_BLOCKS
(0x1605): Error not enough unused key blocks available
ESP_ERR_IMAGE_BASE
(0x2000)
ESP_ERR_IMAGE_FLASH_FAIL
(0x2001)
ESP_ERR_IMAGE_INVALID
(0x2002)
ESP_ERR_WIFI_BASE
(0x3000): Starting number of WiFi error codes
ESP_ERR_WIFI_NOT_INIT
(0x3001): WiFi driver was not installed by esp_wifi_init
ESP_ERR_WIFI_NOT_STARTED
(0x3002): WiFi driver was not started by esp_wifi_start
ESP_ERR_WIFI_NOT_STOPPED
(0x3003): WiFi driver was not stopped by esp_wifi_stop
ESP_ERR_WIFI_IF
(0x3004): WiFi interface error
ESP_ERR_WIFI_MODE
(0x3005): WiFi mode error
ESP_ERR_WIFI_STATE
(0x3006): WiFi internal state error
ESP_ERR_WIFI_CONN
(0x3007): WiFi internal control block of station or soft-AP error
ESP_ERR_WIFI_NVS
(0x3008): WiFi internal NVS module error
ESP_ERR_WIFI_MAC
(0x3009): MAC address is invalid
ESP_ERR_WIFI_SSID
(0x300a): SSID is invalid
ESP_ERR_WIFI_PASSWORD
(0x300b): Password is invalid
ESP_ERR_WIFI_TIMEOUT
(0x300c): Timeout error
ESP_ERR_WIFI_WAKE_FAIL
(0x300d): WiFi is in sleep state(RF closed) and wakeup fail
ESP_ERR_WIFI_WOULD_BLOCK
(0x300e): The caller would block
ESP_ERR_WIFI_NOT_CONNECT
(0x300f): Station still in disconnect status
ESP_ERR_WIFI_POST
(0x3012): Failed to post the event to WiFi task
ESP_ERR_WIFI_INIT_STATE
(0x3013): Invalid WiFi state when init/deinit is called
ESP_ERR_WIFI_STOP_STATE
(0x3014): Returned when WiFi is stopping
ESP_ERR_WIFI_NOT_ASSOC
(0x3015): The WiFi connection is not associated
ESP_ERR_WIFI_TX_DISALLOW
(0x3016): The WiFi TX is disallowed
ESP_ERR_WIFI_REGISTRAR
(0x3033): WPS registrar is not supported
ESP_ERR_WIFI_WPS_TYPE
(0x3034): WPS type error
ESP_ERR_WIFI_WPS_SM
(0x3035): WPS state machine is not initialized
ESP_ERR_ESPNOW_BASE
(0x3064): ESPNOW error number base.
ESP_ERR_ESPNOW_NOT_INIT
(0x3065): ESPNOW is not initialized.
ESP_ERR_ESPNOW_ARG
(0x3066): Invalid argument
ESP_ERR_ESPNOW_NO_MEM
(0x3067): Out of memory
ESP_ERR_ESPNOW_FULL
(0x3068): ESPNOW peer list is full
ESP_ERR_ESPNOW_NOT_FOUND
(0x3069): ESPNOW peer is not found
ESP_ERR_ESPNOW_INTERNAL
(0x306a): Internal error
ESP_ERR_ESPNOW_EXIST
(0x306b): ESPNOW peer has existed
ESP_ERR_ESPNOW_IF
(0x306c): Interface error
ESP_ERR_DPP_FAILURE
(0x3097): Generic failure during DPP Operation
ESP_ERR_DPP_TX_FAILURE
(0x3098): DPP Frame Tx failed OR not Acked
ESP_ERR_DPP_INVALID_ATTR
(0x3099): Encountered invalid DPP Attribute
ESP_ERR_MESH_BASE
(0x4000): Starting number of MESH error codes
ESP_ERR_MESH_WIFI_NOT_START
(0x4001)
ESP_ERR_MESH_NOT_INIT
(0x4002)
ESP_ERR_MESH_NOT_CONFIG
(0x4003)
ESP_ERR_MESH_NOT_START
(0x4004)
ESP_ERR_MESH_NOT_SUPPORT
(0x4005)
ESP_ERR_MESH_NOT_ALLOWED
(0x4006)
ESP_ERR_MESH_NO_MEMORY
(0x4007)
ESP_ERR_MESH_ARGUMENT
(0x4008)
ESP_ERR_MESH_EXCEED_MTU
(0x4009)
ESP_ERR_MESH_TIMEOUT
(0x400a)
ESP_ERR_MESH_DISCONNECTED
(0x400b)
ESP_ERR_MESH_QUEUE_FAIL
(0x400c)
ESP_ERR_MESH_QUEUE_FULL
(0x400d)
ESP_ERR_MESH_NO_PARENT_FOUND
(0x400e)
ESP_ERR_MESH_NO_ROUTE_FOUND
(0x400f)
ESP_ERR_MESH_OPTION_NULL
(0x4010)
ESP_ERR_MESH_OPTION_UNKNOWN
(0x4011)
ESP_ERR_MESH_XON_NO_WINDOW
(0x4012)
ESP_ERR_MESH_INTERFACE
(0x4013)
ESP_ERR_MESH_DISCARD_DUPLICATE
(0x4014)
ESP_ERR_MESH_DISCARD
(0x4015)
ESP_ERR_MESH_VOTING
(0x4016)
ESP_ERR_MESH_XMIT
(0x4017)
ESP_ERR_MESH_QUEUE_READ
(0x4018)
ESP_ERR_MESH_PS
(0x4019)
ESP_ERR_MESH_RECV_RELEASE
(0x401a)
ESP_ERR_ESP_NETIF_BASE
(0x5000)
ESP_ERR_ESP_NETIF_INVALID_PARAMS
(0x5001)
ESP_ERR_ESP_NETIF_IF_NOT_READY
(0x5002)
ESP_ERR_ESP_NETIF_DHCPC_START_FAILED
(0x5003)
ESP_ERR_ESP_NETIF_DHCP_ALREADY_STARTED
(0x5004)
ESP_ERR_ESP_NETIF_DHCP_ALREADY_STOPPED
(0x5005)
ESP_ERR_ESP_NETIF_NO_MEM
(0x5006)
ESP_ERR_ESP_NETIF_DHCP_NOT_STOPPED
(0x5007)
ESP_ERR_ESP_NETIF_DRIVER_ATTACH_FAILED
(0x5008)
ESP_ERR_ESP_NETIF_INIT_FAILED
(0x5009)
ESP_ERR_ESP_NETIF_DNS_NOT_CONFIGURED
(0x500a)
ESP_ERR_FLASH_BASE
(0x6000): Starting number of flash error codes
ESP_ERR_FLASH_OP_FAIL
(0x6001)
ESP_ERR_FLASH_OP_TIMEOUT
(0x6002)
ESP_ERR_FLASH_NOT_INITIALISED
(0x6003)
ESP_ERR_FLASH_UNSUPPORTED_HOST
(0x6004)
ESP_ERR_FLASH_UNSUPPORTED_CHIP
(0x6005)
ESP_ERR_FLASH_PROTECTED
(0x6006)
ESP_ERR_HTTP_BASE
(0x7000): Starting number of HTTP error codes
ESP_ERR_HTTP_MAX_REDIRECT
(0x7001): The error exceeds the number of HTTP redirects
ESP_ERR_HTTP_CONNECT
(0x7002): Error open the HTTP connection
ESP_ERR_HTTP_WRITE_DATA
(0x7003): Error write HTTP data
ESP_ERR_HTTP_FETCH_HEADER
(0x7004): Error read HTTP header from server
ESP_ERR_HTTP_INVALID_TRANSPORT
(0x7005): There are no transport support for the input scheme
ESP_ERR_HTTP_CONNECTING
(0x7006): HTTP connection hasn’t been established yet
ESP_ERR_HTTP_EAGAIN
(0x7007): Mapping of errno EAGAIN to esp_err_t
ESP_ERR_ESP_TLS_BASE
(0x8000): Starting number of ESP-TLS error codes
ESP_ERR_ESP_TLS_CANNOT_RESOLVE_HOSTNAME
(0x8001): Error if hostname couldn’t be resolved upon tls connection
ESP_ERR_ESP_TLS_CANNOT_CREATE_SOCKET
(0x8002): Failed to create socket
ESP_ERR_ESP_TLS_UNSUPPORTED_PROTOCOL_FAMILY
(0x8003): Unsupported protocol family
ESP_ERR_ESP_TLS_FAILED_CONNECT_TO_HOST
(0x8004): Failed to connect to host
ESP_ERR_ESP_TLS_SOCKET_SETOPT_FAILED
(0x8005): failed to set socket option
ESP_ERR_MBEDTLS_CERT_PARTLY_OK
(0x8006): mbedtls parse certificates was partly successful
ESP_ERR_MBEDTLS_CTR_DRBG_SEED_FAILED
(0x8007): mbedtls api returned error
ESP_ERR_MBEDTLS_SSL_SET_HOSTNAME_FAILED
(0x8008): mbedtls api returned error
ESP_ERR_MBEDTLS_SSL_CONFIG_DEFAULTS_FAILED
(0x8009): mbedtls api returned error
ESP_ERR_MBEDTLS_SSL_CONF_ALPN_PROTOCOLS_FAILED
(0x800a): mbedtls api returned error
ESP_ERR_MBEDTLS_X509_CRT_PARSE_FAILED
(0x800b): mbedtls api returned error
ESP_ERR_MBEDTLS_SSL_CONF_OWN_CERT_FAILED
(0x800c): mbedtls api returned error
ESP_ERR_MBEDTLS_SSL_SETUP_FAILED
(0x800d): mbedtls api returned error
ESP_ERR_MBEDTLS_SSL_WRITE_FAILED
(0x800e): mbedtls api returned error
ESP_ERR_MBEDTLS_PK_PARSE_KEY_FAILED
(0x800f): mbedtls api returned failed
ESP_ERR_MBEDTLS_SSL_HANDSHAKE_FAILED
(0x8010): mbedtls api returned failed
ESP_ERR_MBEDTLS_SSL_CONF_PSK_FAILED
(0x8011): mbedtls api returned failed
ESP_ERR_ESP_TLS_CONNECTION_TIMEOUT
(0x8012): new connection in esp_tls_low_level_conn connection timeouted
ESP_ERR_WOLFSSL_SSL_SET_HOSTNAME_FAILED
(0x8013): wolfSSL api returned error
ESP_ERR_WOLFSSL_SSL_CONF_ALPN_PROTOCOLS_FAILED
(0x8014): wolfSSL api returned error
ESP_ERR_WOLFSSL_CERT_VERIFY_SETUP_FAILED
(0x8015): wolfSSL api returned error
ESP_ERR_WOLFSSL_KEY_VERIFY_SETUP_FAILED
(0x8016): wolfSSL api returned error
ESP_ERR_WOLFSSL_SSL_HANDSHAKE_FAILED
(0x8017): wolfSSL api returned failed
ESP_ERR_WOLFSSL_CTX_SETUP_FAILED
(0x8018): wolfSSL api returned failed
ESP_ERR_WOLFSSL_SSL_SETUP_FAILED
(0x8019): wolfSSL api returned failed
ESP_ERR_WOLFSSL_SSL_WRITE_FAILED
(0x801a): wolfSSL api returned failed
ESP_ERR_ESP_TLS_SE_FAILED
(0x801b)
ESP_ERR_HTTPS_OTA_BASE
(0x9000)
ESP_ERR_HTTPS_OTA_IN_PROGRESS
(0x9001)
ESP_ERR_PING_BASE
(0xa000)
ESP_ERR_PING_INVALID_PARAMS
(0xa001)
ESP_ERR_PING_NO_MEM
(0xa002)
ESP_ERR_HTTPD_BASE
(0xb000): Starting number of HTTPD error codes
ESP_ERR_HTTPD_HANDLERS_FULL
(0xb001): All slots for registering URI handlers have been consumed
ESP_ERR_HTTPD_HANDLER_EXISTS
(0xb002): URI handler with same method and target URI already registered
ESP_ERR_HTTPD_INVALID_REQ
(0xb003): Invalid request pointer
ESP_ERR_HTTPD_RESULT_TRUNC
(0xb004): Result string truncated
ESP_ERR_HTTPD_RESP_HDR
(0xb005): Response header field larger than supported
ESP_ERR_HTTPD_RESP_SEND
(0xb006): Error occured while sending response packet
ESP_ERR_HTTPD_ALLOC_MEM
(0xb007): Failed to dynamically allocate memory for resource
ESP_ERR_HTTPD_TASK
(0xb008): Failed to launch server task/thread
ESP_ERR_HW_CRYPTO_BASE
(0xc000): Starting number of HW cryptography module error codes
ESP_ERR_HW_CRYPTO_DS_HMAC_FAIL
(0xc001): HMAC peripheral problem
ESP_ERR_HW_CRYPTO_DS_INVALID_KEY
(0xc002)
ESP_ERR_HW_CRYPTO_DS_INVALID_DIGEST
(0xc004)
ESP_ERR_HW_CRYPTO_DS_INVALID_PADDING
(0xc005)