cancel
Showing results for 
Search instead for 
Did you mean: 

Bluetooth Communication between two STM32WB55 not working

li4
Associate II

Communication between two STM32WB55 devices via Bluetooth is not working as expected. Device A (the client) cannot receive data from Device B (t

 

static SVCCTL_EvtAckStatus_t Event_Handler(void *Event) { SVCCTL_EvtAckStatus_t return_value; hci_event_pckt *event_pckt; evt_blecore_aci *blecore_evt; P2P_Client_App_Notification_evt_t Notification; return_value = SVCCTL_EvtNotAck; event_pckt = (hci_event_pckt *)(((hci_uart_pckt*)Event)->data); switch(event_pckt->evt) { case HCI_VENDOR_SPECIFIC_DEBUG_EVT_CODE: { blecore_evt = (evt_blecore_aci*)event_pckt->data; switch(blecore_evt->ecode) { case ACI_ATT_READ_BY_GROUP_TYPE_RESP_VSEVT_CODE: { aci_att_read_by_group_type_resp_event_rp0 *pr = (void*)blecore_evt->data; uint8_t numServ, i, idx; uint16_t uuid, handle; uint8_t index; handle = pr->Connection_Handle; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].state != APP_BLE_IDLE)) { APP_BLE_ConnStatus_t status; status = APP_BLE_Get_Client_Connection_Status(aP2PClientContext[index].connHandle); if((aP2PClientContext[index].state == APP_BLE_CONNECTED_CLIENT)&& (status == APP_BLE_IDLE)) { /* Handle deconnected */ aP2PClientContext[index].state = APP_BLE_IDLE; aP2PClientContext[index].connHandle = 0xFFFF; break; } index++; } if(index < BLE_CFG_CLT_MAX_NBR_CB) { aP2PClientContext[index].connHandle= handle; numServ = (pr->Data_Length) / pr->Attribute_Data_Length; /* the event data will be * 2bytes start handle * 2bytes end handle * 2 or 16 bytes data * we are interested only if the UUID is 16 bit. * So check if the data length is 6 */ #if (UUID_128BIT_FORMAT==1) if (pr->Attribute_Data_Length == 20) { idx = 16; #else if (pr->Attribute_Data_Length == 6) { idx = 4; #endif for (i=0; i<numServ; i++) { uuid = UNPACK_2_BYTE_PARAMETER(&pr->Attribute_Data_List[idx]); if(uuid == P2P_SERVICE_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : P2P_SERVICE_UUID FOUND - connection handle 0x%x \n", aP2PClientContext[index].connHandle); #endif #if (UUID_128BIT_FORMAT==1) aP2PClientContext[index].P2PServiceHandle = UNPACK_2_BYTE_PARAMETER(&pr->Attribute_Data_List[idx-16]); aP2PClientContext[index].P2PServiceEndHandle = UNPACK_2_BYTE_PARAMETER (&pr->Attribute_Data_List[idx-14]); #else aP2PClientContext[index].P2PServiceHandle = UNPACK_2_BYTE_PARAMETER(&pr->Attribute_Data_List[idx-4]); aP2PClientContext[index].P2PServiceEndHandle = UNPACK_2_BYTE_PARAMETER (&pr->Attribute_Data_List[idx-2]); #endif aP2PClientContext[index].state = APP_BLE_DISCOVER_CHARACS ; } idx += 6; } } } } break; case ACI_ATT_READ_BY_TYPE_RESP_VSEVT_CODE: { aci_att_read_by_type_resp_event_rp0 *pr = (void*)blecore_evt->data; uint8_t idx; uint16_t uuid, handle; /* the event data will be * 2 bytes start handle * 1 byte char properties * 2 bytes handle * 2 or 16 bytes data */ uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { /* we are interested in only 16 bit UUIDs */ #if (UUID_128BIT_FORMAT==1) idx = 17; if (pr->Handle_Value_Pair_Length == 21) #else idx = 5; if (pr->Handle_Value_Pair_Length == 7) #endif { pr->Data_Length -= 1; while(pr->Data_Length > 0) { uuid = UNPACK_2_BYTE_PARAMETER(&pr->Handle_Value_Pair_Data[idx]); /* store the characteristic handle not the attribute handle */ #if (UUID_128BIT_FORMAT==1) handle = UNPACK_2_BYTE_PARAMETER(&pr->Handle_Value_Pair_Data[idx-14]); #else handle = UNPACK_2_BYTE_PARAMETER(&pr->Handle_Value_Pair_Data[idx-2]); #endif if(uuid == P2P_WRITE_CHAR_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : WRITE_UUID FOUND - connection handle 0x%x\n", aP2PClientContext[index].connHandle); #endif aP2PClientContext[index].state = APP_BLE_DISCOVER_WRITE_DESC; aP2PClientContext[index].P2PWriteToServerCharHdle = handle; } else if(uuid == P2P_NOTIFY_CHAR_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : NOTIFICATION_CHAR_UUID FOUND - connection handle 0x%x\n", aP2PClientContext[index].connHandle); #endif aP2PClientContext[index].state = APP_BLE_DISCOVER_NOTIFICATION_CHAR_DESC; aP2PClientContext[index].P2PNotificationCharHdle = handle; } #if (UUID_128BIT_FORMAT==1) pr->Data_Length -= 21; idx += 21; #else pr->Data_Length -= 7; idx += 7; #endif } } } } break; case ACI_ATT_FIND_INFO_RESP_VSEVT_CODE: { aci_att_find_info_resp_event_rp0 *pr = (void*)blecore_evt->data; uint8_t numDesc, idx, i; uint16_t uuid, handle; /* * event data will be of the format * 2 bytes handle * 2 bytes UUID */ uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { numDesc = (pr->Event_Data_Length) / 4; /* we are interested only in 16 bit UUIDs */ idx = 0; if (pr->Format == UUID_TYPE_16) { for (i=0; i<numDesc; i++) { handle = UNPACK_2_BYTE_PARAMETER(&pr->Handle_UUID_Pair[idx]); uuid = UNPACK_2_BYTE_PARAMETER(&pr->Handle_UUID_Pair[idx+2]); if(uuid == CLIENT_CHAR_CONFIG_DESCRIPTOR_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : CLIENT_CHAR_CONFIG_DESCRIPTOR_UUID- connection handle 0x%x\n", aP2PClientContext[index].connHandle); #endif if( aP2PClientContext[index].state == APP_BLE_DISCOVER_NOTIFICATION_CHAR_DESC) { aP2PClientContext[index].P2PNotificationDescHandle = handle; aP2PClientContext[index].state = APP_BLE_ENABLE_NOTIFICATION_DESC; } } idx += 4; } } } } break; /*ACI_ATT_FIND_INFO_RESP_VSEVT_CODE*/ case ACI_GATT_NOTIFICATION_VSEVT_CODE: { aci_gatt_notification_event_rp0 *pr = (void*)blecore_evt->data; uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { if ( (pr->Attribute_Handle == aP2PClientContext[index].P2PNotificationCharHdle) && (pr->Attribute_Value_Length == (2)) ) { Notification.P2P_Client_Evt_Opcode = P2P_NOTIFICATION_INFO_RECEIVED_EVT; Notification.DataTransfered.Length = pr->Attribute_Value_Length; Notification.DataTransfered.pPayload = &pr->Attribute_Value[0]; Gatt_Notification(&Notification); /* INFORM APPLICATION BUTTON IS PUSHED BY END DEVICE */ } } } break;/* end ACI_GATT_NOTIFICATION_VSEVT_CODE */ case ACI_GATT_PROC_COMPLETE_VSEVT_CODE: { aci_gatt_proc_complete_event_rp0 *pr = (void*)blecore_evt->data; #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : ACI_GATT_PROC_COMPLETE_VSEVT_CODE \n"); APP_DBG_MSG("\n"); #endif uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { UTIL_SEQ_SetTask( 1<<CFG_TASK_SEARCH_SERVICE_ID, CFG_SCH_PRIO_0); } } break; /*ACI_GATT_PROC_COMPLETE_VSEVT_CODE*/ default: break; } } break; /* HCI_VENDOR_SPECIFIC_DEBUG_EVT_CODE */ default: break; } return(return_value); }/* end BLE_CTRL_Event_Acknowledged_Status_t */
View more
7 REPLIES 7
Andrew Neil
Super User

welcome to the forum.

Please give details of your setup, tools, what debugging you've tried, etc:

See: How to write your question to maximize your chances to find a solution

Also: How to insert source code

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
li4
Associate II

li4_0-1742788800542.pngli4_1-1742788819091.pngli4_2-1742788831763.png

li4_3-1742788849106.png

/* USER CODE BEGIN APP_BLE_Init_2 */
UTIL_SEQ_SetTask(1 << CFG_TASK_START_SCAN_ID, CFG_SCH_PRIO_0);
/* USER CODE END APP_BLE_Init_2 */

case AD_TYPE_MANUFACTURER_SPECIFIC_DATA: /* Manufacturer Specific */
/* USER CODE BEGIN AD_TYPE_MANUFACTURER_SPECIFIC_DATA */

/* USER CODE END AD_TYPE_MANUFACTURER_SPECIFIC_DATA */
if (adlength >= 7 && adv_report_data[k + 2] == 0x01)
{ /* ST VERSION ID 01 */
APP_DBG_MSG("--- ST MANUFACTURER ID --- \n\r");
// switch (adv_report_data[k + 3])
// { /* Demo ID */
// case CFG_DEV_ID_P2P_SERVER1: /* End Device 1 */
APP_DBG_MSG("-- SERVER DETECTED -- VIA MAN ID\n\r");
BleApplicationContext.DeviceServerFound = 0x01;
SERVER_REMOTE_ADDR_TYPE = 0x00;
SERVER_REMOTE_BDADDR[0] = 0x14;
SERVER_REMOTE_BDADDR[1] = 0x24;
SERVER_REMOTE_BDADDR[2] = 0x00;
SERVER_REMOTE_BDADDR[3] = 0xE1;
SERVER_REMOTE_BDADDR[4] = 0x80;
SERVER_REMOTE_BDADDR[5] = 0x02;
// break;

// default:
// break;
// }
}
break;

li4
Associate II

li4_4-1742788973099.pngli4_5-1742788986325.pngli4_6-1742788999409.pngli4_7-1742789011906.pngli4_8-1742789022157.png

** CREATE CONNECTION TO SERVER **

 

 

 

** CONNECTION COMPLETE EVENT WITH SERVER

 

 

 

** GATT SERVICES & CHARACTERISTICS DISCOVERY

 

* GATT : Start Searching Primary Services

 

ECODE: 0xc0a

ECODE: 0xc0a

-- GATT : P2P_SERVICE_UUID FOUND - connection handle 0x801

aP2PClientContext[index].P2PServiceHandle 0xc

aP2PClientContext[index].P2PServiceEndHandle 0x11

ECODE: 0xc11  

为什么在以下日志之后 ECODE 更改为 0xc11:ECODE: 0xc0a, ECODE: 0xc0a, -- GATT: P2P_SERVICE_UUID FOUND - 连接句柄 0x801, aP2PClientContext[index].P2PServiceHandle 0xc,aP2PClientContext[index].P2PServiceEndHandle 0x11?


Google translate:

Why does ECODE change to 0xc11 after the following logs: ECODE: 0xc0a, ECODE: 0xc0a, -- GATT: P2P_SERVICE_UUID FOUND - Connection handle 0x801, aP2PClientContext[index].P2PServiceHandle 0xc, aP2PClientContext[index].P2PServiceEndHandle 0x11?

Again, please see How to insert source code.

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
#if (OOB_DEMO == 0) /** * Start scanning */ UTIL_SEQ_SetTask(1 << CFG_TASK_START_SCAN_ID, CFG_SCH_PRIO_0); #endif /* USER CODE BEGIN APP_BLE_Init_2 */ UTIL_SEQ_SetTask(1 << CFG_TASK_START_SCAN_ID, CFG_SCH_PRIO_0); /* USER CODE END APP_BLE_Init_2 */ return;static void Connect_Request(void) { /* USER CODE BEGIN Connect_Request_1 */ uint8_t paddr[]={0x14,0x24,0x00,0xE1,0x80,0x02}; /* USER CODE END Connect_Request_1 */ tBleStatus result; APP_DBG_MSG("\r\n\r** CREATE CONNECTION TO SERVER ** \r\n\r"); if (BleApplicationContext.Device_Connection_Status != APP_BLE_CONNECTED_CLIENT) { result = aci_gap_create_connection(SCAN_P, SCAN_L, SERVER_REMOTE_ADDR_TYPE, paddr, CFG_BLE_ADDRESS_TYPE, CONN_P1, CONN_P2, 0, SUPERV_TIMEOUT, CONN_L1, CONN_L2); if (result == BLE_STATUS_SUCCESS) { /* USER CODE BEGIN BLE_CONNECT_SUCCESS */ /* USER CODE END BLE_CONNECT_SUCCESS */ BleApplicationContext.Device_Connection_Status = APP_BLE_LP_CONNECTING; } else { /* USER CODE BEGIN BLE_CONNECT_FAILED */ /* USER CODE END BLE_CONNECT_FAILED */ BleApplicationContext.Device_Connection_Status = APP_BLE_IDLE; } } /* USER CODE BEGIN Connect_Request_2 */ /* USER CODE END Connect_Request_2 */ return; }
View more
li4
Associate II
static SVCCTL_EvtAckStatus_t Event_Handler(void *Event) { SVCCTL_EvtAckStatus_t return_value; hci_event_pckt *event_pckt; evt_blecore_aci *blecore_evt; P2P_Client_App_Notification_evt_t Notification; return_value = SVCCTL_EvtNotAck; event_pckt = (hci_event_pckt *)(((hci_uart_pckt*)Event)->data); switch(event_pckt->evt) { case HCI_VENDOR_SPECIFIC_DEBUG_EVT_CODE: { blecore_evt = (evt_blecore_aci*)event_pckt->data; APP_DBG_MSG("ECODE 0x%x \n", blecore_evt->ecode); switch(blecore_evt->ecode) { case ACI_ATT_READ_BY_GROUP_TYPE_RESP_VSEVT_CODE: { aci_att_read_by_group_type_resp_event_rp0 *pr = (void*)blecore_evt->data; uint8_t numServ, i, idx; uint16_t uuid, handle; uint8_t index; handle = pr->Connection_Handle; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].state != APP_BLE_IDLE)) { APP_BLE_ConnStatus_t status; status = APP_BLE_Get_Client_Connection_Status(aP2PClientContext[index].connHandle); if((aP2PClientContext[index].state == APP_BLE_CONNECTED_CLIENT)&& (status == APP_BLE_IDLE)) { /* Handle deconnected */ aP2PClientContext[index].state = APP_BLE_IDLE; aP2PClientContext[index].connHandle = 0xFFFF; break; } index++; } if(index < BLE_CFG_CLT_MAX_NBR_CB) { aP2PClientContext[index].connHandle= handle; numServ = (pr->Data_Length) / pr->Attribute_Data_Length; /* the event data will be * 2bytes start handle * 2bytes end handle * 2 or 16 bytes data * we are interested only if the UUID is 16 bit. * So check if the data length is 6 */ #if (UUID_128BIT_FORMAT==1) if (pr->Attribute_Data_Length == 20) { idx = 16; #else if (pr->Attribute_Data_Length == 6) { idx = 4; #endif for (i=0; i<numServ; i++) { uuid = UNPACK_2_BYTE_PARAMETER(&pr->Attribute_Data_List[idx]); if(uuid == P2P_SERVICE_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : P2P_SERVICE_UUID FOUND - connection handle 0x%x \n", aP2PClientContext[index].connHandle); #endif #if (UUID_128BIT_FORMAT==1) aP2PClientContext[index].P2PServiceHandle = UNPACK_2_BYTE_PARAMETER(&pr->Attribute_Data_List[idx-16]); aP2PClientContext[index].P2PServiceEndHandle = UNPACK_2_BYTE_PARAMETER (&pr->Attribute_Data_List[idx-14]); #else aP2PClientContext[index].P2PServiceHandle = UNPACK_2_BYTE_PARAMETER(&pr->Attribute_Data_List[idx-4]); aP2PClientContext[index].P2PServiceEndHandle = UNPACK_2_BYTE_PARAMETER (&pr->Attribute_Data_List[idx-2]); #endif APP_DBG_MSG("aP2PClientContext[index].P2PServiceHandle 0x%x \n", aP2PClientContext[index].P2PServiceHandle); APP_DBG_MSG("aP2PClientContext[index].P2PServiceEndHandle 0x%x \n", aP2PClientContext[index].P2PServiceEndHandle); aP2PClientContext[index].state = APP_BLE_DISCOVER_CHARACS; } idx += 6; } } } } break; case ACI_ATT_READ_BY_TYPE_RESP_VSEVT_CODE: { aci_att_read_by_type_resp_event_rp0 *pr = (void*)blecore_evt->data; uint8_t idx; uint16_t uuid, handle; /* the event data will be * 2 bytes start handle * 1 byte char properties * 2 bytes handle * 2 or 16 bytes data */ uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { /* we are interested in only 16 bit UUIDs */ #if (UUID_128BIT_FORMAT==1) idx = 17; if (pr->Handle_Value_Pair_Length == 21) #else idx = 5; if (pr->Handle_Value_Pair_Length == 7) #endif { pr->Data_Length -= 1; while(pr->Data_Length > 0) { uuid = UNPACK_2_BYTE_PARAMETER(&pr->Handle_Value_Pair_Data[idx]); /* store the characteristic handle not the attribute handle */ #if (UUID_128BIT_FORMAT==1) handle = UNPACK_2_BYTE_PARAMETER(&pr->Handle_Value_Pair_Data[idx-14]); #else handle = UNPACK_2_BYTE_PARAMETER(&pr->Handle_Value_Pair_Data[idx-2]); #endif if(uuid == P2P_WRITE_CHAR_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : WRITE_UUID FOUND - connection handle 0x%x\n", aP2PClientContext[index].connHandle); #endif aP2PClientContext[index].state = APP_BLE_DISCOVER_WRITE_DESC; aP2PClientContext[index].P2PWriteToServerCharHdle = handle; } else if(uuid == P2P_NOTIFY_CHAR_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : NOTIFICATION_CHAR_UUID FOUND - connection handle 0x%x\n", aP2PClientContext[index].connHandle); #endif aP2PClientContext[index].state = APP_BLE_DISCOVER_NOTIFICATION_CHAR_DESC; aP2PClientContext[index].P2PNotificationCharHdle = handle; } #if (UUID_128BIT_FORMAT==1) pr->Data_Length -= 21; idx += 21; #else pr->Data_Length -= 7; idx += 7; #endif } } } } break; case ACI_ATT_FIND_INFO_RESP_VSEVT_CODE: { aci_att_find_info_resp_event_rp0 *pr = (void*)blecore_evt->data; uint8_t numDesc, idx, i; uint16_t uuid, handle; /* * event data will be of the format * 2 bytes handle * 2 bytes UUID */ uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { numDesc = (pr->Event_Data_Length) / 4; /* we are interested only in 16 bit UUIDs */ idx = 0; if (pr->Format == UUID_TYPE_16) { for (i=0; i<numDesc; i++) { handle = UNPACK_2_BYTE_PARAMETER(&pr->Handle_UUID_Pair[idx]); uuid = UNPACK_2_BYTE_PARAMETER(&pr->Handle_UUID_Pair[idx+2]); if(uuid == CLIENT_CHAR_CONFIG_DESCRIPTOR_UUID) { #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : CLIENT_CHAR_CONFIG_DESCRIPTOR_UUID- connection handle 0x%x\n", aP2PClientContext[index].connHandle); #endif if( aP2PClientContext[index].state == APP_BLE_DISCOVER_NOTIFICATION_CHAR_DESC) { aP2PClientContext[index].P2PNotificationDescHandle = handle; aP2PClientContext[index].state = APP_BLE_ENABLE_NOTIFICATION_DESC; } } idx += 4; } } } } break; /*ACI_ATT_FIND_INFO_RESP_VSEVT_CODE*/ case ACI_GATT_NOTIFICATION_VSEVT_CODE: { aci_gatt_notification_event_rp0 *pr = (void*)blecore_evt->data; uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { if ( (pr->Attribute_Handle == aP2PClientContext[index].P2PNotificationCharHdle) && (pr->Attribute_Value_Length == (2)) ) { Notification.P2P_Client_Evt_Opcode = P2P_NOTIFICATION_INFO_RECEIVED_EVT; Notification.DataTransfered.Length = pr->Attribute_Value_Length; Notification.DataTransfered.pPayload = &pr->Attribute_Value[0]; Gatt_Notification(&Notification); /* INFORM APPLICATION BUTTON IS PUSHED BY END DEVICE */ } } } break;/* end ACI_GATT_NOTIFICATION_VSEVT_CODE */ case ACI_GATT_PROC_COMPLETE_VSEVT_CODE: { aci_gatt_proc_complete_event_rp0 *pr = (void*)blecore_evt->data; // /*GAP中央设备启动发现所有服务特征的 // 流程:conn_handle是hci_le_advertising_report_event()事件回调返回的连接句柄 */ // if(aci_gatt_disc_all_char_of_service(aP2PClientContext[index].connHandle, aP2PClientContext[index].P2PServiceHandle,/* Servicehandle */ aP2PClientContext[index].P2PServiceEndHandle/* 结束组句柄 */ // ) != BLE_STATUS_SUCCESS) // { // APP_DBG_MSG("Failure.\n"); // } #if(CFG_DEBUG_APP_TRACE != 0) APP_DBG_MSG("-- GATT : ACI_GATT_PROC_COMPLETE_VSEVT_CODE \n"); APP_DBG_MSG("\n"); #endif uint8_t index; index = 0; while((index < BLE_CFG_CLT_MAX_NBR_CB) && (aP2PClientContext[index].connHandle != pr->Connection_Handle)) index++; if(index < BLE_CFG_CLT_MAX_NBR_CB) { UTIL_SEQ_SetTask( 1<<CFG_TASK_SEARCH_SERVICE_ID, CFG_SCH_PRIO_0); } } break; /*ACI_GATT_PROC_COMPLETE_VSEVT_CODE*/ default: break; } } break; /* HCI_VENDOR_SPECIFIC_DEBUG_EVT_CODE */ default: break; } return(return_value); }/* end BLE_CTRL_Event_Acknowledged_Status_t */
View more