Error codes

Errors related to hardware

Code Name Description
0x0501 ps_store_full Flash reserved for PS store is full
0x0502 ps_key_not_found PS key not found
0x0503 i2c_ack_missing Acknowledge for i2c was not received.
0x0504 i2c_timeout I2C read or write timed out.

Errors related to BGAPI protocol

Code Name Description
0x0101 invalid_conn_handle Invalid GATT connection handle.
0x0102 waiting_response Waiting response from GATT server to previous procedure.
0x0103 gatt_connection_timeout GATT connection is closed due procedure timeout.
0x0180 invalid_param Command contained invalid parameter
0x0181 wrong_state Device is in wrong state to receive command
0x0182 out_of_memory Device has run out of memory
0x0183 not_implemented Feature is not implemented
0x0184 invalid_command Command was not recognized
0x0185 timeout A command or procedure failed or a link lost due to timeout
0x0186 not_connected Connection handle passed is to command is not a valid handle
0x0187 flow Command would cause either underflow or overflow error
0x0188 user_attribute User attribute was accessed through API which is not supported
0x0189 invalid_license_key No valid license key found
0x018a command_too_long Command maximum length exceeded
0x018b out_of_bonds Bonding procedure can't be started because device has no space left for bond.
0x018c unspecified Unspecified error
0x018d hardware Hardware failure
0x018e buffers_full Command not accepted, because internal buffers are full
0x018f disconnected Command or Procedure failed due to disconnection
0x0190 too_many_requests Too many Simultaneous Requests
0x0191 not_supported Feature is not supported in this firmware build
0x0192 no_bonding The bonding does not exist.
0x0193 crypto Error using crypto functions
0x0194 data_corrupted Data was corrupted.
0x0195 command_incomplete Data received does not form a complete command
0x0196 not_initialized Feature or subsystem not initialized
0x0197 invalid_sync_handle Invalid periodic advertising sync handle
0x0198 invalid_module_action Bluetooth cannot be used on this hardware
0x0199 radio Error received from radio

Errors from Security Manager Protocol

Code Name Description
0x0301 passkey_entry_failed The user input of passkey failed, for example, the user cancelled the operation
0x0302 oob_not_available Out of Band data is not available for authentication
0x0303 authentication_requirements The pairing procedure cannot be performed as authentication requirements cannot be met due to IO capabilities of one or both devices
0x0304 confirm_value_failed The confirm value does not match the calculated compare value
0x0305 pairing_not_supported Pairing is not supported by the device
0x0306 encryption_key_size The resultant encryption key size is insufficient for the security requirements of this device
0x0307 command_not_supported The SMP command received is not supported on this device
0x0308 unspecified_reason Pairing failed due to an unspecified reason
0x0309 repeated_attempts Pairing or authentication procedure is disallowed because too little time has elapsed since last pairing request or security request
0x030a invalid_parameters The Invalid Parameters error code indicates: the command length is invalid or a parameter is outside of the specified range.
0x030b dhkey_check_failed Indicates to the remote device that the DHKey Check value received doesn't match the one calculated by the local device.
0x030c numeric_comparison_failed Indicates that the confirm values in the numeric comparison protocol do not match.
0x030d bredr_pairing_in_progress Indicates that the pairing over the LE transport failed due to a Pairing Request sent over the BR/EDR transport in process.
0x030e cross_transport_key_derivation_generation_not_allowed Indicates that the BR/EDR Link Key generated on the BR/EDR transport cannot be used to derive and distribute keys for the LE transport.

Bluetooth errors

Code Name Description
0x0202 unknown_connection_identifier Connection does not exist, or connection open request was cancelled.
0x0205 authentication_failure Pairing or authentication failed due to incorrect results in the pairing or authentication procedure. This could be due to an incorrect PIN or Link Key
0x0206 pin_or_key_missing Pairing failed because of missing PIN, or authentication failed because of missing Key
0x0207 memory_capacity_exceeded Controller is out of memory.
0x0208 connection_timeout Link supervision timeout has expired.
0x0209 connection_limit_exceeded Controller is at limit of connections it can support.
0x020a synchronous_connectiontion_limit_exceeded The Synchronous Connection Limit to a Device Exceeded error code indicates that the Controller has reached the limit to the number of synchronous connections that can be achieved to a device.
0x020b acl_connection_already_exists The ACL Connection Already Exists error code indicates that an attempt to create a new ACL Connection to a device when there is already a connection to this device.
0x020c command_disallowed Command requested cannot be executed because the Controller is in a state where it cannot process this command at this time.
0x020d connection_rejected_due_to_limited_resources The Connection Rejected Due To Limited Resources error code indicates that an incoming connection was rejected due to limited resources.
0x020e connection_rejected_due_to_security_reasons The Connection Rejected Due To Security Reasons error code indicates that a connection was rejected due to security requirements not being fulfilled, like authentication or pairing.
0x020f connection_rejected_due_to_unacceptable_bd_addr The Connection was rejected because this device does not accept the BD_ADDR. This may be because the device will only accept connections from specific BD_ADDRs.
0x0210 connection_accept_timeout_exceeded The Connection Accept Timeout has been exceeded for this connection attempt.
0x0211 unsupported_feature_or_parameter_value A feature or parameter value in the HCI command is not supported.
0x0212 invalid_command_parameters Command contained invalid parameters.
0x0213 remote_user_terminated User on the remote device terminated the connection.
0x0214 remote_device_terminated_connection_due_to_low_resources The remote device terminated the connection because of low resources
0x0215 remote_powering_off Remote Device Terminated Connection due to Power Off
0x0216 connection_terminated_by_local_host Local device terminated the connection.
0x0217 repeated_attempts The Controller is disallowing an authentication or pairing procedure because too little time has elapsed since the last authentication or pairing attempt failed.
0x0218 pairing_not_allowed The device does not allow pairing. This can be for example, when a device only allows pairing during a certain time window after some user input allows pairing
0x021a unsupported_remote_feature The remote device does not support the feature associated with the issued command.
0x021f unspecified_error No other error code specified is appropriate to use.
0x0222 ll_response_timeout Connection terminated due to link-layer procedure timeout.
0x0223 ll_procedure_collision LL procedure has collided with the same transaction or procedure that is already in progress.
0x0225 encryption_mode_not_acceptable The requested encryption mode is not acceptable at this time.
0x0226 link_key_cannot_be_changed Link key cannot be changed because a fixed unit key is being used.
0x0228 instant_passed LMP PDU or LL PDU that includes an instant cannot be performed because the instant when this would have occurred has passed.
0x0229 pairing_with_unit_key_not_supported It was not possible to pair as a unit key was requested and it is not supported.
0x022a different_transaction_collision LMP transaction was started that collides with an ongoing transaction.
0x022e channel_assessment_not_supported The Controller cannot perform channel assessment because it is not supported.
0x022f insufficient_security The HCI command or LMP PDU sent is only possible on an encrypted link.
0x0230 parameter_out_of_mandatory_range A parameter value requested is outside the mandatory range of parameters for the given HCI command or LMP PDU.
0x0237 simple_pairing_not_supported_by_host The IO capabilities request or response was rejected because the sending Host does not support Secure Simple Pairing even though the receiving Link Manager does.
0x0238 host_busy_pairing The Host is busy with another pairing operation and unable to support the requested pairing. The receiving device should retry pairing again later.
0x0239 connection_rejected_due_to_no_suitable_channel_found The Controller could not calculate an appropriate value for the Channel selection operation.
0x023a controller_busy Operation was rejected because the controller is busy and unable to process the request.
0x023b unacceptable_connection_interval Remote device terminated the connection because of an unacceptable connection interval.
0x023c advertising_timeout Ddvertising for a fixed duration completed or, for directed advertising, that advertising completed without a connection being created.
0x023d connection_terminated_due_to_mic_failure Connection was terminated because the Message Integrity Check (MIC) failed on a received packet.
0x023e connection_failed_to_be_established LL initiated a connection but the connection has failed to be established. Controller did not receive any packets from remote end.
0x023f mac_connection_failed The MAC of the 802.11 AMP was requested to connect to a peer, but the connection failed.
0x0240 coarse_clock_adjustment_rejected_but_will_try_to_adjust_using_clock_dragging The master, at this time, is unable to make a coarse adjustment to the piconet clock, using the supplied parameters. Instead the master will attempt to move the clock using clock dragging.
0x0242 unknown_advertising_identifier A command was sent from the Host that should identify an Advertising or Sync handle, but the Advertising or Sync handle does not exist.
0x0243 limit_reached Number of operations requested has been reached and has indicated the completion of the activity (e.g., advertising or scanning).
0x0244 operation_cancelled_by_host A request to the Controller issued by the Host and still pending was successfully canceled.
0x0245 packet_too_long An attempt was made to send or receive a packet that exceeds the maximum allowed packet length.

Application errors

Code Name Description
0x0a01 file_open_failed File open failed.
0x0a02 xml_parse_failed XML parsing failed.
0x0a03 device_connection_failed Device connection failed.
0x0a04 device_comunication_failed Device communication failed.
0x0a05 authentication_failed Device authentication failed.
0x0a06 incorrect_gatt_database Device has incorrect GATT database.
0x0a07 disconnected_due_to_procedure_collision Device disconnected due to procedure collision.
0x0a08 disconnected_due_to_secure_session_failed Device disconnected due to failure to establish or reestablish a secure session.
0x0a09 encryption_decryption_error Encrypion/decryption operation failed.
0x0a0a maximum_retries Maximum allowed retries exceeded.
0x0a0b data_parse_failed Data parsing failed.
0x0a0c pairing_removed Pairing established by the application layer protocol has been removed.
0x0a0d inactive_timeout Inactive timeout.
0x0a0e mismatched_or_insufficient_security Mismatched or insufficient security level

Errors from Attribute Protocol

Code Name Description
0x0401 invalid_handle The attribute handle given was not valid on this server
0x0402 read_not_permitted The attribute cannot be read
0x0403 write_not_permitted The attribute cannot be written
0x0404 invalid_pdu The attribute PDU was invalid
0x0405 insufficient_authentication The attribute requires authentication before it can be read or written.
0x0406 request_not_supported Attribute Server does not support the request received from the client.
0x0407 invalid_offset Offset specified was past the end of the attribute
0x0408 insufficient_authorization The attribute requires authorization before it can be read or written.
0x0409 prepare_queue_full Too many prepare writes have been queueud
0x040a att_not_found No attribute found within the given attribute handle range.
0x040b att_not_long The attribute cannot be read or written using the Read Blob Request
0x040c insufficient_enc_key_size The Encryption Key Size used for encrypting this link is insufficient.
0x040d invalid_att_length The attribute value length is invalid for the operation
0x040e unlikely_error The attribute request that was requested has encountered an error that was unlikely, and therefore could not be completed as requested.
0x040f insufficient_encryption The attribute requires encryption before it can be read or written.
0x0410 unsupported_group_type The attribute type is not a supported grouping attribute as defined by a higher layer specification.
0x0411 insufficient_resources Insufficient Resources to complete the request
0x0412 out_of_sync The server requests the client to rediscover the database.
0x0413 value_not_allowed The attribute parameter value was not allowed.
0x0480 application When this is returned in a BGAPI response, the application tried to read or write the value of a user attribute from the GATT database.

Bluetooth Mesh errors

Code Name Description
0x0c01 already_exists Returned when trying to add a key or some other unique resource with an ID which already exists
0x0c02 does_not_exist Returned when trying to manipulate a key or some other resource with an ID which does not exist
0x0c03 limit_reached Returned when an operation cannot be executed because a pre-configured limit for keys, key bindings, elements, models, virtual addresses, provisioned devices, or provisioning sessions is reached
0x0c04 invalid_address Returned when trying to use a reserved address or add a "pre-provisioned" device using an address already used by some other device
0x0c05 malformed_data In a BGAPI response, the user supplied malformed data; in a BGAPI event, the remote end responded with malformed or unrecognized data
0x0c06 already_initialized An attempt was made to initialize a subsystem that was already initialized.
0x0c07 not_initialized An attempt was made to use a subsystem that wasn't initialized yet. Call the subsystem's init function first.
0x0c08 no_friend_offer Returned when trying to establish a friendship as a Low Power Node, but no acceptable friend offer message was received.
0x0c09 prov_link_closed Provisioning link was unexpectedly closed before provisioning was complete.
0x0c0a prov_invalid_pdu An unrecognized provisioning PDU was received.
0x0c0b prov_invalid_pdu_format A provisioning PDU with wrong length or containing field values that are out of bounds was received.
0x0c0c prov_unexpected_pdu An unexpected (out of sequence) provisioning PDU was received.
0x0c0d prov_confirmation_failed The computed confirmation value did not match the expected value.
0x0c0e prov_out_of_resources Provisioning could not be continued due to insufficient resources.
0x0c0f prov_decryption_failed The provisioning data block could not be decrypted.
0x0c10 prov_unexpected_error An unexpected error happened during provisioning.
0x0c11 prov_cannot_assign_addr Device could not assign unicast addresses to all of its elements.
0x0c12 address_temporarily_unavailable Returned when trying to reuse an address of a previously deleted device before an IV Index Update has been executed.
0x0c13 address_already_used Returned when trying to assign an address that is used by one of the devices in the Device Database, or by the Provisioner itself.

Bluetooth Mesh foundation errors

Code Name Description
0x0e01 invalid_address Returned when address in request was not valid
0x0e02 invalid_model Returned when model identified is not found for a given element
0x0e03 invalid_app_key Returned when the key identified by AppKeyIndex is not stored in the node
0x0e04 invalid_net_key Returned when the key identified by NetKeyIndex is not stored in the node
0x0e05 insufficient_resources Returned when The node cannot serve the request due to insufficient resources
0x0e06 key_index_exists Returned when the key identified is already stored in the node and the new NetKey value is different
0x0e07 invalid_publish_params Returned when the model does not support the publish mechanism
0x0e08 not_subscribe_model Returned when the model does not support the subscribe mechanism
0x0e09 storage_failure Returned when storing of the requested parameters failed
0x0e0a not_supported Returned when requested setting is not supported
0x0e0b cannot_update Returned when the requested update operation cannot be performed due to general constraints
0x0e0c cannot_remove Returned when the requested delete operation cannot be performed due to general constraints
0x0e0d cannot_bind Returned when the requested bind operation cannot be performed due to general constraints
0x0e0e temporarily_unable Returned when The node cannot start advertising with Node Identity or Proxy since the maximum number of parallel advertising is reached
0x0e0f cannot_set Returned when the requested state cannot be set
0x0e10 unspecified Returned when an unspecified error took place
0x0e11 invalid_binding Returned when the NetKeyIndex and AppKeyIndex combination is not valid for a Config AppKey Update

Filesystem errors

Code Name Description
0x0901 file_not_found File not found

Errors from Logical Link Control and Adaptation Protocol

Code Name Description
0x0d01 remote_disconnected Returned when remote disconnects the connection-oriented channel by sending disconnection request.
0x0d02 local_disconnected Returned when local host disconnect the connection-oriented channel by sending disconnection request.
0x0d03 cid_not_exist Returned when local host did not find a connection-oriented channel with given destination CID.
0x0d04 le_disconnected Returned when connection-oriented channel disconnected due to LE connection is dropped.
0x0d05 flow_control_violated Returned when connection-oriented channel disconnected due to remote end send data even without credit.
0x0d06 flow_control_credit_overflowed Returned when connection-oriented channel disconnected due to remote end send flow control credits exceed 65535.
0x0d07 no_flow_control_credit Returned when connection-oriented channel has run out of flow control credit and local application still trying to send data.
0x0d08 connection_request_timeout Returned when connection-oriented channel has not received connection response message within maximum timeout.
0x0d09 invalid_cid Returned when local host received a connection-oriented channel connection response with an invalid destination CID.
0x0d0a wrong_state Returned when local host application tries to send a command which is not suitable for L2CAP channel's current state.

Security errors

Code Name Description
0x0b01 image_signature_verification_failed Device firmware signature verification failed.
0x0b02 file_signature_verification_failed File signature verification failed.
0x0b03 image_checksum_error Device firmware checksum is not valid.