/*******************************************************************************
 * @file
 * @brief SL Status Codes.
 *******************************************************************************
 * # License
 * <b>Copyright 2019 Silicon Laboratories Inc. www.silabs.com</b>
 *******************************************************************************
 *
 * SPDX-License-Identifier: Zlib
 *
 * The licensor of this software is Silicon Laboratories Inc.
 *
 * This software is provided 'as-is', without any express or implied
 * warranty. In no event will the authors be held liable for any damages
 * arising from the use of this software.
 *
 * Permission is granted to anyone to use this software for any purpose,
 * including commercial applications, and to alter it and redistribute it
 * freely, subject to the following restrictions:
 *
 * 1. The origin of this software must not be misrepresented; you must not
 *    claim that you wrote the original software. If you use this software
 *    in a product, an acknowledgment in the product documentation would be
 *    appreciated but is not required.
 * 2. Altered source versions must be plainly marked as such, and must not be
 *    misrepresented as being the original software.
 * 3. This notice may not be removed or altered from any source distribution.
 *
 ******************************************************************************/

#ifndef SL_STATUS_H
#define SL_STATUS_H

#include <stdint.h>

/*******************************************************************************
 * @addtogroup status Status Codes
 * @details Status Codes contains error and status code definitions used by
 *          Simplicity SDK software components and stacks. This module also
 *          provides routines to read the string linked with the error and
 *          status codes.
 * @{
 ******************************************************************************/

// -----------------------------------------------------------------------------
// Space Defines

#define SL_STATUS_SPACE_MASK              ((sl_status_t)0xFF00)  

#define SL_STATUS_GENERIC_SPACE           ((sl_status_t)0x0000)  

#define SL_STATUS_PLATFORM_1_SPACE        ((sl_status_t)0x0100)  
#define SL_STATUS_PLATFORM_2_SPACE        ((sl_status_t)0x0200)  
#define SL_STATUS_HARDWARE_SPACE          ((sl_status_t)0x0300)  

#define SL_STATUS_BLUETOOTH_SPACE         ((sl_status_t)0x0400)  
#define SL_STATUS_BLUETOOTH_MESH_SPACE    ((sl_status_t)0x0500)  
#define SL_STATUS_CAN_CANOPEN_SPACE       ((sl_status_t)0x0600)  
#define SL_STATUS_CONNECT_SPACE           ((sl_status_t)0x0700)  
#define SL_STATUS_NET_SUITE_SPACE         ((sl_status_t)0x0800)  
#define SL_STATUS_THREAD_SPACE            ((sl_status_t)0x0900)  
#define SL_STATUS_USB_SPACE               ((sl_status_t)0x0A00)  
#define SL_STATUS_WIFI_SPACE              ((sl_status_t)0x0B00)  
#define SL_STATUS_ZIGBEE_SPACE            ((sl_status_t)0x0C00)  
#define SL_STATUS_Z_WAVE_SPACE            ((sl_status_t)0x0D00)  

#define SL_STATUS_GECKO_OS_1_SPACE        ((sl_status_t)0x0E00)  
#define SL_STATUS_GECKO_OS_2_SPACE        ((sl_status_t)0x0F00)  

#define SL_STATUS_BLUETOOTH_CTRL_SPACE    ((sl_status_t)0x1000)  
#define SL_STATUS_BLUETOOTH_ATT_SPACE     ((sl_status_t)0x1100)  
#define SL_STATUS_BLUETOOTH_SMP_SPACE     ((sl_status_t)0x1200)  
#define SL_STATUS_BLUETOOTH_MESH_FOUNDATION_SPACE     ((sl_status_t)0x1300)  

#define SL_STATUS_WISUN_SPACE             ((sl_status_t)0x1400)  

#define SL_STATUS_COMPUTE_SPACE           ((sl_status_t)0x1500)  

// -----------------------------------------------------------------------------
// Status Defines

// -----------------------------------------------------------------------------
// Generic Errors

#define SL_STATUS_OK    ((sl_status_t)0x0000)  
#define SL_STATUS_FAIL  ((sl_status_t)0x0001)  

// State Errors
#define SL_STATUS_INVALID_STATE         ((sl_status_t)0x0002)  
#define SL_STATUS_NOT_READY             ((sl_status_t)0x0003)  
#define SL_STATUS_BUSY                  ((sl_status_t)0x0004)  
#define SL_STATUS_IN_PROGRESS           ((sl_status_t)0x0005)  
#define SL_STATUS_ABORT                 ((sl_status_t)0x0006)  
#define SL_STATUS_TIMEOUT               ((sl_status_t)0x0007)  
#define SL_STATUS_PERMISSION            ((sl_status_t)0x0008)  
#define SL_STATUS_WOULD_BLOCK           ((sl_status_t)0x0009)  
#define SL_STATUS_IDLE                  ((sl_status_t)0x000A)  
#define SL_STATUS_IS_WAITING            ((sl_status_t)0x000B)  
#define SL_STATUS_NONE_WAITING          ((sl_status_t)0x000C)  
#define SL_STATUS_SUSPENDED             ((sl_status_t)0x000D)  
#define SL_STATUS_NOT_AVAILABLE         ((sl_status_t)0x000E)  
#define SL_STATUS_NOT_SUPPORTED         ((sl_status_t)0x000F)  
#define SL_STATUS_INITIALIZATION        ((sl_status_t)0x0010)  
#define SL_STATUS_NOT_INITIALIZED       ((sl_status_t)0x0011)  
#define SL_STATUS_ALREADY_INITIALIZED   ((sl_status_t)0x0012)  
#define SL_STATUS_DELETED               ((sl_status_t)0x0013)  
#define SL_STATUS_ISR                   ((sl_status_t)0x0014)  
#define SL_STATUS_NETWORK_UP            ((sl_status_t)0x0015)  
#define SL_STATUS_NETWORK_DOWN          ((sl_status_t)0x0016)  
#define SL_STATUS_NOT_JOINED            ((sl_status_t)0x0017)  
#define SL_STATUS_NO_BEACONS            ((sl_status_t)0x0018)  

// Allocation/ownership Errors
#define SL_STATUS_ALLOCATION_FAILED   ((sl_status_t)0x0019)  
#define SL_STATUS_NO_MORE_RESOURCE    ((sl_status_t)0x001A)  
#define SL_STATUS_EMPTY               ((sl_status_t)0x001B)  
#define SL_STATUS_FULL                ((sl_status_t)0x001C)  
#define SL_STATUS_WOULD_OVERFLOW      ((sl_status_t)0x001D)  
#define SL_STATUS_HAS_OVERFLOWED      ((sl_status_t)0x001E)  
#define SL_STATUS_OWNERSHIP           ((sl_status_t)0x001F)  
#define SL_STATUS_IS_OWNER            ((sl_status_t)0x0020)  

// Invalid Parameters Errors
#define SL_STATUS_INVALID_PARAMETER       ((sl_status_t)0x0021)  
#define SL_STATUS_NULL_POINTER            ((sl_status_t)0x0022)  
#define SL_STATUS_INVALID_CONFIGURATION   ((sl_status_t)0x0023)  
#define SL_STATUS_INVALID_MODE            ((sl_status_t)0x0024)  
#define SL_STATUS_INVALID_HANDLE          ((sl_status_t)0x0025)  
#define SL_STATUS_INVALID_TYPE            ((sl_status_t)0x0026)  
#define SL_STATUS_INVALID_INDEX           ((sl_status_t)0x0027)  
#define SL_STATUS_INVALID_RANGE           ((sl_status_t)0x0028)  
#define SL_STATUS_INVALID_KEY             ((sl_status_t)0x0029)  
#define SL_STATUS_INVALID_CREDENTIALS     ((sl_status_t)0x002A)  
#define SL_STATUS_INVALID_COUNT           ((sl_status_t)0x002B)  
#define SL_STATUS_INVALID_SIGNATURE       ((sl_status_t)0x002C)  
#define SL_STATUS_NOT_FOUND               ((sl_status_t)0x002D)  
#define SL_STATUS_ALREADY_EXISTS          ((sl_status_t)0x002E)  

// IO/Communication Errors
#define SL_STATUS_IO                    ((sl_status_t)0x002F)  
#define SL_STATUS_IO_TIMEOUT            ((sl_status_t)0x0030)  
#define SL_STATUS_TRANSMIT              ((sl_status_t)0x0031)  
#define SL_STATUS_TRANSMIT_UNDERFLOW    ((sl_status_t)0x0032)  
#define SL_STATUS_TRANSMIT_INCOMPLETE   ((sl_status_t)0x0033)  
#define SL_STATUS_TRANSMIT_BUSY         ((sl_status_t)0x0034)  
#define SL_STATUS_RECEIVE               ((sl_status_t)0x0035)  
#define SL_STATUS_OBJECT_READ           ((sl_status_t)0x0036)  
#define SL_STATUS_OBJECT_WRITE          ((sl_status_t)0x0037)  
#define SL_STATUS_MESSAGE_TOO_LONG      ((sl_status_t)0x0038)  

// EEPROM/Flash Errors
#define SL_STATUS_EEPROM_MFG_VERSION_MISMATCH     ((sl_status_t)0x0039)  
#define SL_STATUS_EEPROM_STACK_VERSION_MISMATCH   ((sl_status_t)0x003A)  
#define SL_STATUS_FLASH_WRITE_INHIBITED           ((sl_status_t)0x003B)  
#define SL_STATUS_FLASH_VERIFY_FAILED             ((sl_status_t)0x003C)  
#define SL_STATUS_FLASH_PROGRAM_FAILED            ((sl_status_t)0x003D)  
#define SL_STATUS_FLASH_ERASE_FAILED              ((sl_status_t)0x003E)  

// MAC Errors
#define SL_STATUS_MAC_NO_DATA                   ((sl_status_t)0x003F)  
#define SL_STATUS_MAC_NO_ACK_RECEIVED           ((sl_status_t)0x0040)  
#define SL_STATUS_MAC_INDIRECT_TIMEOUT          ((sl_status_t)0x0041)  
#define SL_STATUS_MAC_UNKNOWN_HEADER_TYPE       ((sl_status_t)0x0042)  
#define SL_STATUS_MAC_ACK_HEADER_TYPE           ((sl_status_t)0x0043)  
#define SL_STATUS_MAC_COMMAND_TRANSMIT_FAILURE  ((sl_status_t)0x0044)  

// CLI_STORAGE Errors
#define SL_STATUS_CLI_STORAGE_NVM_OPEN_ERROR    ((sl_status_t)0x0045)  

// Security status codes
#define SL_STATUS_SECURITY_IMAGE_CHECKSUM_ERROR ((sl_status_t)0x0046)  
#define SL_STATUS_SECURITY_DECRYPT_ERROR        ((sl_status_t)0x0047)  

// Command status codes
#define SL_STATUS_COMMAND_IS_INVALID            ((sl_status_t)0x0048)  
#define SL_STATUS_COMMAND_TOO_LONG              ((sl_status_t)0x0049)  
#define SL_STATUS_COMMAND_INCOMPLETE            ((sl_status_t)0x004A)  

// Misc Errors
#define SL_STATUS_BUS_ERROR                     ((sl_status_t)0x004B)  

// Unified MAC Errors
#define SL_STATUS_CCA_FAILURE                   ((sl_status_t)0x004C)  

// Scan errors
#define SL_STATUS_MAC_SCANNING                  ((sl_status_t)0x004D)  
#define SL_STATUS_MAC_INCORRECT_SCAN_TYPE       ((sl_status_t)0x004E)  
#define SL_STATUS_INVALID_CHANNEL_MASK          ((sl_status_t)0x004F)  
#define SL_STATUS_BAD_SCAN_DURATION             ((sl_status_t)0x0050)  

// MAC transmit related status
#define SL_STATUS_MAC_TRANSMIT_QUEUE_FULL       ((sl_status_t)0x0053)  
#define SL_STATUS_TRANSMIT_SCHEDULER_FAIL       ((sl_status_t)0x0054)  
#define SL_STATUS_TRANSMIT_INVALID_CHANNEL      ((sl_status_t)0x0055)  
#define SL_STATUS_TRANSMIT_INVALID_POWER        ((sl_status_t)0x0056)  
#define SL_STATUS_TRANSMIT_ACK_RECEIVED         ((sl_status_t)0x0057)  
#define SL_STATUS_TRANSMIT_BLOCKED              ((sl_status_t)0x0058)  

// NVM3 specific errors
#define SL_STATUS_NVM3_ALIGNMENT_INVALID             ((sl_status_t)0x0059)  
#define SL_STATUS_NVM3_SIZE_TOO_SMALL                ((sl_status_t)0x005A)  
#define SL_STATUS_NVM3_PAGE_SIZE_NOT_SUPPORTED       ((sl_status_t)0x005B)  
#define SL_STATUS_NVM3_TOKEN_INIT_FAILED             ((sl_status_t)0x005C)  
#define SL_STATUS_NVM3_OPENED_WITH_OTHER_PARAMETERS  ((sl_status_t)0x005D)  
#define SL_STATUS_NVM3_NO_VALID_PAGES                ((sl_status_t)0x005E)  
#define SL_STATUS_NVM3_OBJECT_SIZE_NOT_SUPPORTED     ((sl_status_t)0x005F)  
#define SL_STATUS_NVM3_OBJECT_IS_NOT_DATA            ((sl_status_t)0x0060)  
#define SL_STATUS_NVM3_OBJECT_IS_NOT_A_COUNTER       ((sl_status_t)0x0061)  
#define SL_STATUS_NVM3_WRITE_DATA_SIZE               ((sl_status_t)0x0062)  
#define SL_STATUS_NVM3_READ_DATA_SIZE                ((sl_status_t)0x0063)  
#define SL_STATUS_NVM3_INIT_WITH_FULL_NVM            ((sl_status_t)0x0064)  
#define SL_STATUS_NVM3_RESIZE_PARAMETER              ((sl_status_t)0x0065)  
#define SL_STATUS_NVM3_RESIZE_NOT_ENOUGH_SPACE       ((sl_status_t)0x0066)  
#define SL_STATUS_NVM3_ERASE_COUNT_ERROR             ((sl_status_t)0x0067)  
#define SL_STATUS_NVM3_NVM_ACCESS                    ((sl_status_t)0x0068)  
#define SL_STATUS_NVM3_WRITE_TO_NOT_ERASED           ((sl_status_t)0x006D)  
#define SL_STATUS_NVM3_INVALID_ADDR                  ((sl_status_t)0x006E)  
#define SL_STATUS_NVM3_KEY_MISMATCH                  ((sl_status_t)0x006F)  
#define SL_STATUS_NVM3_SIZE_ERROR                    ((sl_status_t)0x0070)  
#define SL_STATUS_NVM3_EMULATOR                      ((sl_status_t)0x0071)  

// Security status codes
#define SL_STATUS_SECURITY_ENCRYPT_ERROR             ((sl_status_t)0x0072)  
#define SL_STATUS_SECURITY_KEY_ERROR                 ((sl_status_t)0x0073)  
#define SL_STATUS_SECURITY_RANDOM_NUM_GEN_ERROR      ((sl_status_t)0x0074)  

// Bluetooth status codes
#define SL_STATUS_BT_OUT_OF_BONDS                                                                        ((sl_status_t)0x0402)        
#define SL_STATUS_BT_UNSPECIFIED                                                                         ((sl_status_t)0x0403)        
#define SL_STATUS_BT_HARDWARE                                                                            ((sl_status_t)0x0404)        
#define SL_STATUS_BT_NO_BONDING                                                                          ((sl_status_t)0x0406)        
#define SL_STATUS_BT_CRYPTO                                                                              ((sl_status_t)0x0407)        
#define SL_STATUS_BT_DATA_CORRUPTED                                                                      ((sl_status_t)0x0408)        
#define SL_STATUS_BT_INVALID_SYNC_HANDLE                                                                 ((sl_status_t)0x040A)        
#define SL_STATUS_BT_INVALID_MODULE_ACTION                                                               ((sl_status_t)0x040B)        
#define SL_STATUS_BT_RADIO                                                                               ((sl_status_t)0x040C)        
#define SL_STATUS_BT_L2CAP_REMOTE_DISCONNECTED                                                           ((sl_status_t)0x040D)        
#define SL_STATUS_BT_L2CAP_LOCAL_DISCONNECTED                                                            ((sl_status_t)0x040E)        
#define SL_STATUS_BT_L2CAP_CID_NOT_EXIST                                                                 ((sl_status_t)0x040F)        
#define SL_STATUS_BT_L2CAP_LE_DISCONNECTED                                                               ((sl_status_t)0x0410)        
#define SL_STATUS_BT_L2CAP_FLOW_CONTROL_VIOLATED                                                         ((sl_status_t)0x0412)        
#define SL_STATUS_BT_L2CAP_FLOW_CONTROL_CREDIT_OVERFLOWED                                                ((sl_status_t)0x0413)        
#define SL_STATUS_BT_L2CAP_NO_FLOW_CONTROL_CREDIT                                                        ((sl_status_t)0x0414)        
#define SL_STATUS_BT_L2CAP_CONNECTION_REQUEST_TIMEOUT                                                    ((sl_status_t)0x0415)        
#define SL_STATUS_BT_L2CAP_INVALID_CID                                                                   ((sl_status_t)0x0416)        
#define SL_STATUS_BT_L2CAP_WRONG_STATE                                                                   ((sl_status_t)0x0417)        
#define SL_STATUS_BT_PS_STORE_FULL                                                                       ((sl_status_t)0x041B)        
#define SL_STATUS_BT_PS_KEY_NOT_FOUND                                                                    ((sl_status_t)0x041C)        
#define SL_STATUS_BT_APPLICATION_MISMATCHED_OR_INSUFFICIENT_SECURITY                                     ((sl_status_t)0x041D)        
#define SL_STATUS_BT_APPLICATION_ENCRYPTION_DECRYPTION_ERROR                                             ((sl_status_t)0x041E)        

// Bluetooth controller status codes
#define SL_STATUS_BT_CTRL_UNKNOWN_HCI_COMMAND                                                            ((sl_status_t)0x1001)     
#define SL_STATUS_BT_CTRL_UNKNOWN_CONNECTION_IDENTIFIER                                                  ((sl_status_t)0x1002)     
#define SL_STATUS_BT_CTRL_HARDWARE_FAILURE                                                               ((sl_status_t)0x1003)     
#define SL_STATUS_BT_CTRL_PAGE_TIMEOUT                                                                   ((sl_status_t)0x1004)     
#define SL_STATUS_BT_CTRL_AUTHENTICATION_FAILURE                                                         ((sl_status_t)0x1005)     
#define SL_STATUS_BT_CTRL_PIN_OR_KEY_MISSING                                                             ((sl_status_t)0x1006)     
#define SL_STATUS_BT_CTRL_MEMORY_CAPACITY_EXCEEDED                                                       ((sl_status_t)0x1007)     
#define SL_STATUS_BT_CTRL_CONNECTION_TIMEOUT                                                             ((sl_status_t)0x1008)     
#define SL_STATUS_BT_CTRL_CONNECTION_LIMIT_EXCEEDED                                                      ((sl_status_t)0x1009)     
#define SL_STATUS_BT_CTRL_SYNCHRONOUS_CONNECTION_LIMIT_EXCEEDED                                          ((sl_status_t)0x100A)     
#define SL_STATUS_BT_CTRL_ACL_CONNECTION_ALREADY_EXISTS                                                  ((sl_status_t)0x100B)     
#define SL_STATUS_BT_CTRL_COMMAND_DISALLOWED                                                             ((sl_status_t)0x100C)     
#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_LIMITED_RESOURCES                                   ((sl_status_t)0x100D)     
#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_SECURITY_REASONS                                    ((sl_status_t)0x100E)     
#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_UNACCEPTABLE_BD_ADDR                                ((sl_status_t)0x100F)     
#define SL_STATUS_BT_CTRL_CONNECTION_ACCEPT_TIMEOUT_EXCEEDED                                             ((sl_status_t)0x1010)     
#define SL_STATUS_BT_CTRL_UNSUPPORTED_FEATURE_OR_PARAMETER_VALUE                                         ((sl_status_t)0x1011)     
#define SL_STATUS_BT_CTRL_INVALID_COMMAND_PARAMETERS                                                     ((sl_status_t)0x1012)     
#define SL_STATUS_BT_CTRL_REMOTE_USER_TERMINATED                                                         ((sl_status_t)0x1013)     
#define SL_STATUS_BT_CTRL_REMOTE_DEVICE_TERMINATED_CONNECTION_DUE_TO_LOW_RESOURCES                       ((sl_status_t)0x1014)     
#define SL_STATUS_BT_CTRL_REMOTE_POWERING_OFF                                                            ((sl_status_t)0x1015)     
#define SL_STATUS_BT_CTRL_CONNECTION_TERMINATED_BY_LOCAL_HOST                                            ((sl_status_t)0x1016)     
#define SL_STATUS_BT_CTRL_REPEATED_ATTEMPTS                                                              ((sl_status_t)0x1017)     
#define SL_STATUS_BT_CTRL_PAIRING_NOT_ALLOWED                                                            ((sl_status_t)0x1018)     
#define SL_STATUS_BT_CTRL_UNKNOWN_LMP_PDU                                                                ((sl_status_t)0x1019)     
#define SL_STATUS_BT_CTRL_UNSUPPORTED_REMOTE_FEATURE                                                     ((sl_status_t)0x101A)     
#define SL_STATUS_BT_CTRL_SCO_OFFSET_REJECTED                                                            ((sl_status_t)0x101B)     
#define SL_STATUS_BT_CTRL_SCO_INTERVAL_REJECTED                                                          ((sl_status_t)0x101C)     
#define SL_STATUS_BT_CTRL_SCO_AIR_MODE_REJECTED                                                          ((sl_status_t)0x101D)     
#define SL_STATUS_BT_CTRL_INVALID_LL_PARAMETERS                                                          ((sl_status_t)0x101E)     
#define SL_STATUS_BT_CTRL_UNSPECIFIED_ERROR                                                              ((sl_status_t)0x101F)     
#define SL_STATUS_BT_CTRL_UNSUPPORTED_LL_PARAMETER_VALUE                                                 ((sl_status_t)0x1020)     
#define SL_STATUS_BT_CTRL_ROLE_CHANGE_NOT_ALLOWED                                                        ((sl_status_t)0x1021)     
#define SL_STATUS_BT_CTRL_LL_RESPONSE_TIMEOUT                                                            ((sl_status_t)0x1022)     
#define SL_STATUS_BT_CTRL_LL_PROCEDURE_COLLISION                                                         ((sl_status_t)0x1023)     
#define SL_STATUS_BT_CTRL_LMP_PDU_NOT_ALLOWED                                                            ((sl_status_t)0x1024)     

#define SL_STATUS_BT_CTRL_ENCRYPTION_MODE_NOT_ACCEPTABLE                                                 ((sl_status_t)0x1025)     
#define SL_STATUS_BT_CTRL_LINK_KEY_CANNOT_BE_CHANGED                                                     ((sl_status_t)0x1026)     
#define SL_STATUS_BT_CTRL_REQUESTED_QOS_NOT_SUPPORTED                                                    ((sl_status_t)0x1027)     
#define SL_STATUS_BT_CTRL_INSTANT_PASSED                                                                 ((sl_status_t)0x1028)     
#define SL_STATUS_BT_CTRL_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED                                            ((sl_status_t)0x1029)     
#define SL_STATUS_BT_CTRL_DIFFERENT_TRANSACTION_COLLISION                                                ((sl_status_t)0x102A)     
// NOTE: Value 0x2b is unspecified.
#define SL_STATUS_BT_CTRL_QOS_UNACCEPTABLE_PARAMETER                                                     ((sl_status_t)0x102C)     
#define SL_STATUS_BT_CTRL_QOS_REJECTED                                                                   ((sl_status_t)0x102D)     
#define SL_STATUS_BT_CTRL_CHANNEL_ASSESSMENT_NOT_SUPPORTED                                               ((sl_status_t)0x102E)     
#define SL_STATUS_BT_CTRL_INSUFFICIENT_SECURITY                                                          ((sl_status_t)0x102F)     
#define SL_STATUS_BT_CTRL_PARAMETER_OUT_OF_MANDATORY_RANGE                                               ((sl_status_t)0x1030)     
// NOTE: Value 0x31 is unspecified.
#define SL_STATUS_BT_CTRL_ROLE_SWITCH_PENDING                                                            ((sl_status_t)0x1032)     
// NOTE: Value 0x33 is unspecified.
#define SL_STATUS_BT_CTRL_RESERVED_SLOT_VIOLATION                                                        ((sl_status_t)0x1034)     
#define SL_STATUS_BT_CTRL_ROLE_SWITCH_FAILED                                                             ((sl_status_t)0x1035)     
#define SL_STATUS_BT_CTRL_EXTENDED_INQUIRY_RESPONSE_TOO_LARGE                                            ((sl_status_t)0x1036)     

#define SL_STATUS_BT_CTRL_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST                                           ((sl_status_t)0x1037)     
#define SL_STATUS_BT_CTRL_HOST_BUSY_PAIRING                                                              ((sl_status_t)0x1038)     
#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_NO_SUITABLE_CHANNEL_FOUND                           ((sl_status_t)0x1039)     
#define SL_STATUS_BT_CTRL_CONTROLLER_BUSY                                                                ((sl_status_t)0x103A)     
#define SL_STATUS_BT_CTRL_UNACCEPTABLE_CONNECTION_INTERVAL                                               ((sl_status_t)0x103B)     
#define SL_STATUS_BT_CTRL_ADVERTISING_TIMEOUT                                                            ((sl_status_t)0x103C)     
#define SL_STATUS_BT_CTRL_CONNECTION_TERMINATED_DUE_TO_MIC_FAILURE                                       ((sl_status_t)0x103D)     
#define SL_STATUS_BT_CTRL_CONNECTION_FAILED_TO_BE_ESTABLISHED                                            ((sl_status_t)0x103E)     
#define SL_STATUS_BT_CTRL_MAC_CONNECTION_FAILED                                                          ((sl_status_t)0x103F)     
#define SL_STATUS_BT_CTRL_COARSE_CLOCK_ADJUSTMENT_REJECTED_BUT_WILL_TRY_TO_ADJUST_USING_CLOCK_DRAGGING   ((sl_status_t)0x1040)     
#define SL_STATUS_BT_CTRL_TYPE0_SUBMAP_NOT_DEFINED                                                       ((sl_status_t)0x1041)     
#define SL_STATUS_BT_CTRL_UNKNOWN_ADVERTISING_IDENTIFIER                                                 ((sl_status_t)0x1042)     
#define SL_STATUS_BT_CTRL_LIMIT_REACHED                                                                  ((sl_status_t)0x1043)     
#define SL_STATUS_BT_CTRL_OPERATION_CANCELLED_BY_HOST                                                    ((sl_status_t)0x1044)     
#define SL_STATUS_BT_CTRL_PACKET_TOO_LONG                                                                ((sl_status_t)0x1045)     
#define SL_STATUS_BT_CTRL_TOO_LATE                                                                       ((sl_status_t)0x1046)     
#define SL_STATUS_BT_CTRL_TOO_EARLY                                                                      ((sl_status_t)0x1047)     
#define SL_STATUS_BT_CTRL_INSUFFICIENT_CHANNELS                                                          ((sl_status_t)0x1048)     

// Bluetooth attribute status codes
#define SL_STATUS_BT_ATT_INVALID_HANDLE                                                                  ((sl_status_t)0x1101)      
#define SL_STATUS_BT_ATT_READ_NOT_PERMITTED                                                              ((sl_status_t)0x1102)      
#define SL_STATUS_BT_ATT_WRITE_NOT_PERMITTED                                                             ((sl_status_t)0x1103)      
#define SL_STATUS_BT_ATT_INVALID_PDU                                                                     ((sl_status_t)0x1104)      
#define SL_STATUS_BT_ATT_INSUFFICIENT_AUTHENTICATION                                                     ((sl_status_t)0x1105)      
#define SL_STATUS_BT_ATT_REQUEST_NOT_SUPPORTED                                                           ((sl_status_t)0x1106)      
#define SL_STATUS_BT_ATT_INVALID_OFFSET                                                                  ((sl_status_t)0x1107)      
#define SL_STATUS_BT_ATT_INSUFFICIENT_AUTHORIZATION                                                      ((sl_status_t)0x1108)      
#define SL_STATUS_BT_ATT_PREPARE_QUEUE_FULL                                                              ((sl_status_t)0x1109)      
#define SL_STATUS_BT_ATT_ATT_NOT_FOUND                                                                   ((sl_status_t)0x110A)     
#define SL_STATUS_BT_ATT_ATT_NOT_LONG                                                                    ((sl_status_t)0x110B)     
#define SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT                                                   ((sl_status_t)0x110C)     
#define SL_STATUS_BT_ATT_INSUFFICIENT_ENC_KEY_SIZE                                                       SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT     
#define SL_STATUS_BT_ATT_INVALID_ATT_LENGTH                                                              ((sl_status_t)0x110D)     
#define SL_STATUS_BT_ATT_UNLIKELY_ERROR                                                                  ((sl_status_t)0x110E)     
#define SL_STATUS_BT_ATT_INSUFFICIENT_ENCRYPTION                                                         ((sl_status_t)0x110F)     
#define SL_STATUS_BT_ATT_UNSUPPORTED_GROUP_TYPE                                                          ((sl_status_t)0x1110)     
#define SL_STATUS_BT_ATT_INSUFFICIENT_RESOURCES                                                          ((sl_status_t)0x1111)     
#define SL_STATUS_BT_ATT_OUT_OF_SYNC                                                                     ((sl_status_t)0x1112)     
#define SL_STATUS_BT_ATT_VALUE_NOT_ALLOWED                                                               ((sl_status_t)0x1113)     
#define SL_STATUS_BT_ATT_APPLICATION                                                                     ((sl_status_t)0x1180)    
#define SL_STATUS_BT_ATT_WRITE_REQUEST_REJECTED                                                          ((sl_status_t)0x11FC)    
#define SL_STATUS_BT_ATT_CLIENT_CHARACTERISTIC_CONFIGURATION_DESCRIPTOR_IMPROPERLY_CONFIGURED            ((sl_status_t)0x11FD)    
#define SL_STATUS_BT_ATT_PROCEDURE_ALREADY_IN_PROGRESS                                                   ((sl_status_t)0x11FE)    
#define SL_STATUS_BT_ATT_OUT_OF_RANGE                                                                    ((sl_status_t)0x11FF)    

// Bluetooth Security Manager Protocol status codes
#define SL_STATUS_BT_SMP_PASSKEY_ENTRY_FAILED                                                            ((sl_status_t)0x1201)      
#define SL_STATUS_BT_SMP_OOB_NOT_AVAILABLE                                                               ((sl_status_t)0x1202)      
#define SL_STATUS_BT_SMP_AUTHENTICATION_REQUIREMENTS                                                     ((sl_status_t)0x1203)      
#define SL_STATUS_BT_SMP_CONFIRM_VALUE_FAILED                                                            ((sl_status_t)0x1204)      
#define SL_STATUS_BT_SMP_PAIRING_NOT_SUPPORTED                                                           ((sl_status_t)0x1205)      
#define SL_STATUS_BT_SMP_ENCRYPTION_KEY_SIZE                                                             ((sl_status_t)0x1206)      
#define SL_STATUS_BT_SMP_COMMAND_NOT_SUPPORTED                                                           ((sl_status_t)0x1207)      
#define SL_STATUS_BT_SMP_UNSPECIFIED_REASON                                                              ((sl_status_t)0x1208)      
#define SL_STATUS_BT_SMP_REPEATED_ATTEMPTS                                                               ((sl_status_t)0x1209)      
#define SL_STATUS_BT_SMP_INVALID_PARAMETERS                                                              ((sl_status_t)0x120A)     
#define SL_STATUS_BT_SMP_DHKEY_CHECK_FAILED                                                              ((sl_status_t)0x120B)     
#define SL_STATUS_BT_SMP_NUMERIC_COMPARISON_FAILED                                                       ((sl_status_t)0x120C)     
#define SL_STATUS_BT_SMP_BREDR_PAIRING_IN_PROGRESS                                                       ((sl_status_t)0x120D)     
#define SL_STATUS_BT_SMP_CROSS_TRANSPORT_KEY_DERIVATION_GENERATION_NOT_ALLOWED                           ((sl_status_t)0x120E)     
#define SL_STATUS_BT_SMP_KEY_REJECTED                                                                    ((sl_status_t)0x120F)     
#define SL_STATUS_BT_SMP_BUSY                                                                            ((sl_status_t)0x1210)     

// Bluetooth Mesh status codes
#define SL_STATUS_BT_MESH_ALREADY_EXISTS                                                                 ((sl_status_t)0x0501)      
#define SL_STATUS_BT_MESH_DOES_NOT_EXIST                                                                 ((sl_status_t)0x0502)      
#define SL_STATUS_BT_MESH_LIMIT_REACHED                                                                  ((sl_status_t)0x0503)      
#define SL_STATUS_BT_MESH_INVALID_ADDRESS                                                                ((sl_status_t)0x0504)      
#define SL_STATUS_BT_MESH_MALFORMED_DATA                                                                 ((sl_status_t)0x0505)      
#define SL_STATUS_BT_MESH_ALREADY_INITIALIZED                                                            ((sl_status_t)0x0506)      
#define SL_STATUS_BT_MESH_NOT_INITIALIZED                                                                ((sl_status_t)0x0507)      
#define SL_STATUS_BT_MESH_NO_FRIEND_OFFER                                                                ((sl_status_t)0x0508)      
#define SL_STATUS_BT_MESH_PROV_LINK_CLOSED                                                               ((sl_status_t)0x0509)      
#define SL_STATUS_BT_MESH_PROV_INVALID_PDU                                                               ((sl_status_t)0x050A)     
#define SL_STATUS_BT_MESH_PROV_INVALID_PDU_FORMAT                                                        ((sl_status_t)0x050B)     
#define SL_STATUS_BT_MESH_PROV_UNEXPECTED_PDU                                                            ((sl_status_t)0x050C)     
#define SL_STATUS_BT_MESH_PROV_CONFIRMATION_FAILED                                                       ((sl_status_t)0x050D)     
#define SL_STATUS_BT_MESH_PROV_OUT_OF_RESOURCES                                                          ((sl_status_t)0x050E)     
#define SL_STATUS_BT_MESH_PROV_DECRYPTION_FAILED                                                         ((sl_status_t)0x050F)     
#define SL_STATUS_BT_MESH_PROV_UNEXPECTED_ERROR                                                          ((sl_status_t)0x0510)     
#define SL_STATUS_BT_MESH_PROV_CANNOT_ASSIGN_ADDR                                                        ((sl_status_t)0x0511)     
#define SL_STATUS_BT_MESH_ADDRESS_TEMPORARILY_UNAVAILABLE                                                ((sl_status_t)0x0512)     
#define SL_STATUS_BT_MESH_ADDRESS_ALREADY_USED                                                           ((sl_status_t)0x0513)     
#define SL_STATUS_BT_MESH_PUBLISH_NOT_CONFIGURED                                                         ((sl_status_t)0x0514)     
#define SL_STATUS_BT_MESH_APP_KEY_NOT_BOUND                                                              ((sl_status_t)0x0515)     

// Bluetooth Mesh foundation status codes
#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_ADDRESS                                                     ((sl_status_t)0x1301)      
#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_MODEL                                                       ((sl_status_t)0x1302)      
#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_APP_KEY                                                     ((sl_status_t)0x1303)      
#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_NET_KEY                                                     ((sl_status_t)0x1304)      
#define SL_STATUS_BT_MESH_FOUNDATION_INSUFFICIENT_RESOURCES                                              ((sl_status_t)0x1305)      
#define SL_STATUS_BT_MESH_FOUNDATION_KEY_INDEX_EXISTS                                                    ((sl_status_t)0x1306)      
#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_PUBLISH_PARAMS                                              ((sl_status_t)0x1307)      
#define SL_STATUS_BT_MESH_FOUNDATION_NOT_SUBSCRIBE_MODEL                                                 ((sl_status_t)0x1308)      
#define SL_STATUS_BT_MESH_FOUNDATION_STORAGE_FAILURE                                                     ((sl_status_t)0x1309)      
#define SL_STATUS_BT_MESH_FOUNDATION_NOT_SUPPORTED                                                       ((sl_status_t)0x130A)     
#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_UPDATE                                                       ((sl_status_t)0x130B)     
#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_REMOVE                                                       ((sl_status_t)0x130C)     
#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_BIND                                                         ((sl_status_t)0x130D)     
#define SL_STATUS_BT_MESH_FOUNDATION_TEMPORARILY_UNABLE                                                  ((sl_status_t)0x130E)     
#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_SET                                                          ((sl_status_t)0x130F)     
#define SL_STATUS_BT_MESH_FOUNDATION_UNSPECIFIED                                                         ((sl_status_t)0x1310)     
#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_BINDING                                                     ((sl_status_t)0x1311)     

// -----------------------------------------------------------------------------
// Wi-Fi Errors

#define SL_STATUS_WIFI_INVALID_KEY                         ((sl_status_t)0x0B01)  
#define SL_STATUS_WIFI_FIRMWARE_DOWNLOAD_TIMEOUT           ((sl_status_t)0x0B02)  
#define SL_STATUS_WIFI_UNSUPPORTED_MESSAGE_ID              ((sl_status_t)0x0B03)  
#define SL_STATUS_WIFI_WARNING                             ((sl_status_t)0x0B04)  
#define SL_STATUS_WIFI_NO_PACKET_TO_RECEIVE                ((sl_status_t)0x0B05)  
#define SL_STATUS_WIFI_SLEEP_GRANTED                       ((sl_status_t)0x0B08)  
#define SL_STATUS_WIFI_SLEEP_NOT_GRANTED                   ((sl_status_t)0x0B09)  
#define SL_STATUS_WIFI_SECURE_LINK_MAC_KEY_ERROR           ((sl_status_t)0x0B10)  
#define SL_STATUS_WIFI_SECURE_LINK_MAC_KEY_ALREADY_BURNED  ((sl_status_t)0x0B11)  
#define SL_STATUS_WIFI_SECURE_LINK_RAM_MODE_NOT_ALLOWED    ((sl_status_t)0x0B12)  
#define SL_STATUS_WIFI_SECURE_LINK_FAILED_UNKNOWN_MODE     ((sl_status_t)0x0B13)  
#define SL_STATUS_WIFI_SECURE_LINK_EXCHANGE_FAILED         ((sl_status_t)0x0B14)  
#define SL_STATUS_WIFI_WRONG_STATE                         ((sl_status_t)0x0B18)  
#define SL_STATUS_WIFI_CHANNEL_NOT_ALLOWED                 ((sl_status_t)0x0B19)  
#define SL_STATUS_WIFI_NO_MATCHING_AP                      ((sl_status_t)0x0B1A)  
#define SL_STATUS_WIFI_CONNECTION_ABORTED                  ((sl_status_t)0x0B1B)  
#define SL_STATUS_WIFI_CONNECTION_TIMEOUT                  ((sl_status_t)0x0B1C)  
#define SL_STATUS_WIFI_CONNECTION_REJECTED_BY_AP           ((sl_status_t)0x0B1D)  
#define SL_STATUS_WIFI_CONNECTION_AUTH_FAILURE             ((sl_status_t)0x0B1E)  
#define SL_STATUS_WIFI_RETRY_EXCEEDED                      ((sl_status_t)0x0B1F)  
#define SL_STATUS_WIFI_TX_LIFETIME_EXCEEDED                ((sl_status_t)0x0B20)  

// -----------------------------------------------------------------------------

// MVP Driver and MVP Math status codes
#define SL_STATUS_COMPUTE_DRIVER_FAULT                      ((sl_status_t)0x1501)   
#define SL_STATUS_COMPUTE_DRIVER_ALU_NAN                    ((sl_status_t)0x1502)   
#define SL_STATUS_COMPUTE_DRIVER_ALU_OVERFLOW               ((sl_status_t)0x1503)   
#define SL_STATUS_COMPUTE_DRIVER_ALU_UNDERFLOW              ((sl_status_t)0x1504)   
#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_OVERFLOW  ((sl_status_t)0x1505)   
#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_UNDERFLOW ((sl_status_t)0x1506)   
#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_INFINITY  ((sl_status_t)0x1507)   
#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_NAN       ((sl_status_t)0x1508)   

#define SL_STATUS_COMPUTE_MATH_NAN                          ((sl_status_t)0x1512)   
#define SL_STATUS_COMPUTE_MATH_INFINITY                     ((sl_status_t)0x1513)   
#define SL_STATUS_COMPUTE_MATH_OVERFLOW                     ((sl_status_t)0x1514)   
#define SL_STATUS_COMPUTE_MATH_UNDERFLOW                    ((sl_status_t)0x1515)   

// Zigbee status codes

#define SL_STATUS_ZIGBEE_PACKET_HANDOFF_DROPPED                ((sl_status_t)0x0C01)  
#define SL_STATUS_ZIGBEE_DELIVERY_FAILED                       ((sl_status_t)0x0C02)  
#define SL_STATUS_ZIGBEE_MAX_MESSAGE_LIMIT_REACHED             ((sl_status_t)0x0C03)  
#define SL_STATUS_ZIGBEE_BINDING_IS_ACTIVE                     ((sl_status_t)0x0C04)  
#define SL_STATUS_ZIGBEE_ADDRESS_TABLE_ENTRY_IS_ACTIVE         ((sl_status_t)0x0C05)  
#define SL_STATUS_ZIGBEE_MOVE_FAILED                           ((sl_status_t)0x0C06)  
#define SL_STATUS_ZIGBEE_NODE_ID_CHANGED                       ((sl_status_t)0x0C07)  
#define SL_STATUS_ZIGBEE_INVALID_SECURITY_LEVEL                ((sl_status_t)0x0C08)  
#define SL_STATUS_ZIGBEE_IEEE_ADDRESS_DISCOVERY_IN_PROGRESS    ((sl_status_t)0x0C09)  
#define SL_STATUS_ZIGBEE_APS_ENCRYPTION_ERROR                  ((sl_status_t)0x0C0A)  
#define SL_STATUS_ZIGBEE_SECURITY_STATE_NOT_SET                ((sl_status_t)0x0C0B)  
#define SL_STATUS_ZIGBEE_TOO_SOON_FOR_SWITCH_KEY               ((sl_status_t)0x0C0C)  
#define SL_STATUS_ZIGBEE_SIGNATURE_VERIFY_FAILURE              ((sl_status_t)0x0C0D)  
#define SL_STATUS_ZIGBEE_KEY_NOT_AUTHORIZED                    ((sl_status_t)0x0C0E)  
#define SL_STATUS_ZIGBEE_BINDING_HAS_CHANGED                   ((sl_status_t)0x0C0F)  
#define SL_STATUS_ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_CHANGED     ((sl_status_t)0x0C10)  
#define SL_STATUS_ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_NOT_CHANGED ((sl_status_t)0x0C11)  
#define SL_STATUS_ZIGBEE_INSUFFICIENT_RANDOM_DATA              ((sl_status_t)0x0C12)  
#define SL_STATUS_ZIGBEE_SOURCE_ROUTE_FAILURE                  ((sl_status_t)0x0C13)  
#define SL_STATUS_ZIGBEE_MANY_TO_ONE_ROUTE_FAILURE             ((sl_status_t)0x0C14)  
#define SL_STATUS_ZIGBEE_STACK_AND_HARDWARE_MISMATCH           ((sl_status_t)0x0C15)  
#define SL_STATUS_ZIGBEE_PAN_ID_CHANGED                        ((sl_status_t)0x0C16)  
#define SL_STATUS_ZIGBEE_CHANNEL_CHANGED                       ((sl_status_t)0x0C17)  
#define SL_STATUS_ZIGBEE_NETWORK_OPENED                        ((sl_status_t)0x0C18)  
#define SL_STATUS_ZIGBEE_NETWORK_CLOSED                        ((sl_status_t)0x0C19)  
#define SL_STATUS_ZIGBEE_RECEIVED_KEY_IN_THE_CLEAR             ((sl_status_t)0x0C1A)  
#define SL_STATUS_ZIGBEE_NO_NETWORK_KEY_RECEIVED               ((sl_status_t)0x0C1B)  
#define SL_STATUS_ZIGBEE_NO_LINK_KEY_RECEIVED                  ((sl_status_t)0x0C1C)  
#define SL_STATUS_ZIGBEE_PRECONFIGURED_KEY_REQUIRED            ((sl_status_t)0x0C1D)  
#define SL_STATUS_ZIGBEE_EZSP_ERROR                            ((sl_status_t)0x0C1E)  
#define SL_STATUS_ZIGBEE_ID_DISCOVERY_FAILED                   ((sl_status_t)0x0C1F)  
#define SL_STATUS_ZIGBEE_NO_APS_ACK                            ((sl_status_t)0x0C20)  
#define SL_STATUS_ZIGBEE_APS_MESSAGE_CANCELED                  ((sl_status_t)0x0C21)  
#define SL_STATUS_ZIGBEE_ID_DISCOVERY_NOT_ENABLED              ((sl_status_t)0x0C22)  
#define SL_STATUS_ZIGBEE_ID_DISCOVERY_UNDERWAY                 ((sl_status_t)0x0C23)  
#define SL_STATUS_ZIGBEE_SEND_UNICAST_ROUTE_DISCOVERY_UNDERWAY ((sl_status_t)0x0C24)  
#define SL_STATUS_ZIGBEE_SEND_UNICAST_FAILURE                  ((sl_status_t)0x0C25)  
#define SL_STATUS_ZIGBEE_SEND_UNICAST_NO_ROUTE                 ((sl_status_t)0x0C26)  
#define SL_STATUS_ZIGBEE_BROADCAST_TO_SLEEPY_CHILDREN_TIMEOUT  ((sl_status_t)0x0C27)  
#define SL_STATUS_ZIGBEE_BROADCAST_RELAY_FAILED                ((sl_status_t)0x0C28)  
#define SL_STATUS_ZIGBEE_REJOIN_FAILED_BUT_NETWORK_RESTORED    ((sl_status_t)0x0C29)  

// -----------------------------------------------------------------------------
// Data Types
typedef uint32_t sl_status_t;

// -----------------------------------------------------------------------------
// Functions

#ifdef __cplusplus
extern "C" {
#endif

/********************************************************************************************************
 *                                      sl_status_get_string_n()
 *
 * @brief    Get a copy of the status string associated to the status code passed, up to
 *           'buffer_length' length, if the string associated to the status code is enabled. If not,
 *           the error code number, in hex, prefixed by "SL_STATUS_" will be copied in the buffer
 *           instead.
 *           For example, the buffer would either contain "SL_STATUS_FAIL" if that status string is
 *           enabled, or "SL_STATUS_0x0001" if the string is disabled, as SL_STATUS_FAIL's
 *           value is 0x0001.
 *
 * @param    status         The status code from which to obtain the status string.
 *
 * @param    buffer         Pointer to a buffer in which the status string will be copied. A terminating
 *                          null-character will be appended after the copied status string.
 *
 * @param    buffer_length  Maximum number of characters that can be written in the buffer, including the
 *                          terminating null-character. If the status string would be longer than the
 *                          available length, it will be truncated and a null-terminating character will
 *                          be the last character contained in the buffer.
 *
 * @return                  The number of characters that would have been written if the buffer_length had been
 *                          sufficiently large, not counting the terminating null character.
 *                          If the status code is invalid, 0 or a negative number is returned.
 *                          Notice that only when this returned value is strictly positive and less than
 *                          buffer_length, the status string has been completely written in the buffer.
 *******************************************************************************************************/
int32_t sl_status_get_string_n(sl_status_t status, char *buffer, uint32_t buffer_length);

/********************************************************************************************************
 *                                         sl_status_print()
 *
 * @brief    Print, through printf, the string associated to the passed status code. If the string
 *           associated to the status code is enabled, the status string will be printed, for example
 *           "SL_STATUS_OK". If the string associated to the status code is disabled, the status number,
 *           in hex, prefixed by "SL_STATUS_" will be printed instead, for example "SL_STATUS_0x0000",
 *           as SL_STATUS_OK's value is 0x0000.
 *
 * @param    status         The status code of which to print the status string.
 *******************************************************************************************************/
void sl_status_print(sl_status_t status);

#ifdef __cplusplus
}
#endif

#endif /* SL_STATUS_H */

Macros#

#define
SL_STATUS_SPACE_MASK ((sl_status_t)0xFF00)

sl status space mask.

#define
SL_STATUS_GENERIC_SPACE ((sl_status_t)0x0000)

sl status generic space.

#define
SL_STATUS_PLATFORM_1_SPACE ((sl_status_t)0x0100)

sl status platform 1 space.

#define
SL_STATUS_PLATFORM_2_SPACE ((sl_status_t)0x0200)

sl status platform 2 space.

#define
SL_STATUS_HARDWARE_SPACE ((sl_status_t)0x0300)

sl status hardware space.

#define
SL_STATUS_BLUETOOTH_SPACE ((sl_status_t)0x0400)

sl status bluetooth space.

#define
SL_STATUS_BLUETOOTH_MESH_SPACE ((sl_status_t)0x0500)

sl status bluetooth mesh space.

#define
SL_STATUS_CAN_CANOPEN_SPACE ((sl_status_t)0x0600)

sl status can canopen space.

#define
SL_STATUS_CONNECT_SPACE ((sl_status_t)0x0700)

sl status connect space.

#define
SL_STATUS_NET_SUITE_SPACE ((sl_status_t)0x0800)

sl status net suite space.

#define
SL_STATUS_THREAD_SPACE ((sl_status_t)0x0900)

sl status thread space.

#define
SL_STATUS_USB_SPACE ((sl_status_t)0x0A00)

sl status usb space.

#define
SL_STATUS_WIFI_SPACE ((sl_status_t)0x0B00)

sl status wifi space.

#define
SL_STATUS_ZIGBEE_SPACE ((sl_status_t)0x0C00)

sl status zigbee space.

#define
SL_STATUS_Z_WAVE_SPACE ((sl_status_t)0x0D00)

sl status z wave space.

#define
SL_STATUS_GECKO_OS_1_SPACE ((sl_status_t)0x0E00)

sl status gecko os 1 space.

#define
SL_STATUS_GECKO_OS_2_SPACE ((sl_status_t)0x0F00)

sl status gecko os 2 space.

#define
SL_STATUS_BLUETOOTH_CTRL_SPACE ((sl_status_t)0x1000)

sl status bluetooth ctrl space.

#define
SL_STATUS_BLUETOOTH_ATT_SPACE ((sl_status_t)0x1100)

sl status bluetooth att space.

#define
SL_STATUS_BLUETOOTH_SMP_SPACE ((sl_status_t)0x1200)

sl status bluetooth mesh foundation space.

#define

sl status bluetooth mesh foundation space.

#define
SL_STATUS_WISUN_SPACE ((sl_status_t)0x1400)

sl status wisun space.

#define
SL_STATUS_COMPUTE_SPACE ((sl_status_t)0x1500)

sl status compute space.

#define
SL_STATUS_OK ((sl_status_t)0x0000)

No error.

#define
SL_STATUS_FAIL ((sl_status_t)0x0001)

Generic error.

#define
SL_STATUS_INVALID_STATE ((sl_status_t)0x0002)

Generic invalid state error.

#define
SL_STATUS_NOT_READY ((sl_status_t)0x0003)

Module is not ready for requested operation.

#define
SL_STATUS_BUSY ((sl_status_t)0x0004)

Module is busy and cannot carry out requested operation.

#define
SL_STATUS_IN_PROGRESS ((sl_status_t)0x0005)

Operation is in progress and not yet complete (pass or fail).

#define
SL_STATUS_ABORT ((sl_status_t)0x0006)

Operation aborted.

#define
SL_STATUS_TIMEOUT ((sl_status_t)0x0007)

Operation timed out.

#define
SL_STATUS_PERMISSION ((sl_status_t)0x0008)

Operation not allowed per permissions.

#define
SL_STATUS_WOULD_BLOCK ((sl_status_t)0x0009)

Non-blocking operation would block.

#define
SL_STATUS_IDLE ((sl_status_t)0x000A)

Operation/module is Idle, cannot carry requested operation.

#define
SL_STATUS_IS_WAITING ((sl_status_t)0x000B)

Operation cannot be done while construct is waiting.

#define
SL_STATUS_NONE_WAITING ((sl_status_t)0x000C)

No task/construct waiting/pending for that action/event.

#define
SL_STATUS_SUSPENDED ((sl_status_t)0x000D)

Operation cannot be done while construct is suspended.

#define
SL_STATUS_NOT_AVAILABLE ((sl_status_t)0x000E)

Feature not available due to software configuration.

#define
SL_STATUS_NOT_SUPPORTED ((sl_status_t)0x000F)

Feature not supported.

#define
SL_STATUS_INITIALIZATION ((sl_status_t)0x0010)

Initialization failed.

#define
SL_STATUS_NOT_INITIALIZED ((sl_status_t)0x0011)

Module has not been initialized.

#define
SL_STATUS_ALREADY_INITIALIZED ((sl_status_t)0x0012)

Module has already been initialized.

#define
SL_STATUS_DELETED ((sl_status_t)0x0013)

Object/construct has been deleted.

#define
SL_STATUS_ISR ((sl_status_t)0x0014)

Illegal call from ISR.

#define
SL_STATUS_NETWORK_UP ((sl_status_t)0x0015)

Illegal call because network is up.

#define
SL_STATUS_NETWORK_DOWN ((sl_status_t)0x0016)

Illegal call because network is down.

#define
SL_STATUS_NOT_JOINED ((sl_status_t)0x0017)

Failure due to not being joined in a network.

#define
SL_STATUS_NO_BEACONS ((sl_status_t)0x0018)

Invalid operation as there are no beacons.

#define
SL_STATUS_ALLOCATION_FAILED ((sl_status_t)0x0019)

Generic allocation error.

#define
SL_STATUS_NO_MORE_RESOURCE ((sl_status_t)0x001A)

No more resource available to perform the operation.

#define
SL_STATUS_EMPTY ((sl_status_t)0x001B)

Item/list/queue is empty.

#define
SL_STATUS_FULL ((sl_status_t)0x001C)

Item/list/queue is full.

#define
SL_STATUS_WOULD_OVERFLOW ((sl_status_t)0x001D)

Item would overflow.

#define
SL_STATUS_HAS_OVERFLOWED ((sl_status_t)0x001E)

Item/list/queue has been overflowed.

#define
SL_STATUS_OWNERSHIP ((sl_status_t)0x001F)

Generic ownership error.

#define
SL_STATUS_IS_OWNER ((sl_status_t)0x0020)

Already/still owning resource.

#define
SL_STATUS_INVALID_PARAMETER ((sl_status_t)0x0021)

Generic invalid argument or consequence of invalid argument.

#define
SL_STATUS_NULL_POINTER ((sl_status_t)0x0022)

Invalid null pointer received as argument.

#define
SL_STATUS_INVALID_CONFIGURATION ((sl_status_t)0x0023)

Invalid configuration provided.

#define
SL_STATUS_INVALID_MODE ((sl_status_t)0x0024)

Invalid mode.

#define
SL_STATUS_INVALID_HANDLE ((sl_status_t)0x0025)

Invalid handle.

#define
SL_STATUS_INVALID_TYPE ((sl_status_t)0x0026)

Invalid type for operation.

#define
SL_STATUS_INVALID_INDEX ((sl_status_t)0x0027)

Invalid index.

#define
SL_STATUS_INVALID_RANGE ((sl_status_t)0x0028)

Invalid range.

#define
SL_STATUS_INVALID_KEY ((sl_status_t)0x0029)

Invalid key.

#define
SL_STATUS_INVALID_CREDENTIALS ((sl_status_t)0x002A)

Invalid credentials.

#define
SL_STATUS_INVALID_COUNT ((sl_status_t)0x002B)

Invalid count.

#define
SL_STATUS_INVALID_SIGNATURE ((sl_status_t)0x002C)

Invalid signature / verification failed.

#define
SL_STATUS_NOT_FOUND ((sl_status_t)0x002D)

Item could not be found.

#define
SL_STATUS_ALREADY_EXISTS ((sl_status_t)0x002E)

Item already exists.

#define
SL_STATUS_IO ((sl_status_t)0x002F)

Generic I/O failure.

#define
SL_STATUS_IO_TIMEOUT ((sl_status_t)0x0030)

I/O failure due to timeout.

#define
SL_STATUS_TRANSMIT ((sl_status_t)0x0031)

Generic transmission error.

#define
SL_STATUS_TRANSMIT_UNDERFLOW ((sl_status_t)0x0032)

Transmit underflowed.

#define
SL_STATUS_TRANSMIT_INCOMPLETE ((sl_status_t)0x0033)

Transmit is incomplete.

#define
SL_STATUS_TRANSMIT_BUSY ((sl_status_t)0x0034)

Transmit is busy.

#define
SL_STATUS_RECEIVE ((sl_status_t)0x0035)

Generic reception error.

#define
SL_STATUS_OBJECT_READ ((sl_status_t)0x0036)

Failed to read on/via given object.

#define
SL_STATUS_OBJECT_WRITE ((sl_status_t)0x0037)

Failed to write on/via given object.

#define
SL_STATUS_MESSAGE_TOO_LONG ((sl_status_t)0x0038)

Message is too long.

#define

EEPROM MFG version mismatch.

#define

EEPROM Stack version mismatch.

#define
SL_STATUS_FLASH_WRITE_INHIBITED ((sl_status_t)0x003B)

Flash write is inhibited.

#define
SL_STATUS_FLASH_VERIFY_FAILED ((sl_status_t)0x003C)

Flash verification failed.

#define
SL_STATUS_FLASH_PROGRAM_FAILED ((sl_status_t)0x003D)

Flash programming failed.

#define
SL_STATUS_FLASH_ERASE_FAILED ((sl_status_t)0x003E)

Flash erase failed.

#define
SL_STATUS_MAC_NO_DATA ((sl_status_t)0x003F)

MAC no data.

#define
SL_STATUS_MAC_NO_ACK_RECEIVED ((sl_status_t)0x0040)

MAC no ACK received.

#define
SL_STATUS_MAC_INDIRECT_TIMEOUT ((sl_status_t)0x0041)

MAC indirect timeout.

#define
SL_STATUS_MAC_UNKNOWN_HEADER_TYPE ((sl_status_t)0x0042)

MAC unknown header type.

#define
SL_STATUS_MAC_ACK_HEADER_TYPE ((sl_status_t)0x0043)

MAC ACK unknown header type.

#define

MAC command transmit failure.

#define

Error in open NVM.

#define

Image checksum is not valid.

#define
SL_STATUS_SECURITY_DECRYPT_ERROR ((sl_status_t)0x0047)

Decryption failed.

#define
SL_STATUS_COMMAND_IS_INVALID ((sl_status_t)0x0048)

Command was not recognized.

#define
SL_STATUS_COMMAND_TOO_LONG ((sl_status_t)0x0049)

Command or parameter maximum length exceeded.

#define
SL_STATUS_COMMAND_INCOMPLETE ((sl_status_t)0x004A)

Data received does not form a complete command.

#define
SL_STATUS_BUS_ERROR ((sl_status_t)0x004B)

Bus error, e.g. invalid DMA address.

#define
SL_STATUS_CCA_FAILURE ((sl_status_t)0x004C)

CCA failure.

#define
SL_STATUS_MAC_SCANNING ((sl_status_t)0x004D)

MAC scanning.

#define
SL_STATUS_MAC_INCORRECT_SCAN_TYPE ((sl_status_t)0x004E)

MAC incorrect scan type.

#define
SL_STATUS_INVALID_CHANNEL_MASK ((sl_status_t)0x004F)

Invalid channel mask.

#define
SL_STATUS_BAD_SCAN_DURATION ((sl_status_t)0x0050)

Bad scan duration.

#define
SL_STATUS_MAC_TRANSMIT_QUEUE_FULL ((sl_status_t)0x0053)

The MAC transmit queue is full.

#define
SL_STATUS_TRANSMIT_SCHEDULER_FAIL ((sl_status_t)0x0054)

The transmit attempt failed because the radio scheduler could not find a slot to transmit this packet in or a higher priority event interrupted it.

#define

An unsupported channel setting was specified.

#define
SL_STATUS_TRANSMIT_INVALID_POWER ((sl_status_t)0x0056)

An unsupported power setting was specified.

#define
SL_STATUS_TRANSMIT_ACK_RECEIVED ((sl_status_t)0x0057)

The expected ACK was received after the last transmission.

#define
SL_STATUS_TRANSMIT_BLOCKED ((sl_status_t)0x0058)

The transmit attempt was blocked from going over the air. Typically this is due to the Radio Hold Off (RHO) or Coexistence plugins as they can prevent transmits based on external signals.

#define
SL_STATUS_NVM3_ALIGNMENT_INVALID ((sl_status_t)0x0059)

The initialization was aborted as the NVM3 instance is not aligned properly in memory.

#define
SL_STATUS_NVM3_SIZE_TOO_SMALL ((sl_status_t)0x005A)

The initialization was aborted as the size of the NVM3 instance is too small.

#define

The initialization was aborted as the NVM3 page size is not supported.

#define
SL_STATUS_NVM3_TOKEN_INIT_FAILED ((sl_status_t)0x005C)

The application that there was an error initializing some of the tokens.

#define

The initialization was aborted as the NVM3 instance was already opened with other parameters.

#define
SL_STATUS_NVM3_NO_VALID_PAGES ((sl_status_t)0x005E)

Initialization aborted, no valid page found.

#define

The object size is not supported.

#define
SL_STATUS_NVM3_OBJECT_IS_NOT_DATA ((sl_status_t)0x0060)

Trying to access a data object which is currently a counter object.

#define

Trying to access a counter object which is currently a data object.

#define
SL_STATUS_NVM3_WRITE_DATA_SIZE ((sl_status_t)0x0062)

The object is too large.

#define
SL_STATUS_NVM3_READ_DATA_SIZE ((sl_status_t)0x0063)

Trying to read with a length different from actual object size.

#define
SL_STATUS_NVM3_INIT_WITH_FULL_NVM ((sl_status_t)0x0064)

The module was opened with a full NVM.

#define
SL_STATUS_NVM3_RESIZE_PARAMETER ((sl_status_t)0x0065)

Illegal parameter.

#define

Not enough NVM to complete resize.

#define
SL_STATUS_NVM3_ERASE_COUNT_ERROR ((sl_status_t)0x0067)

Erase counts are not valid.

#define
SL_STATUS_NVM3_NVM_ACCESS ((sl_status_t)0x0068)

A NVM function call was failing.

#define

Write to memory that is not erased.

#define
SL_STATUS_NVM3_INVALID_ADDR ((sl_status_t)0x006E)

Invalid NVM address.

#define
SL_STATUS_NVM3_KEY_MISMATCH ((sl_status_t)0x006F)

Key validation failure.

#define
SL_STATUS_NVM3_SIZE_ERROR ((sl_status_t)0x0070)

Size mismatch error.

#define
SL_STATUS_NVM3_EMULATOR ((sl_status_t)0x0071)

Emulator error.

#define
SL_STATUS_SECURITY_ENCRYPT_ERROR ((sl_status_t)0x0072)

Encryption failed.

#define
SL_STATUS_SECURITY_KEY_ERROR ((sl_status_t)0x0073)

Error in obtaining crypto key.

#define

Error in obtaining random number.

#define
SL_STATUS_BT_OUT_OF_BONDS ((sl_status_t)0x0402)

Bonding procedure can't be started because device has no space left for bond.

#define
SL_STATUS_BT_UNSPECIFIED ((sl_status_t)0x0403)

Unspecified error.

#define
SL_STATUS_BT_HARDWARE ((sl_status_t)0x0404)

Hardware failure.

#define
SL_STATUS_BT_NO_BONDING ((sl_status_t)0x0406)

The bonding does not exist.

#define
SL_STATUS_BT_CRYPTO ((sl_status_t)0x0407)

Error using crypto functions.

#define
SL_STATUS_BT_DATA_CORRUPTED ((sl_status_t)0x0408)

Data was corrupted.

#define
SL_STATUS_BT_INVALID_SYNC_HANDLE ((sl_status_t)0x040A)

Invalid periodic advertising sync handle.

#define

Bluetooth cannot be used on this hardware.

#define
SL_STATUS_BT_RADIO ((sl_status_t)0x040C)

Error received from radio.

#define

Returned when remote disconnects the connection-oriented channel by sending disconnection request.

#define

Returned when local host disconnect the connection-oriented channel by sending disconnection request.

#define
SL_STATUS_BT_L2CAP_CID_NOT_EXIST ((sl_status_t)0x040F)

Returned when local host did not find a connection-oriented channel with given destination CID.

#define

Returned when connection-oriented channel disconnected due to LE connection is dropped.

#define

Returned when connection-oriented channel disconnected due to remote end send data even without credit.

#define

Returned when connection-oriented channel disconnected due to remote end send flow control credits exceed 65535.

#define

Returned when connection-oriented channel has run out of flow control credit and local application still trying to send data.

#define

Returned when connection-oriented channel has not received connection response message within maximum timeout.

#define
SL_STATUS_BT_L2CAP_INVALID_CID ((sl_status_t)0x0416)

Returned when local host received a connection-oriented channel connection response with an invalid destination CID.

#define
SL_STATUS_BT_L2CAP_WRONG_STATE ((sl_status_t)0x0417)

Returned when local host application tries to send a command which is not suitable for L2CAP channel's current state.

#define
SL_STATUS_BT_PS_STORE_FULL ((sl_status_t)0x041B)

Flash reserved for PS store is full.

#define
SL_STATUS_BT_PS_KEY_NOT_FOUND ((sl_status_t)0x041C)

PS key not found.

#define

Mismatched or insufficient security level.

#define

Encryption/decryption operation failed.

#define

Controller has received unrecognized command.

#define

Connection does not exist, or connection open request was cancelled.

#define

Controller has failed in a manner that cannot be described with any other error code.

#define
SL_STATUS_BT_CTRL_PAGE_TIMEOUT ((sl_status_t)0x1004)

Page has timed out out because of the Page Timeout configuration parameter.

#define

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.

#define

Pairing failed because of missing PIN, or authentication failed because of missing Key.

#define

Controller is out of memory.

#define

Link supervision timeout has expired.

#define

Controller is at limit of connections it can support.

#define

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.

#define

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.

#define

Command requested cannot be executed because the Controller is in a state where it cannot process this command at this time.

#define

The Connection Rejected Due To Limited Resources error code indicates that an incoming connection was rejected due to limited resources.

#define

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.

#define

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.

#define

The Connection Accept Timeout has been exceeded for this connection attempt.

#define

A feature or parameter value in the HCI command is not supported.

#define

Command contained invalid parameters.

#define

User on the remote device terminated the connection.

#define

The remote device terminated the connection because of low resources.

#define

Remote Device Terminated Connection due to Power Off.

#define

Local device terminated the connection.

#define

The Controller is disallowing an authentication or pairing procedure because too little time has elapsed since the last authentication or pairing attempt failed.

#define

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.

#define
SL_STATUS_BT_CTRL_UNKNOWN_LMP_PDU ((sl_status_t)0x1019)

he Controller has received an unknown LMP opcode.

#define

The remote device does not support the feature associated with the issued command.

#define

The offset requested in the LMP_SCO_LINK_REQ PDU has been rejected.

#define

The interval requested in the LMP_SCO_LINK_REQ PDU has been rejected.

#define

The air mode requested in the LMP_SCO_LINK_REQ PDU has been rejected.

#define

Indicates that some LMP PDU / LL Control PDU parameters were invalid.

#define

No other error code specified is appropriate to use.

#define

An LMP PDU or an LL Control PDU contains at least one parameter value that is not supported by the Controller at this time.

#define

Controller will not allow a role change at this time.

#define

Connection terminated due to link-layer procedure timeout.

#define

LL procedure has collided with the same transaction or procedure that is already in progress.

#define

Controller sent an LMP PDU with an opcode that was not allowed.

#define

The requested encryption mode is not acceptable at this time.

#define

Link key cannot be changed because a fixed unit key is being used.

#define

The requested Quality of Service is not supported.

#define
SL_STATUS_BT_CTRL_INSTANT_PASSED ((sl_status_t)0x1028)

LMP PDU or LL PDU that includes an instant cannot be performed because the instant when this would have occurred has passed.

#define

It was not possible to pair as a unit key was requested and it is not supported.

#define

LMP transaction was started that collides with an ongoing transaction.

#define

The specified quality of service parameters could not be accepted at this time, but other parameters may be acceptable.

#define
SL_STATUS_BT_CTRL_QOS_REJECTED ((sl_status_t)0x102D)

The specified quality of service parameters cannot be accepted and QoS negotiation should be terminated.

#define

The Controller cannot perform channel assessment because it is not supported.

#define

The HCI command or LMP PDU sent is only possible on an encrypted link.

#define

A parameter value requested is outside the mandatory range of parameters for the given HCI command or LMP PDU.

#define

Role Switch is pending.

#define

The current Synchronous negotiation was terminated with the negotiation state set to Reserved Slot Violation.

#define

Role switch was attempted but it failed and the original piconet structure is restored.

#define

The extended inquiry response is too large to fit in any of the packet types supported by the Controller.

#define

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.

#define

The Host is busy with another pairing operation and unable to support the requested pairing. The receiving device should retry pairing again later.

#define

The Controller could not calculate an appropriate value for the Channel selection operation.

#define
SL_STATUS_BT_CTRL_CONTROLLER_BUSY ((sl_status_t)0x103A)

Operation was rejected because the controller is busy and unable to process the request.

#define

Remote device terminated the connection because of an unacceptable connection interval.

#define

Advertising for a fixed duration completed or, for directed advertising, that advertising completed without a connection being created.

#define

Connection was terminated because the Message Integrity Check (MIC) failed on a received packet.

#define

LL initiated a connection but the connection has failed to be established. Controller did not receive any packets from remote end.

#define

The MAC of the 802.11 AMP was requested to connect to a peer, but the connection failed.

#define

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.

#define

The LMP PDU is rejected because the Type 0 submap is not currently defined.

#define

A command was sent from the Host that should identify an Advertising or Sync handle, but the Advertising or Sync handle does not exist.

#define
SL_STATUS_BT_CTRL_LIMIT_REACHED ((sl_status_t)0x1043)

Number of operations requested has been reached and has indicated the completion of the activity (e.g., advertising or scanning).

#define

A request to the Controller issued by the Host and still pending was successfully canceled.

#define
SL_STATUS_BT_CTRL_PACKET_TOO_LONG ((sl_status_t)0x1045)

An attempt was made to send or receive a packet that exceeds the maximum allowed packet length.

#define
SL_STATUS_BT_CTRL_TOO_LATE ((sl_status_t)0x1046)

Information was provided too late to the controller.

#define
SL_STATUS_BT_CTRL_TOO_EARLY ((sl_status_t)0x1047)

Information was provided too early to the controller.

#define

Indicates that the result of the requested operation would yield too few physical channels.

#define
SL_STATUS_BT_ATT_INVALID_HANDLE ((sl_status_t)0x1101)

The attribute handle given was not valid on this server.

#define

The attribute cannot be read.

#define

The attribute cannot be written.

#define
SL_STATUS_BT_ATT_INVALID_PDU ((sl_status_t)0x1104)

The attribute PDU was invalid.

#define

The attribute requires authentication before it can be read or written.

#define

Attribute Server does not support the request received from the client.

#define
SL_STATUS_BT_ATT_INVALID_OFFSET ((sl_status_t)0x1107)

Offset specified was past the end of the attribute.

#define

The attribute requires authorization before it can be read or written.

#define

Too many prepare writes have been queued.

#define
SL_STATUS_BT_ATT_ATT_NOT_FOUND ((sl_status_t)0x110A)

No attribute found within the given attribute handle range.

#define
SL_STATUS_BT_ATT_ATT_NOT_LONG ((sl_status_t)0x110B)

The attribute cannot be read or written using the Read Blob Request.

#define

The Encryption Key Size used for encrypting this link is too short.

#define
SL_STATUS_BT_ATT_INSUFFICIENT_ENC_KEY_SIZE SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT

DeprecatedUse SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT instead.

#define

The attribute value length is invalid for the operation.

#define
SL_STATUS_BT_ATT_UNLIKELY_ERROR ((sl_status_t)0x110E)

The attribute request that was requested has encountered an error that was unlikely, and therefore could not be completed as requested.

#define

The attribute requires encryption before it can be read or written.

#define

The attribute type is not a supported grouping attribute as defined by a higher layer specification.

#define

Insufficient Resources to complete the request.

#define
SL_STATUS_BT_ATT_OUT_OF_SYNC ((sl_status_t)0x1112)

The server requests the client to rediscover the database.

#define

The attribute parameter value was not allowed.

#define
SL_STATUS_BT_ATT_APPLICATION ((sl_status_t)0x1180)

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.

#define

The requested write operation cannot be fulfilled for reasons other than permissions.

#define

The Client Characteristic Configuration descriptor is not configured according to the requirements of the profile or service.

#define

The profile or service request cannot be serviced because an operation that has been previously triggered is still in progress.

#define
SL_STATUS_BT_ATT_OUT_OF_RANGE ((sl_status_t)0x11FF)

The attribute value is out of range as defined by a profile or service specification.

#define

The user input of passkey failed, for example, the user cancelled the operation.

#define

Out of Band data is not available for authentication.

#define

The pairing procedure cannot be performed as authentication requirements cannot be met due to IO capabilities of one or both devices.

#define

The confirm value does not match the calculated compare value.

#define

Pairing is not supported by the device.

#define

The resultant encryption key size is insufficient for the security requirements of this device.

#define

The SMP command received is not supported on this device.

#define

Pairing failed due to an unspecified reason.

#define

Pairing or authentication procedure is disallowed because too little time has elapsed since last pairing request or security request.

#define

The Invalid Parameters error code indicates: the command length is invalid or a parameter is outside of the specified range.

#define

Indicates to the remote device that the DHKey Check value received doesn't match the one calculated by the local device.

#define

Indicates that the confirm values in the numeric comparison protocol do not match.

#define

Indicates that the pairing over the LE transport failed due to a Pairing Request sent over the BR/EDR transport in process.

#define

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.

#define
SL_STATUS_BT_SMP_KEY_REJECTED ((sl_status_t)0x120F)

Indicates that the device chose not to accept a distributed key.

#define
SL_STATUS_BT_SMP_BUSY ((sl_status_t)0x1210)

Indicates that the device is not ready to perform a pairing procedure.

#define
SL_STATUS_BT_MESH_ALREADY_EXISTS ((sl_status_t)0x0501)

Returned when trying to add a key or some other unique resource with an ID which already exists.

#define
SL_STATUS_BT_MESH_DOES_NOT_EXIST ((sl_status_t)0x0502)

Returned when trying to manipulate a key or some other resource with an ID which does not exist.

#define
SL_STATUS_BT_MESH_LIMIT_REACHED ((sl_status_t)0x0503)

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.

#define
SL_STATUS_BT_MESH_INVALID_ADDRESS ((sl_status_t)0x0504)

Returned when trying to use a reserved address or add a "pre-provisioned" device using an address already used by some other device.

#define
SL_STATUS_BT_MESH_MALFORMED_DATA ((sl_status_t)0x0505)

In a BGAPI response, the user supplied malformed data; in a BGAPI event, the remote end responded with malformed or unrecognized data.

#define

An attempt was made to initialize a subsystem that was already initialized.

#define
SL_STATUS_BT_MESH_NOT_INITIALIZED ((sl_status_t)0x0507)

An attempt was made to use a subsystem that wasn't initialized yet. Call the subsystem's init function first.

#define
SL_STATUS_BT_MESH_NO_FRIEND_OFFER ((sl_status_t)0x0508)

Returned when trying to establish a friendship as a Low Power Node, but no acceptable friend offer message was received.

#define

Provisioning link was unexpectedly closed before provisioning was complete.

#define

An unrecognized provisioning PDU was received.

#define

A provisioning PDU with wrong length or containing field values that are out of bounds was received.

#define

An unexpected (out of sequence) provisioning PDU was received.

#define

The computed confirmation value did not match the expected value.

#define

Provisioning could not be continued due to insufficient resources.

#define

The provisioning data block could not be decrypted.

#define

An unexpected error happened during provisioning.

#define

Device could not assign unicast addresses to all of its elements.

#define

Returned when trying to reuse an address of a previously deleted device before an IV Index Update has been executed.

#define

Returned when trying to assign an address that is used by one of the devices in the Device Database, or by the Provisioner itself.

#define

Application key or publish address are not set.

#define

Application key is not bound to a model.

#define

Returned when address in request was not valid.

#define

Returned when model identified is not found for a given element.

#define

Returned when the key identified by AppKeyIndex is not stored in the node.

#define

Returned when the key identified by NetKeyIndex is not stored in the node.

#define

Returned when The node cannot serve the request due to insufficient resources.

#define

Returned when the key identified is already stored in the node and the new NetKey value is different.

#define

Returned when the model does not support the publish mechanism.

#define

Returned when the model does not support the subscribe mechanism.

#define

Returned when storing of the requested parameters failed.

#define

Returned when requested setting is not supported.

#define

Returned when the requested update operation cannot be performed due to general constraints.

#define

Returned when the requested delete operation cannot be performed due to general constraints.

#define

Returned when the requested bind operation cannot be performed due to general constraints.

#define

Returned when The node cannot start advertising with Node Identity or Proxy since the maximum number of parallel advertising is reached.

#define

Returned when the requested state cannot be set.

#define

Returned when an unspecified error took place.

#define

Returned when the NetKeyIndex and AppKeyIndex combination is not valid for a Config AppKey Update.

#define
SL_STATUS_WIFI_INVALID_KEY ((sl_status_t)0x0B01)

Invalid firmware keyset.

#define

The firmware download took too long.

#define

Unknown request ID or wrong interface ID used.

#define
SL_STATUS_WIFI_WARNING ((sl_status_t)0x0B04)

The request is successful but some parameters have been ignored.

#define

No Packets waiting to be received.

#define
SL_STATUS_WIFI_SLEEP_GRANTED ((sl_status_t)0x0B08)

The sleep mode is granted.

#define
SL_STATUS_WIFI_SLEEP_NOT_GRANTED ((sl_status_t)0x0B09)

The WFx does not go back to sleep.

#define

The SecureLink MAC key was not found.

#define

The SecureLink MAC key is already installed in OTP.

#define

The SecureLink MAC key cannot be installed in RAM.

#define

The SecureLink MAC key installation failed.

#define

SecureLink key (re)negotiation failed.

#define
SL_STATUS_WIFI_WRONG_STATE ((sl_status_t)0x0B18)

The device is in an inappropriate state to perform the request.

#define

The request failed due to regulatory limitations.

#define
SL_STATUS_WIFI_NO_MATCHING_AP ((sl_status_t)0x0B1A)

The connection request failed because no suitable AP was found.

#define
SL_STATUS_WIFI_CONNECTION_ABORTED ((sl_status_t)0x0B1B)

The connection request was aborted by host.

#define
SL_STATUS_WIFI_CONNECTION_TIMEOUT ((sl_status_t)0x0B1C)

The connection request failed because of a timeout.

#define

The connection request failed because the AP rejected the device.

#define

The connection request failed because the WPA handshake did not complete successfully.

#define
SL_STATUS_WIFI_RETRY_EXCEEDED ((sl_status_t)0x0B1F)

The request failed because the retry limit was exceeded.

#define

The request failed because the MSDU life time was exceeded.

#define
SL_STATUS_COMPUTE_DRIVER_FAULT ((sl_status_t)0x1501)

Critical fault.

#define
SL_STATUS_COMPUTE_DRIVER_ALU_NAN ((sl_status_t)0x1502)

ALU operation output NaN.

#define

ALU numeric overflow.

#define

ALU numeric underflow.

#define

Overflow during array store.

#define

Underflow during array store conversion.

#define

Infinity encountered during array store conversion.

#define

NaN encountered during array store conversion.

#define
SL_STATUS_COMPUTE_MATH_NAN ((sl_status_t)0x1512)

MATH NaN encountered.

#define
SL_STATUS_COMPUTE_MATH_INFINITY ((sl_status_t)0x1513)

MATH Infinity encountered.

#define
SL_STATUS_COMPUTE_MATH_OVERFLOW ((sl_status_t)0x1514)

MATH numeric overflow.

#define
SL_STATUS_COMPUTE_MATH_UNDERFLOW ((sl_status_t)0x1515)

MATH numeric underflow.

#define

Packet is dropped by packet-handoff callbacks.

#define
SL_STATUS_ZIGBEE_DELIVERY_FAILED ((sl_status_t)0x0C02)

The APS layer attempted to send or deliver a message and failed.

#define

The maximum number of in-flight messages ::EMBER_APS_UNICAST_MESSAGE_COUNT has been reached.

#define

The application is trying to delete or overwrite a binding that is in use.

#define

The application is trying to overwrite an address table entry that is in use.

#define
SL_STATUS_ZIGBEE_MOVE_FAILED ((sl_status_t)0x0C06)

After moving, a mobile node's attempt to re-establish contact with the network failed.

#define
SL_STATUS_ZIGBEE_NODE_ID_CHANGED ((sl_status_t)0x0C07)

The local node ID has changed. The application can get the new node ID by calling ::sl_zigbee_get_node_id()

#define

The chosen security level is not supported by the stack.

#define

An error occurred when trying to encrypt at the APS Level.

#define

An error occurred when trying to encrypt at the APS Level.

#define

There was an attempt to form or join a network with security without calling ::sl_zigbee_set_initial_security_state() first.

#define

There was an attempt to broadcast a key switch too quickly after broadcasting the next network key. The Trust Center must wait at least a period equal to the broadcast timeout so that all routers have a chance to receive the broadcast of the new network key.

#define

The received signature corresponding to the message that was passed to the CBKE Library failed verification and is not valid.

#define

The message could not be sent because the link key corresponding to the destination is not authorized for use in APS data messages.

#define

The application tried to use a binding that has been remotely modified and the change has not yet been reported to the application.

#define

The EUI of the Trust center has changed due to a successful rejoin after TC Swapout.

#define

A Trust Center Swapout Rejoin has occurred without the EUI of the TC changing.

#define

An attempt to generate random bytes failed because of insufficient random data from the radio.

#define

A Zigbee route error command frame was received indicating that a source routed message from this node failed en route.

#define

A Zigbee route error command frame was received indicating that a message sent to this node along a many-to-one route failed en route.

#define

A critical and fatal error indicating that the version of the stack trying to run does not match with the chip it's running on.

#define
SL_STATUS_ZIGBEE_PAN_ID_CHANGED ((sl_status_t)0x0C16)

The local PAN ID has changed. The application can get the new PAN ID by calling ::emberGetPanId()

#define
SL_STATUS_ZIGBEE_CHANNEL_CHANGED ((sl_status_t)0x0C17)

The channel has changed.

#define
SL_STATUS_ZIGBEE_NETWORK_OPENED ((sl_status_t)0x0C18)

The network has been opened for joining.

#define
SL_STATUS_ZIGBEE_NETWORK_CLOSED ((sl_status_t)0x0C19)

The network has been closed for joining.

#define

An attempt was made to join a Secured Network using a pre-configured key, but the Trust Center sent back a Network Key in-the-clear when an encrypted Network Key was required. (::EMBER_REQUIRE_ENCRYPTED_KEY)

#define

An attempt was made to join a Secured Network, but the device did not receive a Network Key.

#define

After a device joined a Secured Network, a Link Key was requested (::EMBER_GET_LINK_KEY_WHEN_JOINING) but no response was ever received.

#define

An attempt was made to join a Secured Network without a pre-configured key, but the Trust Center sent encrypted data using a pre-configured key.

#define
SL_STATUS_ZIGBEE_EZSP_ERROR ((sl_status_t)0x0C1E)

A Zigbee EZSP error has occured. Track the origin and corresponding EzspStatus for more info.

#define

Node ID discovery failed.

#define
SL_STATUS_ZIGBEE_NO_APS_ACK ((sl_status_t)0x0C20)

Message was sent but no APS ACK received.

#define

APS message was canceled.

#define

Node ID discovery not enabled.

#define

Message was not sent, Node ID discovery is underway.

#define

The message was not sent because a route discovery is currently underway. There is no route to the target until the route discovery completes.

#define

Radius is 0 or message has been dropped because route request failed or failed to submit message to tx queue.

#define

No active route to the destination.

#define

Broadcast message timeout while waiting for sleepy children to poll.

#define

Expected a neighbor to relay the message, but none did.

#define

On a router, this indicates that a network rejoin attempt was made and did not succeed, and that the router is resuming operation on its current network. This network status is always followed by a SL_STATUS_NETWORK_UP status.

Typedefs#

typedef uint32_t

define global status variable.

Functions#

int32_t
sl_status_get_string_n(sl_status_t status, char *buffer, uint32_t buffer_length)
void
sl_status_print(sl_status_t status)

Macro Definition Documentation#

SL_STATUS_SPACE_MASK#

#define SL_STATUS_SPACE_MASK
Value:
((sl_status_t)0xFF00)

sl status space mask.


SL_STATUS_GENERIC_SPACE#

#define SL_STATUS_GENERIC_SPACE
Value:
((sl_status_t)0x0000)

sl status generic space.


SL_STATUS_PLATFORM_1_SPACE#

#define SL_STATUS_PLATFORM_1_SPACE
Value:
((sl_status_t)0x0100)

sl status platform 1 space.


SL_STATUS_PLATFORM_2_SPACE#

#define SL_STATUS_PLATFORM_2_SPACE
Value:
((sl_status_t)0x0200)

sl status platform 2 space.


SL_STATUS_HARDWARE_SPACE#

#define SL_STATUS_HARDWARE_SPACE
Value:
((sl_status_t)0x0300)

sl status hardware space.


SL_STATUS_BLUETOOTH_SPACE#

#define SL_STATUS_BLUETOOTH_SPACE
Value:
((sl_status_t)0x0400)

sl status bluetooth space.


SL_STATUS_BLUETOOTH_MESH_SPACE#

#define SL_STATUS_BLUETOOTH_MESH_SPACE
Value:
((sl_status_t)0x0500)

sl status bluetooth mesh space.


SL_STATUS_CAN_CANOPEN_SPACE#

#define SL_STATUS_CAN_CANOPEN_SPACE
Value:
((sl_status_t)0x0600)

sl status can canopen space.


SL_STATUS_CONNECT_SPACE#

#define SL_STATUS_CONNECT_SPACE
Value:
((sl_status_t)0x0700)

sl status connect space.


SL_STATUS_NET_SUITE_SPACE#

#define SL_STATUS_NET_SUITE_SPACE
Value:
((sl_status_t)0x0800)

sl status net suite space.


SL_STATUS_THREAD_SPACE#

#define SL_STATUS_THREAD_SPACE
Value:
((sl_status_t)0x0900)

sl status thread space.


SL_STATUS_USB_SPACE#

#define SL_STATUS_USB_SPACE
Value:
((sl_status_t)0x0A00)

sl status usb space.


SL_STATUS_WIFI_SPACE#

#define SL_STATUS_WIFI_SPACE
Value:
((sl_status_t)0x0B00)

sl status wifi space.


SL_STATUS_ZIGBEE_SPACE#

#define SL_STATUS_ZIGBEE_SPACE
Value:
((sl_status_t)0x0C00)

sl status zigbee space.


SL_STATUS_Z_WAVE_SPACE#

#define SL_STATUS_Z_WAVE_SPACE
Value:
((sl_status_t)0x0D00)

sl status z wave space.


SL_STATUS_GECKO_OS_1_SPACE#

#define SL_STATUS_GECKO_OS_1_SPACE
Value:
((sl_status_t)0x0E00)

sl status gecko os 1 space.


SL_STATUS_GECKO_OS_2_SPACE#

#define SL_STATUS_GECKO_OS_2_SPACE
Value:
((sl_status_t)0x0F00)

sl status gecko os 2 space.


SL_STATUS_BLUETOOTH_CTRL_SPACE#

#define SL_STATUS_BLUETOOTH_CTRL_SPACE
Value:
((sl_status_t)0x1000)

sl status bluetooth ctrl space.


SL_STATUS_BLUETOOTH_ATT_SPACE#

#define SL_STATUS_BLUETOOTH_ATT_SPACE
Value:
((sl_status_t)0x1100)

sl status bluetooth att space.


SL_STATUS_BLUETOOTH_SMP_SPACE#

#define SL_STATUS_BLUETOOTH_SMP_SPACE
Value:
((sl_status_t)0x1200)

sl status bluetooth mesh foundation space.


SL_STATUS_BLUETOOTH_MESH_FOUNDATION_SPACE#

#define SL_STATUS_BLUETOOTH_MESH_FOUNDATION_SPACE
Value:
((sl_status_t)0x1300)

sl status bluetooth mesh foundation space.


SL_STATUS_WISUN_SPACE#

#define SL_STATUS_WISUN_SPACE
Value:
((sl_status_t)0x1400)

sl status wisun space.


SL_STATUS_COMPUTE_SPACE#

#define SL_STATUS_COMPUTE_SPACE
Value:
((sl_status_t)0x1500)

sl status compute space.


SL_STATUS_OK#

#define SL_STATUS_OK
Value:
((sl_status_t)0x0000)

No error.


SL_STATUS_FAIL#

#define SL_STATUS_FAIL
Value:
((sl_status_t)0x0001)

Generic error.


SL_STATUS_INVALID_STATE#

#define SL_STATUS_INVALID_STATE
Value:
((sl_status_t)0x0002)

Generic invalid state error.


SL_STATUS_NOT_READY#

#define SL_STATUS_NOT_READY
Value:
((sl_status_t)0x0003)

Module is not ready for requested operation.


SL_STATUS_BUSY#

#define SL_STATUS_BUSY
Value:
((sl_status_t)0x0004)

Module is busy and cannot carry out requested operation.


SL_STATUS_IN_PROGRESS#

#define SL_STATUS_IN_PROGRESS
Value:
((sl_status_t)0x0005)

Operation is in progress and not yet complete (pass or fail).


SL_STATUS_ABORT#

#define SL_STATUS_ABORT
Value:
((sl_status_t)0x0006)

Operation aborted.


SL_STATUS_TIMEOUT#

#define SL_STATUS_TIMEOUT
Value:
((sl_status_t)0x0007)

Operation timed out.


SL_STATUS_PERMISSION#

#define SL_STATUS_PERMISSION
Value:
((sl_status_t)0x0008)

Operation not allowed per permissions.


SL_STATUS_WOULD_BLOCK#

#define SL_STATUS_WOULD_BLOCK
Value:
((sl_status_t)0x0009)

Non-blocking operation would block.


SL_STATUS_IDLE#

#define SL_STATUS_IDLE
Value:
((sl_status_t)0x000A)

Operation/module is Idle, cannot carry requested operation.


SL_STATUS_IS_WAITING#

#define SL_STATUS_IS_WAITING
Value:
((sl_status_t)0x000B)

Operation cannot be done while construct is waiting.


SL_STATUS_NONE_WAITING#

#define SL_STATUS_NONE_WAITING
Value:
((sl_status_t)0x000C)

No task/construct waiting/pending for that action/event.


SL_STATUS_SUSPENDED#

#define SL_STATUS_SUSPENDED
Value:
((sl_status_t)0x000D)

Operation cannot be done while construct is suspended.


SL_STATUS_NOT_AVAILABLE#

#define SL_STATUS_NOT_AVAILABLE
Value:
((sl_status_t)0x000E)

Feature not available due to software configuration.


SL_STATUS_NOT_SUPPORTED#

#define SL_STATUS_NOT_SUPPORTED
Value:
((sl_status_t)0x000F)

Feature not supported.


SL_STATUS_INITIALIZATION#

#define SL_STATUS_INITIALIZATION
Value:
((sl_status_t)0x0010)

Initialization failed.


SL_STATUS_NOT_INITIALIZED#

#define SL_STATUS_NOT_INITIALIZED
Value:
((sl_status_t)0x0011)

Module has not been initialized.


SL_STATUS_ALREADY_INITIALIZED#

#define SL_STATUS_ALREADY_INITIALIZED
Value:
((sl_status_t)0x0012)

Module has already been initialized.


SL_STATUS_DELETED#

#define SL_STATUS_DELETED
Value:
((sl_status_t)0x0013)

Object/construct has been deleted.


SL_STATUS_ISR#

#define SL_STATUS_ISR
Value:
((sl_status_t)0x0014)

Illegal call from ISR.


SL_STATUS_NETWORK_UP#

#define SL_STATUS_NETWORK_UP
Value:
((sl_status_t)0x0015)

Illegal call because network is up.


SL_STATUS_NETWORK_DOWN#

#define SL_STATUS_NETWORK_DOWN
Value:
((sl_status_t)0x0016)

Illegal call because network is down.


SL_STATUS_NOT_JOINED#

#define SL_STATUS_NOT_JOINED
Value:
((sl_status_t)0x0017)

Failure due to not being joined in a network.


SL_STATUS_NO_BEACONS#

#define SL_STATUS_NO_BEACONS
Value:
((sl_status_t)0x0018)

Invalid operation as there are no beacons.


SL_STATUS_ALLOCATION_FAILED#

#define SL_STATUS_ALLOCATION_FAILED
Value:
((sl_status_t)0x0019)

Generic allocation error.


SL_STATUS_NO_MORE_RESOURCE#

#define SL_STATUS_NO_MORE_RESOURCE
Value:
((sl_status_t)0x001A)

No more resource available to perform the operation.


SL_STATUS_EMPTY#

#define SL_STATUS_EMPTY
Value:
((sl_status_t)0x001B)

Item/list/queue is empty.


SL_STATUS_FULL#

#define SL_STATUS_FULL
Value:
((sl_status_t)0x001C)

Item/list/queue is full.


SL_STATUS_WOULD_OVERFLOW#

#define SL_STATUS_WOULD_OVERFLOW
Value:
((sl_status_t)0x001D)

Item would overflow.


SL_STATUS_HAS_OVERFLOWED#

#define SL_STATUS_HAS_OVERFLOWED
Value:
((sl_status_t)0x001E)

Item/list/queue has been overflowed.


SL_STATUS_OWNERSHIP#

#define SL_STATUS_OWNERSHIP
Value:
((sl_status_t)0x001F)

Generic ownership error.


SL_STATUS_IS_OWNER#

#define SL_STATUS_IS_OWNER
Value:
((sl_status_t)0x0020)

Already/still owning resource.


SL_STATUS_INVALID_PARAMETER#

#define SL_STATUS_INVALID_PARAMETER
Value:
((sl_status_t)0x0021)

Generic invalid argument or consequence of invalid argument.


SL_STATUS_NULL_POINTER#

#define SL_STATUS_NULL_POINTER
Value:
((sl_status_t)0x0022)

Invalid null pointer received as argument.


SL_STATUS_INVALID_CONFIGURATION#

#define SL_STATUS_INVALID_CONFIGURATION
Value:
((sl_status_t)0x0023)

Invalid configuration provided.


SL_STATUS_INVALID_MODE#

#define SL_STATUS_INVALID_MODE
Value:
((sl_status_t)0x0024)

Invalid mode.


SL_STATUS_INVALID_HANDLE#

#define SL_STATUS_INVALID_HANDLE
Value:
((sl_status_t)0x0025)

Invalid handle.


SL_STATUS_INVALID_TYPE#

#define SL_STATUS_INVALID_TYPE
Value:
((sl_status_t)0x0026)

Invalid type for operation.


SL_STATUS_INVALID_INDEX#

#define SL_STATUS_INVALID_INDEX
Value:
((sl_status_t)0x0027)

Invalid index.


SL_STATUS_INVALID_RANGE#

#define SL_STATUS_INVALID_RANGE
Value:
((sl_status_t)0x0028)

Invalid range.


SL_STATUS_INVALID_KEY#

#define SL_STATUS_INVALID_KEY
Value:
((sl_status_t)0x0029)

Invalid key.


SL_STATUS_INVALID_CREDENTIALS#

#define SL_STATUS_INVALID_CREDENTIALS
Value:
((sl_status_t)0x002A)

Invalid credentials.


SL_STATUS_INVALID_COUNT#

#define SL_STATUS_INVALID_COUNT
Value:
((sl_status_t)0x002B)

Invalid count.


SL_STATUS_INVALID_SIGNATURE#

#define SL_STATUS_INVALID_SIGNATURE
Value:
((sl_status_t)0x002C)

Invalid signature / verification failed.


SL_STATUS_NOT_FOUND#

#define SL_STATUS_NOT_FOUND
Value:
((sl_status_t)0x002D)

Item could not be found.


SL_STATUS_ALREADY_EXISTS#

#define SL_STATUS_ALREADY_EXISTS
Value:
((sl_status_t)0x002E)

Item already exists.


SL_STATUS_IO#

#define SL_STATUS_IO
Value:
((sl_status_t)0x002F)

Generic I/O failure.


SL_STATUS_IO_TIMEOUT#

#define SL_STATUS_IO_TIMEOUT
Value:
((sl_status_t)0x0030)

I/O failure due to timeout.


SL_STATUS_TRANSMIT#

#define SL_STATUS_TRANSMIT
Value:
((sl_status_t)0x0031)

Generic transmission error.


SL_STATUS_TRANSMIT_UNDERFLOW#

#define SL_STATUS_TRANSMIT_UNDERFLOW
Value:
((sl_status_t)0x0032)

Transmit underflowed.


SL_STATUS_TRANSMIT_INCOMPLETE#

#define SL_STATUS_TRANSMIT_INCOMPLETE
Value:
((sl_status_t)0x0033)

Transmit is incomplete.


SL_STATUS_TRANSMIT_BUSY#

#define SL_STATUS_TRANSMIT_BUSY
Value:
((sl_status_t)0x0034)

Transmit is busy.


SL_STATUS_RECEIVE#

#define SL_STATUS_RECEIVE
Value:
((sl_status_t)0x0035)

Generic reception error.


SL_STATUS_OBJECT_READ#

#define SL_STATUS_OBJECT_READ
Value:
((sl_status_t)0x0036)

Failed to read on/via given object.


SL_STATUS_OBJECT_WRITE#

#define SL_STATUS_OBJECT_WRITE
Value:
((sl_status_t)0x0037)

Failed to write on/via given object.


SL_STATUS_MESSAGE_TOO_LONG#

#define SL_STATUS_MESSAGE_TOO_LONG
Value:
((sl_status_t)0x0038)

Message is too long.


SL_STATUS_EEPROM_MFG_VERSION_MISMATCH#

#define SL_STATUS_EEPROM_MFG_VERSION_MISMATCH
Value:
((sl_status_t)0x0039)

EEPROM MFG version mismatch.


SL_STATUS_EEPROM_STACK_VERSION_MISMATCH#

#define SL_STATUS_EEPROM_STACK_VERSION_MISMATCH
Value:
((sl_status_t)0x003A)

EEPROM Stack version mismatch.


SL_STATUS_FLASH_WRITE_INHIBITED#

#define SL_STATUS_FLASH_WRITE_INHIBITED
Value:
((sl_status_t)0x003B)

Flash write is inhibited.


SL_STATUS_FLASH_VERIFY_FAILED#

#define SL_STATUS_FLASH_VERIFY_FAILED
Value:
((sl_status_t)0x003C)

Flash verification failed.


SL_STATUS_FLASH_PROGRAM_FAILED#

#define SL_STATUS_FLASH_PROGRAM_FAILED
Value:
((sl_status_t)0x003D)

Flash programming failed.


SL_STATUS_FLASH_ERASE_FAILED#

#define SL_STATUS_FLASH_ERASE_FAILED
Value:
((sl_status_t)0x003E)

Flash erase failed.


SL_STATUS_MAC_NO_DATA#

#define SL_STATUS_MAC_NO_DATA
Value:
((sl_status_t)0x003F)

MAC no data.


SL_STATUS_MAC_NO_ACK_RECEIVED#

#define SL_STATUS_MAC_NO_ACK_RECEIVED
Value:
((sl_status_t)0x0040)

MAC no ACK received.


SL_STATUS_MAC_INDIRECT_TIMEOUT#

#define SL_STATUS_MAC_INDIRECT_TIMEOUT
Value:
((sl_status_t)0x0041)

MAC indirect timeout.


SL_STATUS_MAC_UNKNOWN_HEADER_TYPE#

#define SL_STATUS_MAC_UNKNOWN_HEADER_TYPE
Value:
((sl_status_t)0x0042)

MAC unknown header type.


SL_STATUS_MAC_ACK_HEADER_TYPE#

#define SL_STATUS_MAC_ACK_HEADER_TYPE
Value:
((sl_status_t)0x0043)

MAC ACK unknown header type.


SL_STATUS_MAC_COMMAND_TRANSMIT_FAILURE#

#define SL_STATUS_MAC_COMMAND_TRANSMIT_FAILURE
Value:
((sl_status_t)0x0044)

MAC command transmit failure.


SL_STATUS_CLI_STORAGE_NVM_OPEN_ERROR#

#define SL_STATUS_CLI_STORAGE_NVM_OPEN_ERROR
Value:
((sl_status_t)0x0045)

Error in open NVM.


SL_STATUS_SECURITY_IMAGE_CHECKSUM_ERROR#

#define SL_STATUS_SECURITY_IMAGE_CHECKSUM_ERROR
Value:
((sl_status_t)0x0046)

Image checksum is not valid.


SL_STATUS_SECURITY_DECRYPT_ERROR#

#define SL_STATUS_SECURITY_DECRYPT_ERROR
Value:
((sl_status_t)0x0047)

Decryption failed.


SL_STATUS_COMMAND_IS_INVALID#

#define SL_STATUS_COMMAND_IS_INVALID
Value:
((sl_status_t)0x0048)

Command was not recognized.


SL_STATUS_COMMAND_TOO_LONG#

#define SL_STATUS_COMMAND_TOO_LONG
Value:
((sl_status_t)0x0049)

Command or parameter maximum length exceeded.


SL_STATUS_COMMAND_INCOMPLETE#

#define SL_STATUS_COMMAND_INCOMPLETE
Value:
((sl_status_t)0x004A)

Data received does not form a complete command.


SL_STATUS_BUS_ERROR#

#define SL_STATUS_BUS_ERROR
Value:
((sl_status_t)0x004B)

Bus error, e.g. invalid DMA address.


SL_STATUS_CCA_FAILURE#

#define SL_STATUS_CCA_FAILURE
Value:
((sl_status_t)0x004C)

CCA failure.


SL_STATUS_MAC_SCANNING#

#define SL_STATUS_MAC_SCANNING
Value:
((sl_status_t)0x004D)

MAC scanning.


SL_STATUS_MAC_INCORRECT_SCAN_TYPE#

#define SL_STATUS_MAC_INCORRECT_SCAN_TYPE
Value:
((sl_status_t)0x004E)

MAC incorrect scan type.


SL_STATUS_INVALID_CHANNEL_MASK#

#define SL_STATUS_INVALID_CHANNEL_MASK
Value:
((sl_status_t)0x004F)

Invalid channel mask.


SL_STATUS_BAD_SCAN_DURATION#

#define SL_STATUS_BAD_SCAN_DURATION
Value:
((sl_status_t)0x0050)

Bad scan duration.


SL_STATUS_MAC_TRANSMIT_QUEUE_FULL#

#define SL_STATUS_MAC_TRANSMIT_QUEUE_FULL
Value:
((sl_status_t)0x0053)

The MAC transmit queue is full.


SL_STATUS_TRANSMIT_SCHEDULER_FAIL#

#define SL_STATUS_TRANSMIT_SCHEDULER_FAIL
Value:
((sl_status_t)0x0054)

The transmit attempt failed because the radio scheduler could not find a slot to transmit this packet in or a higher priority event interrupted it.


SL_STATUS_TRANSMIT_INVALID_CHANNEL#

#define SL_STATUS_TRANSMIT_INVALID_CHANNEL
Value:
((sl_status_t)0x0055)

An unsupported channel setting was specified.


SL_STATUS_TRANSMIT_INVALID_POWER#

#define SL_STATUS_TRANSMIT_INVALID_POWER
Value:
((sl_status_t)0x0056)

An unsupported power setting was specified.


SL_STATUS_TRANSMIT_ACK_RECEIVED#

#define SL_STATUS_TRANSMIT_ACK_RECEIVED
Value:
((sl_status_t)0x0057)

The expected ACK was received after the last transmission.


SL_STATUS_TRANSMIT_BLOCKED#

#define SL_STATUS_TRANSMIT_BLOCKED
Value:
((sl_status_t)0x0058)

The transmit attempt was blocked from going over the air. Typically this is due to the Radio Hold Off (RHO) or Coexistence plugins as they can prevent transmits based on external signals.


SL_STATUS_NVM3_ALIGNMENT_INVALID#

#define SL_STATUS_NVM3_ALIGNMENT_INVALID
Value:
((sl_status_t)0x0059)

The initialization was aborted as the NVM3 instance is not aligned properly in memory.


SL_STATUS_NVM3_SIZE_TOO_SMALL#

#define SL_STATUS_NVM3_SIZE_TOO_SMALL
Value:
((sl_status_t)0x005A)

The initialization was aborted as the size of the NVM3 instance is too small.


SL_STATUS_NVM3_PAGE_SIZE_NOT_SUPPORTED#

#define SL_STATUS_NVM3_PAGE_SIZE_NOT_SUPPORTED
Value:
((sl_status_t)0x005B)

The initialization was aborted as the NVM3 page size is not supported.


SL_STATUS_NVM3_TOKEN_INIT_FAILED#

#define SL_STATUS_NVM3_TOKEN_INIT_FAILED
Value:
((sl_status_t)0x005C)

The application that there was an error initializing some of the tokens.


SL_STATUS_NVM3_OPENED_WITH_OTHER_PARAMETERS#

#define SL_STATUS_NVM3_OPENED_WITH_OTHER_PARAMETERS
Value:
((sl_status_t)0x005D)

The initialization was aborted as the NVM3 instance was already opened with other parameters.


SL_STATUS_NVM3_NO_VALID_PAGES#

#define SL_STATUS_NVM3_NO_VALID_PAGES
Value:
((sl_status_t)0x005E)

Initialization aborted, no valid page found.


SL_STATUS_NVM3_OBJECT_SIZE_NOT_SUPPORTED#

#define SL_STATUS_NVM3_OBJECT_SIZE_NOT_SUPPORTED
Value:
((sl_status_t)0x005F)

The object size is not supported.


SL_STATUS_NVM3_OBJECT_IS_NOT_DATA#

#define SL_STATUS_NVM3_OBJECT_IS_NOT_DATA
Value:
((sl_status_t)0x0060)

Trying to access a data object which is currently a counter object.


SL_STATUS_NVM3_OBJECT_IS_NOT_A_COUNTER#

#define SL_STATUS_NVM3_OBJECT_IS_NOT_A_COUNTER
Value:
((sl_status_t)0x0061)

Trying to access a counter object which is currently a data object.


SL_STATUS_NVM3_WRITE_DATA_SIZE#

#define SL_STATUS_NVM3_WRITE_DATA_SIZE
Value:
((sl_status_t)0x0062)

The object is too large.


SL_STATUS_NVM3_READ_DATA_SIZE#

#define SL_STATUS_NVM3_READ_DATA_SIZE
Value:
((sl_status_t)0x0063)

Trying to read with a length different from actual object size.


SL_STATUS_NVM3_INIT_WITH_FULL_NVM#

#define SL_STATUS_NVM3_INIT_WITH_FULL_NVM
Value:
((sl_status_t)0x0064)

The module was opened with a full NVM.


SL_STATUS_NVM3_RESIZE_PARAMETER#

#define SL_STATUS_NVM3_RESIZE_PARAMETER
Value:
((sl_status_t)0x0065)

Illegal parameter.


SL_STATUS_NVM3_RESIZE_NOT_ENOUGH_SPACE#

#define SL_STATUS_NVM3_RESIZE_NOT_ENOUGH_SPACE
Value:
((sl_status_t)0x0066)

Not enough NVM to complete resize.


SL_STATUS_NVM3_ERASE_COUNT_ERROR#

#define SL_STATUS_NVM3_ERASE_COUNT_ERROR
Value:
((sl_status_t)0x0067)

Erase counts are not valid.


SL_STATUS_NVM3_NVM_ACCESS#

#define SL_STATUS_NVM3_NVM_ACCESS
Value:
((sl_status_t)0x0068)

A NVM function call was failing.


SL_STATUS_NVM3_WRITE_TO_NOT_ERASED#

#define SL_STATUS_NVM3_WRITE_TO_NOT_ERASED
Value:
((sl_status_t)0x006D)

Write to memory that is not erased.


SL_STATUS_NVM3_INVALID_ADDR#

#define SL_STATUS_NVM3_INVALID_ADDR
Value:
((sl_status_t)0x006E)

Invalid NVM address.


SL_STATUS_NVM3_KEY_MISMATCH#

#define SL_STATUS_NVM3_KEY_MISMATCH
Value:
((sl_status_t)0x006F)

Key validation failure.


SL_STATUS_NVM3_SIZE_ERROR#

#define SL_STATUS_NVM3_SIZE_ERROR
Value:
((sl_status_t)0x0070)

Size mismatch error.


SL_STATUS_NVM3_EMULATOR#

#define SL_STATUS_NVM3_EMULATOR
Value:
((sl_status_t)0x0071)

Emulator error.


SL_STATUS_SECURITY_ENCRYPT_ERROR#

#define SL_STATUS_SECURITY_ENCRYPT_ERROR
Value:
((sl_status_t)0x0072)

Encryption failed.


SL_STATUS_SECURITY_KEY_ERROR#

#define SL_STATUS_SECURITY_KEY_ERROR
Value:
((sl_status_t)0x0073)

Error in obtaining crypto key.


SL_STATUS_SECURITY_RANDOM_NUM_GEN_ERROR#

#define SL_STATUS_SECURITY_RANDOM_NUM_GEN_ERROR
Value:
((sl_status_t)0x0074)

Error in obtaining random number.


SL_STATUS_BT_OUT_OF_BONDS#

#define SL_STATUS_BT_OUT_OF_BONDS
Value:
((sl_status_t)0x0402)

Bonding procedure can't be started because device has no space left for bond.


SL_STATUS_BT_UNSPECIFIED#

#define SL_STATUS_BT_UNSPECIFIED
Value:
((sl_status_t)0x0403)

Unspecified error.


SL_STATUS_BT_HARDWARE#

#define SL_STATUS_BT_HARDWARE
Value:
((sl_status_t)0x0404)

Hardware failure.


SL_STATUS_BT_NO_BONDING#

#define SL_STATUS_BT_NO_BONDING
Value:
((sl_status_t)0x0406)

The bonding does not exist.


SL_STATUS_BT_CRYPTO#

#define SL_STATUS_BT_CRYPTO
Value:
((sl_status_t)0x0407)

Error using crypto functions.


SL_STATUS_BT_DATA_CORRUPTED#

#define SL_STATUS_BT_DATA_CORRUPTED
Value:
((sl_status_t)0x0408)

Data was corrupted.


SL_STATUS_BT_INVALID_SYNC_HANDLE#

#define SL_STATUS_BT_INVALID_SYNC_HANDLE
Value:
((sl_status_t)0x040A)

Invalid periodic advertising sync handle.


SL_STATUS_BT_INVALID_MODULE_ACTION#

#define SL_STATUS_BT_INVALID_MODULE_ACTION
Value:
((sl_status_t)0x040B)

Bluetooth cannot be used on this hardware.


SL_STATUS_BT_RADIO#

#define SL_STATUS_BT_RADIO
Value:
((sl_status_t)0x040C)

Error received from radio.


SL_STATUS_BT_L2CAP_REMOTE_DISCONNECTED#

#define SL_STATUS_BT_L2CAP_REMOTE_DISCONNECTED
Value:
((sl_status_t)0x040D)

Returned when remote disconnects the connection-oriented channel by sending disconnection request.


SL_STATUS_BT_L2CAP_LOCAL_DISCONNECTED#

#define SL_STATUS_BT_L2CAP_LOCAL_DISCONNECTED
Value:
((sl_status_t)0x040E)

Returned when local host disconnect the connection-oriented channel by sending disconnection request.


SL_STATUS_BT_L2CAP_CID_NOT_EXIST#

#define SL_STATUS_BT_L2CAP_CID_NOT_EXIST
Value:
((sl_status_t)0x040F)

Returned when local host did not find a connection-oriented channel with given destination CID.


SL_STATUS_BT_L2CAP_LE_DISCONNECTED#

#define SL_STATUS_BT_L2CAP_LE_DISCONNECTED
Value:
((sl_status_t)0x0410)

Returned when connection-oriented channel disconnected due to LE connection is dropped.


SL_STATUS_BT_L2CAP_FLOW_CONTROL_VIOLATED#

#define SL_STATUS_BT_L2CAP_FLOW_CONTROL_VIOLATED
Value:
((sl_status_t)0x0412)

Returned when connection-oriented channel disconnected due to remote end send data even without credit.


SL_STATUS_BT_L2CAP_FLOW_CONTROL_CREDIT_OVERFLOWED#

#define SL_STATUS_BT_L2CAP_FLOW_CONTROL_CREDIT_OVERFLOWED
Value:
((sl_status_t)0x0413)

Returned when connection-oriented channel disconnected due to remote end send flow control credits exceed 65535.


SL_STATUS_BT_L2CAP_NO_FLOW_CONTROL_CREDIT#

#define SL_STATUS_BT_L2CAP_NO_FLOW_CONTROL_CREDIT
Value:
((sl_status_t)0x0414)

Returned when connection-oriented channel has run out of flow control credit and local application still trying to send data.


SL_STATUS_BT_L2CAP_CONNECTION_REQUEST_TIMEOUT#

#define SL_STATUS_BT_L2CAP_CONNECTION_REQUEST_TIMEOUT
Value:
((sl_status_t)0x0415)

Returned when connection-oriented channel has not received connection response message within maximum timeout.


SL_STATUS_BT_L2CAP_INVALID_CID#

#define SL_STATUS_BT_L2CAP_INVALID_CID
Value:
((sl_status_t)0x0416)

Returned when local host received a connection-oriented channel connection response with an invalid destination CID.


SL_STATUS_BT_L2CAP_WRONG_STATE#

#define SL_STATUS_BT_L2CAP_WRONG_STATE
Value:
((sl_status_t)0x0417)

Returned when local host application tries to send a command which is not suitable for L2CAP channel's current state.


SL_STATUS_BT_PS_STORE_FULL#

#define SL_STATUS_BT_PS_STORE_FULL
Value:
((sl_status_t)0x041B)

Flash reserved for PS store is full.


SL_STATUS_BT_PS_KEY_NOT_FOUND#

#define SL_STATUS_BT_PS_KEY_NOT_FOUND
Value:
((sl_status_t)0x041C)

PS key not found.


SL_STATUS_BT_APPLICATION_MISMATCHED_OR_INSUFFICIENT_SECURITY#

#define SL_STATUS_BT_APPLICATION_MISMATCHED_OR_INSUFFICIENT_SECURITY
Value:
((sl_status_t)0x041D)

Mismatched or insufficient security level.


SL_STATUS_BT_APPLICATION_ENCRYPTION_DECRYPTION_ERROR#

#define SL_STATUS_BT_APPLICATION_ENCRYPTION_DECRYPTION_ERROR
Value:
((sl_status_t)0x041E)

Encryption/decryption operation failed.


SL_STATUS_BT_CTRL_UNKNOWN_HCI_COMMAND#

#define SL_STATUS_BT_CTRL_UNKNOWN_HCI_COMMAND
Value:
((sl_status_t)0x1001)

Controller has received unrecognized command.


SL_STATUS_BT_CTRL_UNKNOWN_CONNECTION_IDENTIFIER#

#define SL_STATUS_BT_CTRL_UNKNOWN_CONNECTION_IDENTIFIER
Value:
((sl_status_t)0x1002)

Connection does not exist, or connection open request was cancelled.


SL_STATUS_BT_CTRL_HARDWARE_FAILURE#

#define SL_STATUS_BT_CTRL_HARDWARE_FAILURE
Value:
((sl_status_t)0x1003)

Controller has failed in a manner that cannot be described with any other error code.


SL_STATUS_BT_CTRL_PAGE_TIMEOUT#

#define SL_STATUS_BT_CTRL_PAGE_TIMEOUT
Value:
((sl_status_t)0x1004)

Page has timed out out because of the Page Timeout configuration parameter.


SL_STATUS_BT_CTRL_AUTHENTICATION_FAILURE#

#define SL_STATUS_BT_CTRL_AUTHENTICATION_FAILURE
Value:
((sl_status_t)0x1005)

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.


SL_STATUS_BT_CTRL_PIN_OR_KEY_MISSING#

#define SL_STATUS_BT_CTRL_PIN_OR_KEY_MISSING
Value:
((sl_status_t)0x1006)

Pairing failed because of missing PIN, or authentication failed because of missing Key.


SL_STATUS_BT_CTRL_MEMORY_CAPACITY_EXCEEDED#

#define SL_STATUS_BT_CTRL_MEMORY_CAPACITY_EXCEEDED
Value:
((sl_status_t)0x1007)

Controller is out of memory.


SL_STATUS_BT_CTRL_CONNECTION_TIMEOUT#

#define SL_STATUS_BT_CTRL_CONNECTION_TIMEOUT
Value:
((sl_status_t)0x1008)

Link supervision timeout has expired.


SL_STATUS_BT_CTRL_CONNECTION_LIMIT_EXCEEDED#

#define SL_STATUS_BT_CTRL_CONNECTION_LIMIT_EXCEEDED
Value:
((sl_status_t)0x1009)

Controller is at limit of connections it can support.


SL_STATUS_BT_CTRL_SYNCHRONOUS_CONNECTION_LIMIT_EXCEEDED#

#define SL_STATUS_BT_CTRL_SYNCHRONOUS_CONNECTION_LIMIT_EXCEEDED
Value:
((sl_status_t)0x100A)

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.


SL_STATUS_BT_CTRL_ACL_CONNECTION_ALREADY_EXISTS#

#define SL_STATUS_BT_CTRL_ACL_CONNECTION_ALREADY_EXISTS
Value:
((sl_status_t)0x100B)

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.


SL_STATUS_BT_CTRL_COMMAND_DISALLOWED#

#define SL_STATUS_BT_CTRL_COMMAND_DISALLOWED
Value:
((sl_status_t)0x100C)

Command requested cannot be executed because the Controller is in a state where it cannot process this command at this time.


SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_LIMITED_RESOURCES#

#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_LIMITED_RESOURCES
Value:
((sl_status_t)0x100D)

The Connection Rejected Due To Limited Resources error code indicates that an incoming connection was rejected due to limited resources.


SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_SECURITY_REASONS#

#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_SECURITY_REASONS
Value:
((sl_status_t)0x100E)

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.


SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_UNACCEPTABLE_BD_ADDR#

#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_UNACCEPTABLE_BD_ADDR
Value:
((sl_status_t)0x100F)

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.


SL_STATUS_BT_CTRL_CONNECTION_ACCEPT_TIMEOUT_EXCEEDED#

#define SL_STATUS_BT_CTRL_CONNECTION_ACCEPT_TIMEOUT_EXCEEDED
Value:
((sl_status_t)0x1010)

The Connection Accept Timeout has been exceeded for this connection attempt.


SL_STATUS_BT_CTRL_UNSUPPORTED_FEATURE_OR_PARAMETER_VALUE#

#define SL_STATUS_BT_CTRL_UNSUPPORTED_FEATURE_OR_PARAMETER_VALUE
Value:
((sl_status_t)0x1011)

A feature or parameter value in the HCI command is not supported.


SL_STATUS_BT_CTRL_INVALID_COMMAND_PARAMETERS#

#define SL_STATUS_BT_CTRL_INVALID_COMMAND_PARAMETERS
Value:
((sl_status_t)0x1012)

Command contained invalid parameters.


SL_STATUS_BT_CTRL_REMOTE_USER_TERMINATED#

#define SL_STATUS_BT_CTRL_REMOTE_USER_TERMINATED
Value:
((sl_status_t)0x1013)

User on the remote device terminated the connection.


SL_STATUS_BT_CTRL_REMOTE_DEVICE_TERMINATED_CONNECTION_DUE_TO_LOW_RESOURCES#

#define SL_STATUS_BT_CTRL_REMOTE_DEVICE_TERMINATED_CONNECTION_DUE_TO_LOW_RESOURCES
Value:
((sl_status_t)0x1014)

The remote device terminated the connection because of low resources.


SL_STATUS_BT_CTRL_REMOTE_POWERING_OFF#

#define SL_STATUS_BT_CTRL_REMOTE_POWERING_OFF
Value:
((sl_status_t)0x1015)

Remote Device Terminated Connection due to Power Off.


SL_STATUS_BT_CTRL_CONNECTION_TERMINATED_BY_LOCAL_HOST#

#define SL_STATUS_BT_CTRL_CONNECTION_TERMINATED_BY_LOCAL_HOST
Value:
((sl_status_t)0x1016)

Local device terminated the connection.


SL_STATUS_BT_CTRL_REPEATED_ATTEMPTS#

#define SL_STATUS_BT_CTRL_REPEATED_ATTEMPTS
Value:
((sl_status_t)0x1017)

The Controller is disallowing an authentication or pairing procedure because too little time has elapsed since the last authentication or pairing attempt failed.


SL_STATUS_BT_CTRL_PAIRING_NOT_ALLOWED#

#define SL_STATUS_BT_CTRL_PAIRING_NOT_ALLOWED
Value:
((sl_status_t)0x1018)

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.


SL_STATUS_BT_CTRL_UNKNOWN_LMP_PDU#

#define SL_STATUS_BT_CTRL_UNKNOWN_LMP_PDU
Value:
((sl_status_t)0x1019)

he Controller has received an unknown LMP opcode.


SL_STATUS_BT_CTRL_UNSUPPORTED_REMOTE_FEATURE#

#define SL_STATUS_BT_CTRL_UNSUPPORTED_REMOTE_FEATURE
Value:
((sl_status_t)0x101A)

The remote device does not support the feature associated with the issued command.


SL_STATUS_BT_CTRL_SCO_OFFSET_REJECTED#

#define SL_STATUS_BT_CTRL_SCO_OFFSET_REJECTED
Value:
((sl_status_t)0x101B)

The offset requested in the LMP_SCO_LINK_REQ PDU has been rejected.


SL_STATUS_BT_CTRL_SCO_INTERVAL_REJECTED#

#define SL_STATUS_BT_CTRL_SCO_INTERVAL_REJECTED
Value:
((sl_status_t)0x101C)

The interval requested in the LMP_SCO_LINK_REQ PDU has been rejected.


SL_STATUS_BT_CTRL_SCO_AIR_MODE_REJECTED#

#define SL_STATUS_BT_CTRL_SCO_AIR_MODE_REJECTED
Value:
((sl_status_t)0x101D)

The air mode requested in the LMP_SCO_LINK_REQ PDU has been rejected.


SL_STATUS_BT_CTRL_INVALID_LL_PARAMETERS#

#define SL_STATUS_BT_CTRL_INVALID_LL_PARAMETERS
Value:
((sl_status_t)0x101E)

Indicates that some LMP PDU / LL Control PDU parameters were invalid.


SL_STATUS_BT_CTRL_UNSPECIFIED_ERROR#

#define SL_STATUS_BT_CTRL_UNSPECIFIED_ERROR
Value:
((sl_status_t)0x101F)

No other error code specified is appropriate to use.


SL_STATUS_BT_CTRL_UNSUPPORTED_LL_PARAMETER_VALUE#

#define SL_STATUS_BT_CTRL_UNSUPPORTED_LL_PARAMETER_VALUE
Value:
((sl_status_t)0x1020)

An LMP PDU or an LL Control PDU contains at least one parameter value that is not supported by the Controller at this time.


SL_STATUS_BT_CTRL_ROLE_CHANGE_NOT_ALLOWED#

#define SL_STATUS_BT_CTRL_ROLE_CHANGE_NOT_ALLOWED
Value:
((sl_status_t)0x1021)

Controller will not allow a role change at this time.


SL_STATUS_BT_CTRL_LL_RESPONSE_TIMEOUT#

#define SL_STATUS_BT_CTRL_LL_RESPONSE_TIMEOUT
Value:
((sl_status_t)0x1022)

Connection terminated due to link-layer procedure timeout.


SL_STATUS_BT_CTRL_LL_PROCEDURE_COLLISION#

#define SL_STATUS_BT_CTRL_LL_PROCEDURE_COLLISION
Value:
((sl_status_t)0x1023)

LL procedure has collided with the same transaction or procedure that is already in progress.


SL_STATUS_BT_CTRL_LMP_PDU_NOT_ALLOWED#

#define SL_STATUS_BT_CTRL_LMP_PDU_NOT_ALLOWED
Value:
((sl_status_t)0x1024)

Controller sent an LMP PDU with an opcode that was not allowed.


SL_STATUS_BT_CTRL_ENCRYPTION_MODE_NOT_ACCEPTABLE#

#define SL_STATUS_BT_CTRL_ENCRYPTION_MODE_NOT_ACCEPTABLE
Value:
((sl_status_t)0x1025)

The requested encryption mode is not acceptable at this time.


SL_STATUS_BT_CTRL_LINK_KEY_CANNOT_BE_CHANGED#

#define SL_STATUS_BT_CTRL_LINK_KEY_CANNOT_BE_CHANGED
Value:
((sl_status_t)0x1026)

Link key cannot be changed because a fixed unit key is being used.


SL_STATUS_BT_CTRL_REQUESTED_QOS_NOT_SUPPORTED#

#define SL_STATUS_BT_CTRL_REQUESTED_QOS_NOT_SUPPORTED
Value:
((sl_status_t)0x1027)

The requested Quality of Service is not supported.


SL_STATUS_BT_CTRL_INSTANT_PASSED#

#define SL_STATUS_BT_CTRL_INSTANT_PASSED
Value:
((sl_status_t)0x1028)

LMP PDU or LL PDU that includes an instant cannot be performed because the instant when this would have occurred has passed.


SL_STATUS_BT_CTRL_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED#

#define SL_STATUS_BT_CTRL_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED
Value:
((sl_status_t)0x1029)

It was not possible to pair as a unit key was requested and it is not supported.


SL_STATUS_BT_CTRL_DIFFERENT_TRANSACTION_COLLISION#

#define SL_STATUS_BT_CTRL_DIFFERENT_TRANSACTION_COLLISION
Value:
((sl_status_t)0x102A)

LMP transaction was started that collides with an ongoing transaction.


SL_STATUS_BT_CTRL_QOS_UNACCEPTABLE_PARAMETER#

#define SL_STATUS_BT_CTRL_QOS_UNACCEPTABLE_PARAMETER
Value:
((sl_status_t)0x102C)

The specified quality of service parameters could not be accepted at this time, but other parameters may be acceptable.


SL_STATUS_BT_CTRL_QOS_REJECTED#

#define SL_STATUS_BT_CTRL_QOS_REJECTED
Value:
((sl_status_t)0x102D)

The specified quality of service parameters cannot be accepted and QoS negotiation should be terminated.


SL_STATUS_BT_CTRL_CHANNEL_ASSESSMENT_NOT_SUPPORTED#

#define SL_STATUS_BT_CTRL_CHANNEL_ASSESSMENT_NOT_SUPPORTED
Value:
((sl_status_t)0x102E)

The Controller cannot perform channel assessment because it is not supported.


SL_STATUS_BT_CTRL_INSUFFICIENT_SECURITY#

#define SL_STATUS_BT_CTRL_INSUFFICIENT_SECURITY
Value:
((sl_status_t)0x102F)

The HCI command or LMP PDU sent is only possible on an encrypted link.


SL_STATUS_BT_CTRL_PARAMETER_OUT_OF_MANDATORY_RANGE#

#define SL_STATUS_BT_CTRL_PARAMETER_OUT_OF_MANDATORY_RANGE
Value:
((sl_status_t)0x1030)

A parameter value requested is outside the mandatory range of parameters for the given HCI command or LMP PDU.


SL_STATUS_BT_CTRL_ROLE_SWITCH_PENDING#

#define SL_STATUS_BT_CTRL_ROLE_SWITCH_PENDING
Value:
((sl_status_t)0x1032)

Role Switch is pending.


SL_STATUS_BT_CTRL_RESERVED_SLOT_VIOLATION#

#define SL_STATUS_BT_CTRL_RESERVED_SLOT_VIOLATION
Value:
((sl_status_t)0x1034)

The current Synchronous negotiation was terminated with the negotiation state set to Reserved Slot Violation.


SL_STATUS_BT_CTRL_ROLE_SWITCH_FAILED#

#define SL_STATUS_BT_CTRL_ROLE_SWITCH_FAILED
Value:
((sl_status_t)0x1035)

Role switch was attempted but it failed and the original piconet structure is restored.


SL_STATUS_BT_CTRL_EXTENDED_INQUIRY_RESPONSE_TOO_LARGE#

#define SL_STATUS_BT_CTRL_EXTENDED_INQUIRY_RESPONSE_TOO_LARGE
Value:
((sl_status_t)0x1036)

The extended inquiry response is too large to fit in any of the packet types supported by the Controller.


SL_STATUS_BT_CTRL_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST#

#define SL_STATUS_BT_CTRL_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST
Value:
((sl_status_t)0x1037)

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.


SL_STATUS_BT_CTRL_HOST_BUSY_PAIRING#

#define SL_STATUS_BT_CTRL_HOST_BUSY_PAIRING
Value:
((sl_status_t)0x1038)

The Host is busy with another pairing operation and unable to support the requested pairing. The receiving device should retry pairing again later.


SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_NO_SUITABLE_CHANNEL_FOUND#

#define SL_STATUS_BT_CTRL_CONNECTION_REJECTED_DUE_TO_NO_SUITABLE_CHANNEL_FOUND
Value:
((sl_status_t)0x1039)

The Controller could not calculate an appropriate value for the Channel selection operation.


SL_STATUS_BT_CTRL_CONTROLLER_BUSY#

#define SL_STATUS_BT_CTRL_CONTROLLER_BUSY
Value:
((sl_status_t)0x103A)

Operation was rejected because the controller is busy and unable to process the request.


SL_STATUS_BT_CTRL_UNACCEPTABLE_CONNECTION_INTERVAL#

#define SL_STATUS_BT_CTRL_UNACCEPTABLE_CONNECTION_INTERVAL
Value:
((sl_status_t)0x103B)

Remote device terminated the connection because of an unacceptable connection interval.


SL_STATUS_BT_CTRL_ADVERTISING_TIMEOUT#

#define SL_STATUS_BT_CTRL_ADVERTISING_TIMEOUT
Value:
((sl_status_t)0x103C)

Advertising for a fixed duration completed or, for directed advertising, that advertising completed without a connection being created.


SL_STATUS_BT_CTRL_CONNECTION_TERMINATED_DUE_TO_MIC_FAILURE#

#define SL_STATUS_BT_CTRL_CONNECTION_TERMINATED_DUE_TO_MIC_FAILURE
Value:
((sl_status_t)0x103D)

Connection was terminated because the Message Integrity Check (MIC) failed on a received packet.


SL_STATUS_BT_CTRL_CONNECTION_FAILED_TO_BE_ESTABLISHED#

#define SL_STATUS_BT_CTRL_CONNECTION_FAILED_TO_BE_ESTABLISHED
Value:
((sl_status_t)0x103E)

LL initiated a connection but the connection has failed to be established. Controller did not receive any packets from remote end.


SL_STATUS_BT_CTRL_MAC_CONNECTION_FAILED#

#define SL_STATUS_BT_CTRL_MAC_CONNECTION_FAILED
Value:
((sl_status_t)0x103F)

The MAC of the 802.11 AMP was requested to connect to a peer, but the connection failed.


SL_STATUS_BT_CTRL_COARSE_CLOCK_ADJUSTMENT_REJECTED_BUT_WILL_TRY_TO_ADJUST_USING_CLOCK_DRAGGING#

#define SL_STATUS_BT_CTRL_COARSE_CLOCK_ADJUSTMENT_REJECTED_BUT_WILL_TRY_TO_ADJUST_USING_CLOCK_DRAGGING
Value:
((sl_status_t)0x1040)

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.


SL_STATUS_BT_CTRL_TYPE0_SUBMAP_NOT_DEFINED#

#define SL_STATUS_BT_CTRL_TYPE0_SUBMAP_NOT_DEFINED
Value:
((sl_status_t)0x1041)

The LMP PDU is rejected because the Type 0 submap is not currently defined.


SL_STATUS_BT_CTRL_UNKNOWN_ADVERTISING_IDENTIFIER#

#define SL_STATUS_BT_CTRL_UNKNOWN_ADVERTISING_IDENTIFIER
Value:
((sl_status_t)0x1042)

A command was sent from the Host that should identify an Advertising or Sync handle, but the Advertising or Sync handle does not exist.


SL_STATUS_BT_CTRL_LIMIT_REACHED#

#define SL_STATUS_BT_CTRL_LIMIT_REACHED
Value:
((sl_status_t)0x1043)

Number of operations requested has been reached and has indicated the completion of the activity (e.g., advertising or scanning).


SL_STATUS_BT_CTRL_OPERATION_CANCELLED_BY_HOST#

#define SL_STATUS_BT_CTRL_OPERATION_CANCELLED_BY_HOST
Value:
((sl_status_t)0x1044)

A request to the Controller issued by the Host and still pending was successfully canceled.


SL_STATUS_BT_CTRL_PACKET_TOO_LONG#

#define SL_STATUS_BT_CTRL_PACKET_TOO_LONG
Value:
((sl_status_t)0x1045)

An attempt was made to send or receive a packet that exceeds the maximum allowed packet length.


SL_STATUS_BT_CTRL_TOO_LATE#

#define SL_STATUS_BT_CTRL_TOO_LATE
Value:
((sl_status_t)0x1046)

Information was provided too late to the controller.


SL_STATUS_BT_CTRL_TOO_EARLY#

#define SL_STATUS_BT_CTRL_TOO_EARLY
Value:
((sl_status_t)0x1047)

Information was provided too early to the controller.


SL_STATUS_BT_CTRL_INSUFFICIENT_CHANNELS#

#define SL_STATUS_BT_CTRL_INSUFFICIENT_CHANNELS
Value:
((sl_status_t)0x1048)

Indicates that the result of the requested operation would yield too few physical channels.


SL_STATUS_BT_ATT_INVALID_HANDLE#

#define SL_STATUS_BT_ATT_INVALID_HANDLE
Value:
((sl_status_t)0x1101)

The attribute handle given was not valid on this server.


SL_STATUS_BT_ATT_READ_NOT_PERMITTED#

#define SL_STATUS_BT_ATT_READ_NOT_PERMITTED
Value:
((sl_status_t)0x1102)

The attribute cannot be read.


SL_STATUS_BT_ATT_WRITE_NOT_PERMITTED#

#define SL_STATUS_BT_ATT_WRITE_NOT_PERMITTED
Value:
((sl_status_t)0x1103)

The attribute cannot be written.


SL_STATUS_BT_ATT_INVALID_PDU#

#define SL_STATUS_BT_ATT_INVALID_PDU
Value:
((sl_status_t)0x1104)

The attribute PDU was invalid.


SL_STATUS_BT_ATT_INSUFFICIENT_AUTHENTICATION#

#define SL_STATUS_BT_ATT_INSUFFICIENT_AUTHENTICATION
Value:
((sl_status_t)0x1105)

The attribute requires authentication before it can be read or written.


SL_STATUS_BT_ATT_REQUEST_NOT_SUPPORTED#

#define SL_STATUS_BT_ATT_REQUEST_NOT_SUPPORTED
Value:
((sl_status_t)0x1106)

Attribute Server does not support the request received from the client.


SL_STATUS_BT_ATT_INVALID_OFFSET#

#define SL_STATUS_BT_ATT_INVALID_OFFSET
Value:
((sl_status_t)0x1107)

Offset specified was past the end of the attribute.


SL_STATUS_BT_ATT_INSUFFICIENT_AUTHORIZATION#

#define SL_STATUS_BT_ATT_INSUFFICIENT_AUTHORIZATION
Value:
((sl_status_t)0x1108)

The attribute requires authorization before it can be read or written.


SL_STATUS_BT_ATT_PREPARE_QUEUE_FULL#

#define SL_STATUS_BT_ATT_PREPARE_QUEUE_FULL
Value:
((sl_status_t)0x1109)

Too many prepare writes have been queued.


SL_STATUS_BT_ATT_ATT_NOT_FOUND#

#define SL_STATUS_BT_ATT_ATT_NOT_FOUND
Value:
((sl_status_t)0x110A)

No attribute found within the given attribute handle range.


SL_STATUS_BT_ATT_ATT_NOT_LONG#

#define SL_STATUS_BT_ATT_ATT_NOT_LONG
Value:
((sl_status_t)0x110B)

The attribute cannot be read or written using the Read Blob Request.


SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT#

#define SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT
Value:
((sl_status_t)0x110C)

The Encryption Key Size used for encrypting this link is too short.


SL_STATUS_BT_ATT_INSUFFICIENT_ENC_KEY_SIZE#

#define SL_STATUS_BT_ATT_INSUFFICIENT_ENC_KEY_SIZE
Value:
SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT

DeprecatedUse SL_STATUS_BT_ATT_ENCRYPTION_KEY_SIZE_TOO_SHORT instead.


SL_STATUS_BT_ATT_INVALID_ATT_LENGTH#

#define SL_STATUS_BT_ATT_INVALID_ATT_LENGTH
Value:
((sl_status_t)0x110D)

The attribute value length is invalid for the operation.


SL_STATUS_BT_ATT_UNLIKELY_ERROR#

#define SL_STATUS_BT_ATT_UNLIKELY_ERROR
Value:
((sl_status_t)0x110E)

The attribute request that was requested has encountered an error that was unlikely, and therefore could not be completed as requested.


SL_STATUS_BT_ATT_INSUFFICIENT_ENCRYPTION#

#define SL_STATUS_BT_ATT_INSUFFICIENT_ENCRYPTION
Value:
((sl_status_t)0x110F)

The attribute requires encryption before it can be read or written.


SL_STATUS_BT_ATT_UNSUPPORTED_GROUP_TYPE#

#define SL_STATUS_BT_ATT_UNSUPPORTED_GROUP_TYPE
Value:
((sl_status_t)0x1110)

The attribute type is not a supported grouping attribute as defined by a higher layer specification.


SL_STATUS_BT_ATT_INSUFFICIENT_RESOURCES#

#define SL_STATUS_BT_ATT_INSUFFICIENT_RESOURCES
Value:
((sl_status_t)0x1111)

Insufficient Resources to complete the request.


SL_STATUS_BT_ATT_OUT_OF_SYNC#

#define SL_STATUS_BT_ATT_OUT_OF_SYNC
Value:
((sl_status_t)0x1112)

The server requests the client to rediscover the database.


SL_STATUS_BT_ATT_VALUE_NOT_ALLOWED#

#define SL_STATUS_BT_ATT_VALUE_NOT_ALLOWED
Value:
((sl_status_t)0x1113)

The attribute parameter value was not allowed.


SL_STATUS_BT_ATT_APPLICATION#

#define SL_STATUS_BT_ATT_APPLICATION
Value:
((sl_status_t)0x1180)

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.


SL_STATUS_BT_ATT_WRITE_REQUEST_REJECTED#

#define SL_STATUS_BT_ATT_WRITE_REQUEST_REJECTED
Value:
((sl_status_t)0x11FC)

The requested write operation cannot be fulfilled for reasons other than permissions.


SL_STATUS_BT_ATT_CLIENT_CHARACTERISTIC_CONFIGURATION_DESCRIPTOR_IMPROPERLY_CONFIGURED#

#define SL_STATUS_BT_ATT_CLIENT_CHARACTERISTIC_CONFIGURATION_DESCRIPTOR_IMPROPERLY_CONFIGURED
Value:
((sl_status_t)0x11FD)

The Client Characteristic Configuration descriptor is not configured according to the requirements of the profile or service.


SL_STATUS_BT_ATT_PROCEDURE_ALREADY_IN_PROGRESS#

#define SL_STATUS_BT_ATT_PROCEDURE_ALREADY_IN_PROGRESS
Value:
((sl_status_t)0x11FE)

The profile or service request cannot be serviced because an operation that has been previously triggered is still in progress.


SL_STATUS_BT_ATT_OUT_OF_RANGE#

#define SL_STATUS_BT_ATT_OUT_OF_RANGE
Value:
((sl_status_t)0x11FF)

The attribute value is out of range as defined by a profile or service specification.


SL_STATUS_BT_SMP_PASSKEY_ENTRY_FAILED#

#define SL_STATUS_BT_SMP_PASSKEY_ENTRY_FAILED
Value:
((sl_status_t)0x1201)

The user input of passkey failed, for example, the user cancelled the operation.


SL_STATUS_BT_SMP_OOB_NOT_AVAILABLE#

#define SL_STATUS_BT_SMP_OOB_NOT_AVAILABLE
Value:
((sl_status_t)0x1202)

Out of Band data is not available for authentication.


SL_STATUS_BT_SMP_AUTHENTICATION_REQUIREMENTS#

#define SL_STATUS_BT_SMP_AUTHENTICATION_REQUIREMENTS
Value:
((sl_status_t)0x1203)

The pairing procedure cannot be performed as authentication requirements cannot be met due to IO capabilities of one or both devices.


SL_STATUS_BT_SMP_CONFIRM_VALUE_FAILED#

#define SL_STATUS_BT_SMP_CONFIRM_VALUE_FAILED
Value:
((sl_status_t)0x1204)

The confirm value does not match the calculated compare value.


SL_STATUS_BT_SMP_PAIRING_NOT_SUPPORTED#

#define SL_STATUS_BT_SMP_PAIRING_NOT_SUPPORTED
Value:
((sl_status_t)0x1205)

Pairing is not supported by the device.


SL_STATUS_BT_SMP_ENCRYPTION_KEY_SIZE#

#define SL_STATUS_BT_SMP_ENCRYPTION_KEY_SIZE
Value:
((sl_status_t)0x1206)

The resultant encryption key size is insufficient for the security requirements of this device.


SL_STATUS_BT_SMP_COMMAND_NOT_SUPPORTED#

#define SL_STATUS_BT_SMP_COMMAND_NOT_SUPPORTED
Value:
((sl_status_t)0x1207)

The SMP command received is not supported on this device.


SL_STATUS_BT_SMP_UNSPECIFIED_REASON#

#define SL_STATUS_BT_SMP_UNSPECIFIED_REASON
Value:
((sl_status_t)0x1208)

Pairing failed due to an unspecified reason.


SL_STATUS_BT_SMP_REPEATED_ATTEMPTS#

#define SL_STATUS_BT_SMP_REPEATED_ATTEMPTS
Value:
((sl_status_t)0x1209)

Pairing or authentication procedure is disallowed because too little time has elapsed since last pairing request or security request.


SL_STATUS_BT_SMP_INVALID_PARAMETERS#

#define SL_STATUS_BT_SMP_INVALID_PARAMETERS
Value:
((sl_status_t)0x120A)

The Invalid Parameters error code indicates: the command length is invalid or a parameter is outside of the specified range.


SL_STATUS_BT_SMP_DHKEY_CHECK_FAILED#

#define SL_STATUS_BT_SMP_DHKEY_CHECK_FAILED
Value:
((sl_status_t)0x120B)

Indicates to the remote device that the DHKey Check value received doesn't match the one calculated by the local device.


SL_STATUS_BT_SMP_NUMERIC_COMPARISON_FAILED#

#define SL_STATUS_BT_SMP_NUMERIC_COMPARISON_FAILED
Value:
((sl_status_t)0x120C)

Indicates that the confirm values in the numeric comparison protocol do not match.


SL_STATUS_BT_SMP_BREDR_PAIRING_IN_PROGRESS#

#define SL_STATUS_BT_SMP_BREDR_PAIRING_IN_PROGRESS
Value:
((sl_status_t)0x120D)

Indicates that the pairing over the LE transport failed due to a Pairing Request sent over the BR/EDR transport in process.


SL_STATUS_BT_SMP_CROSS_TRANSPORT_KEY_DERIVATION_GENERATION_NOT_ALLOWED#

#define SL_STATUS_BT_SMP_CROSS_TRANSPORT_KEY_DERIVATION_GENERATION_NOT_ALLOWED
Value:
((sl_status_t)0x120E)

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.


SL_STATUS_BT_SMP_KEY_REJECTED#

#define SL_STATUS_BT_SMP_KEY_REJECTED
Value:
((sl_status_t)0x120F)

Indicates that the device chose not to accept a distributed key.


SL_STATUS_BT_SMP_BUSY#

#define SL_STATUS_BT_SMP_BUSY
Value:
((sl_status_t)0x1210)

Indicates that the device is not ready to perform a pairing procedure.


SL_STATUS_BT_MESH_ALREADY_EXISTS#

#define SL_STATUS_BT_MESH_ALREADY_EXISTS
Value:
((sl_status_t)0x0501)

Returned when trying to add a key or some other unique resource with an ID which already exists.


SL_STATUS_BT_MESH_DOES_NOT_EXIST#

#define SL_STATUS_BT_MESH_DOES_NOT_EXIST
Value:
((sl_status_t)0x0502)

Returned when trying to manipulate a key or some other resource with an ID which does not exist.


SL_STATUS_BT_MESH_LIMIT_REACHED#

#define SL_STATUS_BT_MESH_LIMIT_REACHED
Value:
((sl_status_t)0x0503)

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.


SL_STATUS_BT_MESH_INVALID_ADDRESS#

#define SL_STATUS_BT_MESH_INVALID_ADDRESS
Value:
((sl_status_t)0x0504)

Returned when trying to use a reserved address or add a "pre-provisioned" device using an address already used by some other device.


SL_STATUS_BT_MESH_MALFORMED_DATA#

#define SL_STATUS_BT_MESH_MALFORMED_DATA
Value:
((sl_status_t)0x0505)

In a BGAPI response, the user supplied malformed data; in a BGAPI event, the remote end responded with malformed or unrecognized data.


SL_STATUS_BT_MESH_ALREADY_INITIALIZED#

#define SL_STATUS_BT_MESH_ALREADY_INITIALIZED
Value:
((sl_status_t)0x0506)

An attempt was made to initialize a subsystem that was already initialized.


SL_STATUS_BT_MESH_NOT_INITIALIZED#

#define SL_STATUS_BT_MESH_NOT_INITIALIZED
Value:
((sl_status_t)0x0507)

An attempt was made to use a subsystem that wasn't initialized yet. Call the subsystem's init function first.


SL_STATUS_BT_MESH_NO_FRIEND_OFFER#

#define SL_STATUS_BT_MESH_NO_FRIEND_OFFER
Value:
((sl_status_t)0x0508)

Returned when trying to establish a friendship as a Low Power Node, but no acceptable friend offer message was received.


SL_STATUS_BT_MESH_PROV_LINK_CLOSED#

#define SL_STATUS_BT_MESH_PROV_LINK_CLOSED
Value:
((sl_status_t)0x0509)

Provisioning link was unexpectedly closed before provisioning was complete.


SL_STATUS_BT_MESH_PROV_INVALID_PDU#

#define SL_STATUS_BT_MESH_PROV_INVALID_PDU
Value:
((sl_status_t)0x050A)

An unrecognized provisioning PDU was received.


SL_STATUS_BT_MESH_PROV_INVALID_PDU_FORMAT#

#define SL_STATUS_BT_MESH_PROV_INVALID_PDU_FORMAT
Value:
((sl_status_t)0x050B)

A provisioning PDU with wrong length or containing field values that are out of bounds was received.


SL_STATUS_BT_MESH_PROV_UNEXPECTED_PDU#

#define SL_STATUS_BT_MESH_PROV_UNEXPECTED_PDU
Value:
((sl_status_t)0x050C)

An unexpected (out of sequence) provisioning PDU was received.


SL_STATUS_BT_MESH_PROV_CONFIRMATION_FAILED#

#define SL_STATUS_BT_MESH_PROV_CONFIRMATION_FAILED
Value:
((sl_status_t)0x050D)

The computed confirmation value did not match the expected value.


SL_STATUS_BT_MESH_PROV_OUT_OF_RESOURCES#

#define SL_STATUS_BT_MESH_PROV_OUT_OF_RESOURCES
Value:
((sl_status_t)0x050E)

Provisioning could not be continued due to insufficient resources.


SL_STATUS_BT_MESH_PROV_DECRYPTION_FAILED#

#define SL_STATUS_BT_MESH_PROV_DECRYPTION_FAILED
Value:
((sl_status_t)0x050F)

The provisioning data block could not be decrypted.


SL_STATUS_BT_MESH_PROV_UNEXPECTED_ERROR#

#define SL_STATUS_BT_MESH_PROV_UNEXPECTED_ERROR
Value:
((sl_status_t)0x0510)

An unexpected error happened during provisioning.


SL_STATUS_BT_MESH_PROV_CANNOT_ASSIGN_ADDR#

#define SL_STATUS_BT_MESH_PROV_CANNOT_ASSIGN_ADDR
Value:
((sl_status_t)0x0511)

Device could not assign unicast addresses to all of its elements.


SL_STATUS_BT_MESH_ADDRESS_TEMPORARILY_UNAVAILABLE#

#define SL_STATUS_BT_MESH_ADDRESS_TEMPORARILY_UNAVAILABLE
Value:
((sl_status_t)0x0512)

Returned when trying to reuse an address of a previously deleted device before an IV Index Update has been executed.


SL_STATUS_BT_MESH_ADDRESS_ALREADY_USED#

#define SL_STATUS_BT_MESH_ADDRESS_ALREADY_USED
Value:
((sl_status_t)0x0513)

Returned when trying to assign an address that is used by one of the devices in the Device Database, or by the Provisioner itself.


SL_STATUS_BT_MESH_PUBLISH_NOT_CONFIGURED#

#define SL_STATUS_BT_MESH_PUBLISH_NOT_CONFIGURED
Value:
((sl_status_t)0x0514)

Application key or publish address are not set.


SL_STATUS_BT_MESH_APP_KEY_NOT_BOUND#

#define SL_STATUS_BT_MESH_APP_KEY_NOT_BOUND
Value:
((sl_status_t)0x0515)

Application key is not bound to a model.


SL_STATUS_BT_MESH_FOUNDATION_INVALID_ADDRESS#

#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_ADDRESS
Value:
((sl_status_t)0x1301)

Returned when address in request was not valid.


SL_STATUS_BT_MESH_FOUNDATION_INVALID_MODEL#

#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_MODEL
Value:
((sl_status_t)0x1302)

Returned when model identified is not found for a given element.


SL_STATUS_BT_MESH_FOUNDATION_INVALID_APP_KEY#

#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_APP_KEY
Value:
((sl_status_t)0x1303)

Returned when the key identified by AppKeyIndex is not stored in the node.


SL_STATUS_BT_MESH_FOUNDATION_INVALID_NET_KEY#

#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_NET_KEY
Value:
((sl_status_t)0x1304)

Returned when the key identified by NetKeyIndex is not stored in the node.


SL_STATUS_BT_MESH_FOUNDATION_INSUFFICIENT_RESOURCES#

#define SL_STATUS_BT_MESH_FOUNDATION_INSUFFICIENT_RESOURCES
Value:
((sl_status_t)0x1305)

Returned when The node cannot serve the request due to insufficient resources.


SL_STATUS_BT_MESH_FOUNDATION_KEY_INDEX_EXISTS#

#define SL_STATUS_BT_MESH_FOUNDATION_KEY_INDEX_EXISTS
Value:
((sl_status_t)0x1306)

Returned when the key identified is already stored in the node and the new NetKey value is different.


SL_STATUS_BT_MESH_FOUNDATION_INVALID_PUBLISH_PARAMS#

#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_PUBLISH_PARAMS
Value:
((sl_status_t)0x1307)

Returned when the model does not support the publish mechanism.


SL_STATUS_BT_MESH_FOUNDATION_NOT_SUBSCRIBE_MODEL#

#define SL_STATUS_BT_MESH_FOUNDATION_NOT_SUBSCRIBE_MODEL
Value:
((sl_status_t)0x1308)

Returned when the model does not support the subscribe mechanism.


SL_STATUS_BT_MESH_FOUNDATION_STORAGE_FAILURE#

#define SL_STATUS_BT_MESH_FOUNDATION_STORAGE_FAILURE
Value:
((sl_status_t)0x1309)

Returned when storing of the requested parameters failed.


SL_STATUS_BT_MESH_FOUNDATION_NOT_SUPPORTED#

#define SL_STATUS_BT_MESH_FOUNDATION_NOT_SUPPORTED
Value:
((sl_status_t)0x130A)

Returned when requested setting is not supported.


SL_STATUS_BT_MESH_FOUNDATION_CANNOT_UPDATE#

#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_UPDATE
Value:
((sl_status_t)0x130B)

Returned when the requested update operation cannot be performed due to general constraints.


SL_STATUS_BT_MESH_FOUNDATION_CANNOT_REMOVE#

#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_REMOVE
Value:
((sl_status_t)0x130C)

Returned when the requested delete operation cannot be performed due to general constraints.


SL_STATUS_BT_MESH_FOUNDATION_CANNOT_BIND#

#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_BIND
Value:
((sl_status_t)0x130D)

Returned when the requested bind operation cannot be performed due to general constraints.


SL_STATUS_BT_MESH_FOUNDATION_TEMPORARILY_UNABLE#

#define SL_STATUS_BT_MESH_FOUNDATION_TEMPORARILY_UNABLE
Value:
((sl_status_t)0x130E)

Returned when The node cannot start advertising with Node Identity or Proxy since the maximum number of parallel advertising is reached.


SL_STATUS_BT_MESH_FOUNDATION_CANNOT_SET#

#define SL_STATUS_BT_MESH_FOUNDATION_CANNOT_SET
Value:
((sl_status_t)0x130F)

Returned when the requested state cannot be set.


SL_STATUS_BT_MESH_FOUNDATION_UNSPECIFIED#

#define SL_STATUS_BT_MESH_FOUNDATION_UNSPECIFIED
Value:
((sl_status_t)0x1310)

Returned when an unspecified error took place.


SL_STATUS_BT_MESH_FOUNDATION_INVALID_BINDING#

#define SL_STATUS_BT_MESH_FOUNDATION_INVALID_BINDING
Value:
((sl_status_t)0x1311)

Returned when the NetKeyIndex and AppKeyIndex combination is not valid for a Config AppKey Update.


SL_STATUS_WIFI_INVALID_KEY#

#define SL_STATUS_WIFI_INVALID_KEY
Value:
((sl_status_t)0x0B01)

Invalid firmware keyset.


SL_STATUS_WIFI_FIRMWARE_DOWNLOAD_TIMEOUT#

#define SL_STATUS_WIFI_FIRMWARE_DOWNLOAD_TIMEOUT
Value:
((sl_status_t)0x0B02)

The firmware download took too long.


SL_STATUS_WIFI_UNSUPPORTED_MESSAGE_ID#

#define SL_STATUS_WIFI_UNSUPPORTED_MESSAGE_ID
Value:
((sl_status_t)0x0B03)

Unknown request ID or wrong interface ID used.


SL_STATUS_WIFI_WARNING#

#define SL_STATUS_WIFI_WARNING
Value:
((sl_status_t)0x0B04)

The request is successful but some parameters have been ignored.


SL_STATUS_WIFI_NO_PACKET_TO_RECEIVE#

#define SL_STATUS_WIFI_NO_PACKET_TO_RECEIVE
Value:
((sl_status_t)0x0B05)

No Packets waiting to be received.


SL_STATUS_WIFI_SLEEP_GRANTED#

#define SL_STATUS_WIFI_SLEEP_GRANTED
Value:
((sl_status_t)0x0B08)

The sleep mode is granted.


SL_STATUS_WIFI_SLEEP_NOT_GRANTED#

#define SL_STATUS_WIFI_SLEEP_NOT_GRANTED
Value:
((sl_status_t)0x0B09)

The WFx does not go back to sleep.


SL_STATUS_WIFI_SECURE_LINK_MAC_KEY_ERROR#

#define SL_STATUS_WIFI_SECURE_LINK_MAC_KEY_ERROR
Value:
((sl_status_t)0x0B10)

The SecureLink MAC key was not found.


SL_STATUS_WIFI_SECURE_LINK_MAC_KEY_ALREADY_BURNED#

#define SL_STATUS_WIFI_SECURE_LINK_MAC_KEY_ALREADY_BURNED
Value:
((sl_status_t)0x0B11)

The SecureLink MAC key is already installed in OTP.


SL_STATUS_WIFI_SECURE_LINK_RAM_MODE_NOT_ALLOWED#

#define SL_STATUS_WIFI_SECURE_LINK_RAM_MODE_NOT_ALLOWED
Value:
((sl_status_t)0x0B12)

The SecureLink MAC key cannot be installed in RAM.


SL_STATUS_WIFI_SECURE_LINK_FAILED_UNKNOWN_MODE#

#define SL_STATUS_WIFI_SECURE_LINK_FAILED_UNKNOWN_MODE
Value:
((sl_status_t)0x0B13)

The SecureLink MAC key installation failed.


SL_STATUS_WIFI_SECURE_LINK_EXCHANGE_FAILED#

#define SL_STATUS_WIFI_SECURE_LINK_EXCHANGE_FAILED
Value:
((sl_status_t)0x0B14)

SecureLink key (re)negotiation failed.


SL_STATUS_WIFI_WRONG_STATE#

#define SL_STATUS_WIFI_WRONG_STATE
Value:
((sl_status_t)0x0B18)

The device is in an inappropriate state to perform the request.


SL_STATUS_WIFI_CHANNEL_NOT_ALLOWED#

#define SL_STATUS_WIFI_CHANNEL_NOT_ALLOWED
Value:
((sl_status_t)0x0B19)

The request failed due to regulatory limitations.


SL_STATUS_WIFI_NO_MATCHING_AP#

#define SL_STATUS_WIFI_NO_MATCHING_AP
Value:
((sl_status_t)0x0B1A)

The connection request failed because no suitable AP was found.


SL_STATUS_WIFI_CONNECTION_ABORTED#

#define SL_STATUS_WIFI_CONNECTION_ABORTED
Value:
((sl_status_t)0x0B1B)

The connection request was aborted by host.


SL_STATUS_WIFI_CONNECTION_TIMEOUT#

#define SL_STATUS_WIFI_CONNECTION_TIMEOUT
Value:
((sl_status_t)0x0B1C)

The connection request failed because of a timeout.


SL_STATUS_WIFI_CONNECTION_REJECTED_BY_AP#

#define SL_STATUS_WIFI_CONNECTION_REJECTED_BY_AP
Value:
((sl_status_t)0x0B1D)

The connection request failed because the AP rejected the device.


SL_STATUS_WIFI_CONNECTION_AUTH_FAILURE#

#define SL_STATUS_WIFI_CONNECTION_AUTH_FAILURE
Value:
((sl_status_t)0x0B1E)

The connection request failed because the WPA handshake did not complete successfully.


SL_STATUS_WIFI_RETRY_EXCEEDED#

#define SL_STATUS_WIFI_RETRY_EXCEEDED
Value:
((sl_status_t)0x0B1F)

The request failed because the retry limit was exceeded.


SL_STATUS_WIFI_TX_LIFETIME_EXCEEDED#

#define SL_STATUS_WIFI_TX_LIFETIME_EXCEEDED
Value:
((sl_status_t)0x0B20)

The request failed because the MSDU life time was exceeded.


SL_STATUS_COMPUTE_DRIVER_FAULT#

#define SL_STATUS_COMPUTE_DRIVER_FAULT
Value:
((sl_status_t)0x1501)

Critical fault.


SL_STATUS_COMPUTE_DRIVER_ALU_NAN#

#define SL_STATUS_COMPUTE_DRIVER_ALU_NAN
Value:
((sl_status_t)0x1502)

ALU operation output NaN.


SL_STATUS_COMPUTE_DRIVER_ALU_OVERFLOW#

#define SL_STATUS_COMPUTE_DRIVER_ALU_OVERFLOW
Value:
((sl_status_t)0x1503)

ALU numeric overflow.


SL_STATUS_COMPUTE_DRIVER_ALU_UNDERFLOW#

#define SL_STATUS_COMPUTE_DRIVER_ALU_UNDERFLOW
Value:
((sl_status_t)0x1504)

ALU numeric underflow.


SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_OVERFLOW#

#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_OVERFLOW
Value:
((sl_status_t)0x1505)

Overflow during array store.


SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_UNDERFLOW#

#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_UNDERFLOW
Value:
((sl_status_t)0x1506)

Underflow during array store conversion.


SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_INFINITY#

#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_INFINITY
Value:
((sl_status_t)0x1507)

Infinity encountered during array store conversion.


SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_NAN#

#define SL_STATUS_COMPUTE_DRIVER_STORE_CONVERSION_NAN
Value:
((sl_status_t)0x1508)

NaN encountered during array store conversion.


SL_STATUS_COMPUTE_MATH_NAN#

#define SL_STATUS_COMPUTE_MATH_NAN
Value:
((sl_status_t)0x1512)

MATH NaN encountered.


SL_STATUS_COMPUTE_MATH_INFINITY#

#define SL_STATUS_COMPUTE_MATH_INFINITY
Value:
((sl_status_t)0x1513)

MATH Infinity encountered.


SL_STATUS_COMPUTE_MATH_OVERFLOW#

#define SL_STATUS_COMPUTE_MATH_OVERFLOW
Value:
((sl_status_t)0x1514)

MATH numeric overflow.


SL_STATUS_COMPUTE_MATH_UNDERFLOW#

#define SL_STATUS_COMPUTE_MATH_UNDERFLOW
Value:
((sl_status_t)0x1515)

MATH numeric underflow.


SL_STATUS_ZIGBEE_PACKET_HANDOFF_DROPPED#

#define SL_STATUS_ZIGBEE_PACKET_HANDOFF_DROPPED
Value:
((sl_status_t)0x0C01)

Packet is dropped by packet-handoff callbacks.


SL_STATUS_ZIGBEE_DELIVERY_FAILED#

#define SL_STATUS_ZIGBEE_DELIVERY_FAILED
Value:
((sl_status_t)0x0C02)

The APS layer attempted to send or deliver a message and failed.


SL_STATUS_ZIGBEE_MAX_MESSAGE_LIMIT_REACHED#

#define SL_STATUS_ZIGBEE_MAX_MESSAGE_LIMIT_REACHED
Value:
((sl_status_t)0x0C03)

The maximum number of in-flight messages ::EMBER_APS_UNICAST_MESSAGE_COUNT has been reached.


SL_STATUS_ZIGBEE_BINDING_IS_ACTIVE#

#define SL_STATUS_ZIGBEE_BINDING_IS_ACTIVE
Value:
((sl_status_t)0x0C04)

The application is trying to delete or overwrite a binding that is in use.


SL_STATUS_ZIGBEE_ADDRESS_TABLE_ENTRY_IS_ACTIVE#

#define SL_STATUS_ZIGBEE_ADDRESS_TABLE_ENTRY_IS_ACTIVE
Value:
((sl_status_t)0x0C05)

The application is trying to overwrite an address table entry that is in use.


SL_STATUS_ZIGBEE_MOVE_FAILED#

#define SL_STATUS_ZIGBEE_MOVE_FAILED
Value:
((sl_status_t)0x0C06)

After moving, a mobile node's attempt to re-establish contact with the network failed.


SL_STATUS_ZIGBEE_NODE_ID_CHANGED#

#define SL_STATUS_ZIGBEE_NODE_ID_CHANGED
Value:
((sl_status_t)0x0C07)

The local node ID has changed. The application can get the new node ID by calling ::sl_zigbee_get_node_id()


SL_STATUS_ZIGBEE_INVALID_SECURITY_LEVEL#

#define SL_STATUS_ZIGBEE_INVALID_SECURITY_LEVEL
Value:
((sl_status_t)0x0C08)

The chosen security level is not supported by the stack.


SL_STATUS_ZIGBEE_IEEE_ADDRESS_DISCOVERY_IN_PROGRESS#

#define SL_STATUS_ZIGBEE_IEEE_ADDRESS_DISCOVERY_IN_PROGRESS
Value:
((sl_status_t)0x0C09)

An error occurred when trying to encrypt at the APS Level.


SL_STATUS_ZIGBEE_APS_ENCRYPTION_ERROR#

#define SL_STATUS_ZIGBEE_APS_ENCRYPTION_ERROR
Value:
((sl_status_t)0x0C0A)

An error occurred when trying to encrypt at the APS Level.


SL_STATUS_ZIGBEE_SECURITY_STATE_NOT_SET#

#define SL_STATUS_ZIGBEE_SECURITY_STATE_NOT_SET
Value:
((sl_status_t)0x0C0B)

There was an attempt to form or join a network with security without calling ::sl_zigbee_set_initial_security_state() first.


SL_STATUS_ZIGBEE_TOO_SOON_FOR_SWITCH_KEY#

#define SL_STATUS_ZIGBEE_TOO_SOON_FOR_SWITCH_KEY
Value:
((sl_status_t)0x0C0C)

There was an attempt to broadcast a key switch too quickly after broadcasting the next network key. The Trust Center must wait at least a period equal to the broadcast timeout so that all routers have a chance to receive the broadcast of the new network key.


SL_STATUS_ZIGBEE_SIGNATURE_VERIFY_FAILURE#

#define SL_STATUS_ZIGBEE_SIGNATURE_VERIFY_FAILURE
Value:
((sl_status_t)0x0C0D)

The received signature corresponding to the message that was passed to the CBKE Library failed verification and is not valid.


SL_STATUS_ZIGBEE_KEY_NOT_AUTHORIZED#

#define SL_STATUS_ZIGBEE_KEY_NOT_AUTHORIZED
Value:
((sl_status_t)0x0C0E)

The message could not be sent because the link key corresponding to the destination is not authorized for use in APS data messages.


SL_STATUS_ZIGBEE_BINDING_HAS_CHANGED#

#define SL_STATUS_ZIGBEE_BINDING_HAS_CHANGED
Value:
((sl_status_t)0x0C0F)

The application tried to use a binding that has been remotely modified and the change has not yet been reported to the application.


SL_STATUS_ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_CHANGED#

#define SL_STATUS_ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_CHANGED
Value:
((sl_status_t)0x0C10)

The EUI of the Trust center has changed due to a successful rejoin after TC Swapout.


SL_STATUS_ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_NOT_CHANGED#

#define SL_STATUS_ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_NOT_CHANGED
Value:
((sl_status_t)0x0C11)

A Trust Center Swapout Rejoin has occurred without the EUI of the TC changing.


SL_STATUS_ZIGBEE_INSUFFICIENT_RANDOM_DATA#

#define SL_STATUS_ZIGBEE_INSUFFICIENT_RANDOM_DATA
Value:
((sl_status_t)0x0C12)

An attempt to generate random bytes failed because of insufficient random data from the radio.


SL_STATUS_ZIGBEE_SOURCE_ROUTE_FAILURE#

#define SL_STATUS_ZIGBEE_SOURCE_ROUTE_FAILURE
Value:
((sl_status_t)0x0C13)

A Zigbee route error command frame was received indicating that a source routed message from this node failed en route.


SL_STATUS_ZIGBEE_MANY_TO_ONE_ROUTE_FAILURE#

#define SL_STATUS_ZIGBEE_MANY_TO_ONE_ROUTE_FAILURE
Value:
((sl_status_t)0x0C14)

A Zigbee route error command frame was received indicating that a message sent to this node along a many-to-one route failed en route.


SL_STATUS_ZIGBEE_STACK_AND_HARDWARE_MISMATCH#

#define SL_STATUS_ZIGBEE_STACK_AND_HARDWARE_MISMATCH
Value:
((sl_status_t)0x0C15)

A critical and fatal error indicating that the version of the stack trying to run does not match with the chip it's running on.


SL_STATUS_ZIGBEE_PAN_ID_CHANGED#

#define SL_STATUS_ZIGBEE_PAN_ID_CHANGED
Value:
((sl_status_t)0x0C16)

The local PAN ID has changed. The application can get the new PAN ID by calling ::emberGetPanId()


SL_STATUS_ZIGBEE_CHANNEL_CHANGED#

#define SL_STATUS_ZIGBEE_CHANNEL_CHANGED
Value:
((sl_status_t)0x0C17)

The channel has changed.


SL_STATUS_ZIGBEE_NETWORK_OPENED#

#define SL_STATUS_ZIGBEE_NETWORK_OPENED
Value:
((sl_status_t)0x0C18)

The network has been opened for joining.


SL_STATUS_ZIGBEE_NETWORK_CLOSED#

#define SL_STATUS_ZIGBEE_NETWORK_CLOSED
Value:
((sl_status_t)0x0C19)

The network has been closed for joining.


SL_STATUS_ZIGBEE_RECEIVED_KEY_IN_THE_CLEAR#

#define SL_STATUS_ZIGBEE_RECEIVED_KEY_IN_THE_CLEAR
Value:
((sl_status_t)0x0C1A)

An attempt was made to join a Secured Network using a pre-configured key, but the Trust Center sent back a Network Key in-the-clear when an encrypted Network Key was required. (::EMBER_REQUIRE_ENCRYPTED_KEY)


SL_STATUS_ZIGBEE_NO_NETWORK_KEY_RECEIVED#

#define SL_STATUS_ZIGBEE_NO_NETWORK_KEY_RECEIVED
Value:
((sl_status_t)0x0C1B)

An attempt was made to join a Secured Network, but the device did not receive a Network Key.


SL_STATUS_ZIGBEE_NO_LINK_KEY_RECEIVED#

#define SL_STATUS_ZIGBEE_NO_LINK_KEY_RECEIVED
Value:
((sl_status_t)0x0C1C)

After a device joined a Secured Network, a Link Key was requested (::EMBER_GET_LINK_KEY_WHEN_JOINING) but no response was ever received.


SL_STATUS_ZIGBEE_PRECONFIGURED_KEY_REQUIRED#

#define SL_STATUS_ZIGBEE_PRECONFIGURED_KEY_REQUIRED
Value:
((sl_status_t)0x0C1D)

An attempt was made to join a Secured Network without a pre-configured key, but the Trust Center sent encrypted data using a pre-configured key.


SL_STATUS_ZIGBEE_EZSP_ERROR#

#define SL_STATUS_ZIGBEE_EZSP_ERROR
Value:
((sl_status_t)0x0C1E)

A Zigbee EZSP error has occured. Track the origin and corresponding EzspStatus for more info.


SL_STATUS_ZIGBEE_ID_DISCOVERY_FAILED#

#define SL_STATUS_ZIGBEE_ID_DISCOVERY_FAILED
Value:
((sl_status_t)0x0C1F)

Node ID discovery failed.


SL_STATUS_ZIGBEE_NO_APS_ACK#

#define SL_STATUS_ZIGBEE_NO_APS_ACK
Value:
((sl_status_t)0x0C20)

Message was sent but no APS ACK received.


SL_STATUS_ZIGBEE_APS_MESSAGE_CANCELED#

#define SL_STATUS_ZIGBEE_APS_MESSAGE_CANCELED
Value:
((sl_status_t)0x0C21)

APS message was canceled.


SL_STATUS_ZIGBEE_ID_DISCOVERY_NOT_ENABLED#

#define SL_STATUS_ZIGBEE_ID_DISCOVERY_NOT_ENABLED
Value:
((sl_status_t)0x0C22)

Node ID discovery not enabled.


SL_STATUS_ZIGBEE_ID_DISCOVERY_UNDERWAY#

#define SL_STATUS_ZIGBEE_ID_DISCOVERY_UNDERWAY
Value:
((sl_status_t)0x0C23)

Message was not sent, Node ID discovery is underway.


SL_STATUS_ZIGBEE_SEND_UNICAST_ROUTE_DISCOVERY_UNDERWAY#

#define SL_STATUS_ZIGBEE_SEND_UNICAST_ROUTE_DISCOVERY_UNDERWAY
Value:
((sl_status_t)0x0C24)

The message was not sent because a route discovery is currently underway. There is no route to the target until the route discovery completes.


SL_STATUS_ZIGBEE_SEND_UNICAST_FAILURE#

#define SL_STATUS_ZIGBEE_SEND_UNICAST_FAILURE
Value:
((sl_status_t)0x0C25)

Radius is 0 or message has been dropped because route request failed or failed to submit message to tx queue.


SL_STATUS_ZIGBEE_SEND_UNICAST_NO_ROUTE#

#define SL_STATUS_ZIGBEE_SEND_UNICAST_NO_ROUTE
Value:
((sl_status_t)0x0C26)

No active route to the destination.


SL_STATUS_ZIGBEE_BROADCAST_TO_SLEEPY_CHILDREN_TIMEOUT#

#define SL_STATUS_ZIGBEE_BROADCAST_TO_SLEEPY_CHILDREN_TIMEOUT
Value:
((sl_status_t)0x0C27)

Broadcast message timeout while waiting for sleepy children to poll.


SL_STATUS_ZIGBEE_BROADCAST_RELAY_FAILED#

#define SL_STATUS_ZIGBEE_BROADCAST_RELAY_FAILED
Value:
((sl_status_t)0x0C28)

Expected a neighbor to relay the message, but none did.


SL_STATUS_ZIGBEE_REJOIN_FAILED_BUT_NETWORK_RESTORED#

#define SL_STATUS_ZIGBEE_REJOIN_FAILED_BUT_NETWORK_RESTORED
Value:
((sl_status_t)0x0C29)

On a router, this indicates that a network rejoin attempt was made and did not succeed, and that the router is resuming operation on its current network. This network status is always followed by a SL_STATUS_NETWORK_UP status.


Typedef Documentation#

sl_status_t#

typedef uint32_t sl_status_t

define global status variable.


Function Documentation#

sl_status_get_string_n#

int32_t sl_status_get_string_n (sl_status_t status, char * buffer, uint32_t buffer_length)
Parameters
TypeDirectionArgument NameDescription
sl_status_tN/Astatus
char *N/Abuffer
uint32_tN/Abuffer_length

sl_status_print#

void sl_status_print (sl_status_t status)
Parameters
TypeDirectionArgument NameDescription
sl_status_tN/Astatus