# Matter SDK `CHIP_ERROR` enums values

This file was **AUTOMATICALLY** generated by
`python scripts/error_table.py > docs/ERROR_CODES.md`. DO NOT EDIT BY HAND!

## Table of contents

-   [SDK Core errors: range `0x000..0x0FF`](#sdk-core-errors)
-   [SDK Inet Layer errors: range `0x100..0x1FF`](#sdk-inet-layer-errors)
-   [SDK Device Layer errors: range `0x200..0x2FF`](#sdk-device-layer-errors)
-   [ASN1 Layer errors: range `0x300..0x3FF`](#asn1-layer-errors)
-   [BLE Layer errors: range `0x400..0x4FF`](#ble-layer-errors)
-   [IM Global errors errors: range `0x500..0x5FF`](#im-global-errors-errors)

## SDK Core errors

| Decimal | Hex  | Name                                               |
| ------- | ---- | -------------------------------------------------- |
| 0       | 0x00 | `CHIP_NO_ERROR`                                    |
| 1       | 0x01 | `CHIP_ERROR_SENDING_BLOCKED`                       |
| 2       | 0x02 | `CHIP_ERROR_CONNECTION_ABORTED`                    |
| 3       | 0x03 | `CHIP_ERROR_INCORRECT_STATE`                       |
| 4       | 0x04 | `CHIP_ERROR_MESSAGE_TOO_LONG`                      |
| 5       | 0x05 | `CHIP_ERROR_RECURSION_DEPTH_LIMIT`                 |
| 6       | 0x06 | `CHIP_ERROR_TOO_MANY_UNSOLICITED_MESSAGE_HANDLERS` |
| 7       | 0x07 | `CHIP_ERROR_NO_UNSOLICITED_MESSAGE_HANDLER`        |
| 8       | 0x08 | `CHIP_ERROR_NO_CONNECTION_HANDLER`                 |
| 9       | 0x09 | `CHIP_ERROR_TOO_MANY_PEER_NODES`                   |
| 10      | 0x0A | `CHIP_ERROR_SENTINEL`                              |
| 11      | 0x0B | `CHIP_ERROR_NO_MEMORY`                             |
| 12      | 0x0C | `CHIP_ERROR_NO_MESSAGE_HANDLER`                    |
| 13      | 0x0D | `CHIP_ERROR_MESSAGE_INCOMPLETE`                    |
| 14      | 0x0E | `CHIP_ERROR_DATA_NOT_ALIGNED`                      |
| 15      | 0x0F | `CHIP_ERROR_UNKNOWN_KEY_TYPE`                      |
| 16      | 0x10 | `CHIP_ERROR_KEY_NOT_FOUND`                         |
| 17      | 0x11 | `CHIP_ERROR_WRONG_ENCRYPTION_TYPE`                 |
| 19      | 0x13 | `CHIP_ERROR_INTEGRITY_CHECK_FAILED`                |
| 20      | 0x14 | `CHIP_ERROR_INVALID_SIGNATURE`                     |
| 23      | 0x17 | `CHIP_ERROR_UNSUPPORTED_SIGNATURE_TYPE`            |
| 24      | 0x18 | `CHIP_ERROR_INVALID_MESSAGE_LENGTH`                |
| 25      | 0x19 | `CHIP_ERROR_BUFFER_TOO_SMALL`                      |
| 26      | 0x1A | `CHIP_ERROR_DUPLICATE_KEY_ID`                      |
| 27      | 0x1B | `CHIP_ERROR_WRONG_KEY_TYPE`                        |
| 28      | 0x1C | `CHIP_ERROR_WELL_UNINITIALIZED`                    |
| 29      | 0x1D | `CHIP_ERROR_WELL_EMPTY`                            |
| 30      | 0x1E | `CHIP_ERROR_INVALID_STRING_LENGTH`                 |
| 31      | 0x1F | `CHIP_ERROR_INVALID_LIST_LENGTH`                   |
| 33      | 0x21 | `CHIP_ERROR_END_OF_TLV`                            |
| 34      | 0x22 | `CHIP_ERROR_TLV_UNDERRUN`                          |
| 35      | 0x23 | `CHIP_ERROR_INVALID_TLV_ELEMENT`                   |
| 36      | 0x24 | `CHIP_ERROR_INVALID_TLV_TAG`                       |
| 37      | 0x25 | `CHIP_ERROR_UNKNOWN_IMPLICIT_TLV_TAG`              |
| 38      | 0x26 | `CHIP_ERROR_WRONG_TLV_TYPE`                        |
| 39      | 0x27 | `CHIP_ERROR_TLV_CONTAINER_OPEN`                    |
| 42      | 0x2A | `CHIP_ERROR_INVALID_MESSAGE_TYPE`                  |
| 43      | 0x2B | `CHIP_ERROR_UNEXPECTED_TLV_ELEMENT`                |
| 45      | 0x2D | `CHIP_ERROR_NOT_IMPLEMENTED`                       |
| 46      | 0x2E | `CHIP_ERROR_INVALID_ADDRESS`                       |
| 47      | 0x2F | `CHIP_ERROR_INVALID_ARGUMENT`                      |
| 48      | 0x30 | `CHIP_ERROR_INVALID_PATH_LIST`                     |
| 49      | 0x31 | `CHIP_ERROR_INVALID_DATA_LIST`                     |
| 50      | 0x32 | `CHIP_ERROR_TIMEOUT`                               |
| 51      | 0x33 | `CHIP_ERROR_INVALID_DEVICE_DESCRIPTOR`             |
| 56      | 0x38 | `CHIP_ERROR_INVALID_PASE_PARAMETER`                |
| 59      | 0x3B | `CHIP_ERROR_INVALID_USE_OF_SESSION_KEY`            |
| 60      | 0x3C | `CHIP_ERROR_CONNECTION_CLOSED_UNEXPECTEDLY`        |
| 61      | 0x3D | `CHIP_ERROR_MISSING_TLV_ELEMENT`                   |
| 62      | 0x3E | `CHIP_ERROR_RANDOM_DATA_UNAVAILABLE`               |
| 65      | 0x41 | `CHIP_ERROR_HOST_PORT_LIST_EMPTY`                  |
| 69      | 0x45 | `CHIP_ERROR_FORCED_RESET`                          |
| 70      | 0x46 | `CHIP_ERROR_NO_ENDPOINT`                           |
| 71      | 0x47 | `CHIP_ERROR_INVALID_DESTINATION_NODE_ID`           |
| 72      | 0x48 | `CHIP_ERROR_NOT_CONNECTED`                         |
| 74      | 0x4A | `CHIP_ERROR_CA_CERT_NOT_FOUND`                     |
| 75      | 0x4B | `CHIP_ERROR_CERT_PATH_LEN_CONSTRAINT_EXCEEDED`     |
| 76      | 0x4C | `CHIP_ERROR_CERT_PATH_TOO_LONG`                    |
| 77      | 0x4D | `CHIP_ERROR_CERT_USAGE_NOT_ALLOWED`                |
| 78      | 0x4E | `CHIP_ERROR_CERT_EXPIRED`                          |
| 79      | 0x4F | `CHIP_ERROR_CERT_NOT_VALID_YET`                    |
| 80      | 0x50 | `CHIP_ERROR_UNSUPPORTED_CERT_FORMAT`               |
| 81      | 0x51 | `CHIP_ERROR_UNSUPPORTED_ELLIPTIC_CURVE`            |
| 83      | 0x53 | `CHIP_ERROR_CERT_NOT_FOUND`                        |
| 84      | 0x54 | `CHIP_ERROR_INVALID_CASE_PARAMETER`                |
| 86      | 0x56 | `CHIP_ERROR_CERT_LOAD_FAILED`                      |
| 87      | 0x57 | `CHIP_ERROR_CERT_NOT_TRUSTED`                      |
| 89      | 0x59 | `CHIP_ERROR_WRONG_CERT_DN`                         |
| 92      | 0x5C | `CHIP_ERROR_WRONG_NODE_ID`                         |
| 100     | 0x64 | `CHIP_ERROR_RETRANS_TABLE_FULL`                    |
| 104     | 0x68 | `CHIP_ERROR_TRANSACTION_CANCELED`                  |
| 107     | 0x6B | `CHIP_ERROR_INVALID_SUBSCRIPTION`                  |
| 108     | 0x6C | `CHIP_ERROR_UNSUPPORTED_CHIP_FEATURE`              |
| 112     | 0x70 | `CHIP_ERROR_UNSOLICITED_MSG_NO_ORIGINATOR`         |
| 113     | 0x71 | `CHIP_ERROR_INVALID_FABRIC_INDEX`                  |
| 114     | 0x72 | `CHIP_ERROR_TOO_MANY_CONNECTIONS`                  |
| 115     | 0x73 | `CHIP_ERROR_SHUT_DOWN`                             |
| 116     | 0x74 | `CHIP_ERROR_CANCELLED`                             |
| 118     | 0x76 | `CHIP_ERROR_TLV_TAG_NOT_FOUND`                     |
| 119     | 0x77 | `CHIP_ERROR_MISSING_SECURE_SESSION`                |
| 120     | 0x78 | `CHIP_ERROR_INVALID_ADMIN_SUBJECT`                 |
| 121     | 0x79 | `CHIP_ERROR_INSUFFICIENT_PRIVILEGE`                |
| 125     | 0x7D | `CHIP_ERROR_MESSAGE_COUNTER_EXHAUSTED`             |
| 126     | 0x7E | `CHIP_ERROR_FABRIC_EXISTS`                         |
| 128     | 0x80 | `CHIP_ERROR_WRONG_ENCRYPTION_TYPE_FROM_PEER`       |
| 133     | 0x85 | `CHIP_ERROR_INVALID_KEY_ID`                        |
| 134     | 0x86 | `CHIP_ERROR_INVALID_TIME`                          |
| 142     | 0x8E | `CHIP_ERROR_SCHEMA_MISMATCH`                       |
| 143     | 0x8F | `CHIP_ERROR_INVALID_INTEGER_VALUE`                 |
| 146     | 0x92 | `CHIP_ERROR_BAD_REQUEST`                           |
| 157     | 0x9D | `CHIP_ERROR_WRONG_CERT_TYPE`                       |
| 159     | 0x9F | `CHIP_ERROR_PERSISTED_STORAGE_FAILED`              |
| 160     | 0xA0 | `CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND`     |
| 161     | 0xA1 | `CHIP_ERROR_IM_FABRIC_DELETED`                     |
| 164     | 0xA4 | `CHIP_ERROR_IN_PROGRESS`                           |
| 165     | 0xA5 | `CHIP_ERROR_ACCESS_DENIED`                         |
| 166     | 0xA6 | `CHIP_ERROR_UNKNOWN_RESOURCE_ID`                   |
| 167     | 0xA7 | `CHIP_ERROR_VERSION_MISMATCH`                      |
| 171     | 0xAB | `CHIP_ERROR_EVENT_ID_FOUND`                        |
| 172     | 0xAC | `CHIP_ERROR_INTERNAL`                              |
| 173     | 0xAD | `CHIP_ERROR_OPEN_FAILED`                           |
| 174     | 0xAE | `CHIP_ERROR_READ_FAILED`                           |
| 175     | 0xAF | `CHIP_ERROR_WRITE_FAILED`                          |
| 176     | 0xB0 | `CHIP_ERROR_DECODE_FAILED`                         |
| 180     | 0xB4 | `CHIP_ERROR_MDNS_COLLISION`                        |
| 181     | 0xB5 | `CHIP_ERROR_IM_MALFORMED_ATTRIBUTE_PATH_IB`        |
| 182     | 0xB6 | `CHIP_ERROR_IM_MALFORMED_EVENT_PATH_IB`            |
| 185     | 0xB9 | `CHIP_ERROR_IM_MALFORMED_COMMAND_DATA_IB`          |
| 186     | 0xBA | `CHIP_ERROR_IM_MALFORMED_EVENT_DATA_IB`            |
| 188     | 0xBC | `CHIP_ERROR_PEER_NODE_NOT_FOUND`                   |
| 189     | 0xBD | `CHIP_ERROR_HSM`                                   |
| 191     | 0xBF | `CHIP_ERROR_REAL_TIME_NOT_SYNCED`                  |
| 192     | 0xC0 | `CHIP_ERROR_UNEXPECTED_EVENT`                      |
| 193     | 0xC1 | `CHIP_ERROR_ENDPOINT_POOL_FULL`                    |
| 194     | 0xC2 | `CHIP_ERROR_INBOUND_MESSAGE_TOO_BIG`               |
| 195     | 0xC3 | `CHIP_ERROR_OUTBOUND_MESSAGE_TOO_BIG`              |
| 196     | 0xC4 | `CHIP_ERROR_DUPLICATE_MESSAGE_RECEIVED`            |
| 197     | 0xC5 | `CHIP_ERROR_INVALID_PUBLIC_KEY`                    |
| 198     | 0xC6 | `CHIP_ERROR_FABRIC_MISMATCH_ON_ICA`                |
| 201     | 0xC9 | `CHIP_ERROR_NO_SHARED_TRUSTED_ROOT`                |
| 202     | 0xCA | `CHIP_ERROR_IM_STATUS_CODE_RECEIVED`               |
| 215     | 0xD7 | `CHIP_ERROR_IM_MALFORMED_DATA_VERSION_FILTER_IB`   |
| 216     | 0xD8 | `CHIP_ERROR_NOT_FOUND`                             |
| 218     | 0xDA | `CHIP_ERROR_INVALID_FILE_IDENTIFIER`               |
| 219     | 0xDB | `CHIP_ERROR_BUSY`                                  |
| 220     | 0xDC | `CHIP_ERROR_MAX_RETRY_EXCEEDED`                    |
| 221     | 0xDD | `CHIP_ERROR_PROVIDER_LIST_EXHAUSTED`               |
| 223     | 0xDF | `CHIP_ERROR_INVALID_SCHEME_PREFIX`                 |
| 224     | 0xE0 | `CHIP_ERROR_MISSING_URI_SEPARATOR`                 |
| 225     | 0xE1 | `CHIP_ERROR_HANDLER_NOT_SET`                       |

## SDK Inet Layer errors

| Decimal | Hex   | Name                                      |
| ------- | ----- | ----------------------------------------- |
| 257     | 0x101 | `INET_ERROR_WRONG_ADDRESS_TYPE`           |
| 258     | 0x102 | `INET_ERROR_PEER_DISCONNECTED`            |
| 265     | 0x109 | `INET_ERROR_HOST_NOT_FOUND`               |
| 266     | 0x10A | `INET_ERROR_DNS_TRY_AGAIN`                |
| 267     | 0x10B | `INET_ERROR_DNS_NO_RECOVERY`              |
| 269     | 0x10D | `INET_ERROR_WRONG_PROTOCOL_TYPE`          |
| 270     | 0x10E | `INET_ERROR_UNKNOWN_INTERFACE`            |
| 272     | 0x110 | `INET_ERROR_ADDRESS_NOT_FOUND`            |
| 273     | 0x111 | `INET_ERROR_HOST_NAME_TOO_LONG`           |
| 274     | 0x112 | `INET_ERROR_INVALID_HOST_NAME`            |
| 277     | 0x115 | `INET_ERROR_IDLE_TIMEOUT`                 |
| 279     | 0x117 | `INET_ERROR_INVALID_IPV6_PKT`             |
| 280     | 0x118 | `INET_ERROR_INTERFACE_INIT_FAILURE`       |
| 281     | 0x119 | `INET_ERROR_TCP_USER_TIMEOUT`             |
| 282     | 0x11A | `INET_ERROR_TCP_CONNECT_TIMEOUT`          |
| 283     | 0x11B | `INET_ERROR_INCOMPATIBLE_IP_ADDRESS_TYPE` |

## SDK Device Layer errors

| Decimal | Hex   | Name                                        |
| ------- | ----- | ------------------------------------------- |
| 513     | 0x201 | `CHIP_DEVICE_ERROR_CONFIG_NOT_FOUND`        |
| 514     | 0x202 | `CHIP_DEVICE_ERROR_NOT_SERVICE_PROVISIONED` |
| 515     | 0x203 | `CHIP_DEVICE_ERROR_SOFTWARE_UPDATE_ABORTED` |
| 516     | 0x204 | `CHIP_DEVICE_ERROR_SOFTWARE_UPDATE_IGNORED` |

## ASN1 Layer errors

| Decimal | Hex   | Name                              |
| ------- | ----- | --------------------------------- |
| 768     | 0x300 | `ASN1_END`                        |
| 769     | 0x301 | `ASN1_ERROR_UNDERRUN`             |
| 770     | 0x302 | `ASN1_ERROR_OVERFLOW`             |
| 771     | 0x303 | `ASN1_ERROR_INVALID_STATE`        |
| 772     | 0x304 | `ASN1_ERROR_MAX_DEPTH_EXCEEDED`   |
| 773     | 0x305 | `ASN1_ERROR_INVALID_ENCODING`     |
| 774     | 0x306 | `ASN1_ERROR_UNSUPPORTED_ENCODING` |
| 775     | 0x307 | `ASN1_ERROR_TAG_OVERFLOW`         |
| 776     | 0x308 | `ASN1_ERROR_LENGTH_OVERFLOW`      |
| 777     | 0x309 | `ASN1_ERROR_VALUE_OVERFLOW`       |
| 778     | 0x30A | `ASN1_ERROR_UNKNOWN_OBJECT_ID`    |

## BLE Layer errors

| Decimal | Hex   | Name                                        |
| ------- | ----- | ------------------------------------------- |
| 1027    | 0x403 | `BLE_ERROR_NO_CONNECTION_RECEIVED_CALLBACK` |
| 1028    | 0x404 | `BLE_ERROR_CENTRAL_UNSUBSCRIBED`            |
| 1029    | 0x405 | `BLE_ERROR_GATT_SUBSCRIBE_FAILED`           |
| 1030    | 0x406 | `BLE_ERROR_GATT_UNSUBSCRIBE_FAILED`         |
| 1031    | 0x407 | `BLE_ERROR_GATT_WRITE_FAILED`               |
| 1032    | 0x408 | `BLE_ERROR_GATT_INDICATE_FAILED`            |
| 1035    | 0x40B | `BLE_ERROR_CHIPOBLE_PROTOCOL_ABORT`         |
| 1036    | 0x40C | `BLE_ERROR_REMOTE_DEVICE_DISCONNECTED`      |
| 1037    | 0x40D | `BLE_ERROR_APP_CLOSED_CONNECTION`           |
| 1039    | 0x40F | `BLE_ERROR_NOT_CHIP_DEVICE`                 |
| 1040    | 0x410 | `BLE_ERROR_INCOMPATIBLE_PROTOCOL_VERSIONS`  |
| 1043    | 0x413 | `BLE_ERROR_INVALID_FRAGMENT_SIZE`           |
| 1044    | 0x414 | `BLE_ERROR_START_TIMER_FAILED`              |
| 1045    | 0x415 | `BLE_ERROR_CONNECT_TIMED_OUT`               |
| 1046    | 0x416 | `BLE_ERROR_RECEIVE_TIMED_OUT`               |
| 1047    | 0x417 | `BLE_ERROR_INVALID_MESSAGE`                 |
| 1048    | 0x418 | `BLE_ERROR_FRAGMENT_ACK_TIMED_OUT`          |
| 1049    | 0x419 | `BLE_ERROR_KEEP_ALIVE_TIMED_OUT`            |
| 1050    | 0x41A | `BLE_ERROR_NO_CONNECT_COMPLETE_CALLBACK`    |
| 1051    | 0x41B | `BLE_ERROR_INVALID_ACK`                     |
| 1052    | 0x41C | `BLE_ERROR_REASSEMBLER_MISSING_DATA`        |
| 1053    | 0x41D | `BLE_ERROR_INVALID_BTP_HEADER_FLAGS`        |
| 1054    | 0x41E | `BLE_ERROR_INVALID_BTP_SEQUENCE_NUMBER`     |
| 1055    | 0x41F | `BLE_ERROR_REASSEMBLER_INCORRECT_STATE`     |

## IM Global errors errors

| Decimal | Hex   | Name                       |
| ------- | ----- | -------------------------- |
| 1280    | 0x500 | `SUCCESS`                  |
| 1281    | 0x501 | `FAILURE`                  |
| 1405    | 0x57D | `INVALID_SUBSCRIPTION`     |
| 1406    | 0x57E | `UNSUPPORTED_ACCESS`       |
| 1407    | 0x57F | `UNSUPPORTED_ENDPOINT`     |
| 1408    | 0x580 | `INVALID_ACTION`           |
| 1409    | 0x581 | `UNSUPPORTED_COMMAND`      |
| 1413    | 0x585 | `INVALID_COMMAND`          |
| 1414    | 0x586 | `UNSUPPORTED_ATTRIBUTE`    |
| 1415    | 0x587 | `CONSTRAINT_ERROR`         |
| 1416    | 0x588 | `UNSUPPORTED_WRITE`        |
| 1417    | 0x589 | `RESOURCE_EXHAUSTED`       |
| 1419    | 0x58B | `NOT_FOUND`                |
| 1420    | 0x58C | `UNREPORTABLE_ATTRIBUTE`   |
| 1421    | 0x58D | `INVALID_DATA_TYPE`        |
| 1423    | 0x58F | `UNSUPPORTED_READ`         |
| 1426    | 0x592 | `DATA_VERSION_MISMATCH`    |
| 1428    | 0x594 | `TIMEOUT`                  |
| 1436    | 0x59C | `BUSY`                     |
| 1475    | 0x5C3 | `UNSUPPORTED_CLUSTER`      |
| 1477    | 0x5C5 | `NO_UPSTREAM_SUBSCRIPTION` |
| 1478    | 0x5C6 | `NEEDS_TIMED_INTERACTION`  |
| 1479    | 0x5C7 | `UNSUPPORTED_EVENT`        |
| 1480    | 0x5C8 | `PATHS_EXHAUSTED`          |
| 1481    | 0x5C9 | `TIMED_REQUEST_MISMATCH`   |
| 1482    | 0x5CA | `FAILSAFE_REQUIRED`        |
| 1520    | 0x5F0 | `WRITE_IGNORED`            |
