This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2340R5: After receiving the notification, enabling Scan will enter faultISR

Part Number: CC2340R5

Tool/software:

CCS Version: 12.7.0.00007 

SDK: 8.10.01

Project : basic_ble_LP_EM_CC2340R5_freertos_ticlang

I am testing CC2340R5 as the Central side to receive notification data from the Peripheral side. I found that when I receive more than 300 packets of data (each has 20 Bytes), calling BLEAppUtil_invokeFunctionNoData((InvokeFromBLEAppUtilContext_t)callbackStartScan); will cause CC2340R5 to enter faultISR, and after each notification I will perform GATT_bm_free(&gattMsg->msg,gattMsg->method); to ensure that the memory is released, and I looked at the ROV to make sure the stack looked normal , as shown in the figure below

This situation will not happen if there are less than 300 transactions.

And I used the break point to perform single-step execution after calling BLEAppUtil_invokeFunctionNoData((InvokeFromBLEAppUtilContext_t)callbackStartScan); and found that it seemed to be in void *BLEAppUtil_Task(void *arg) of bleapputil_task.c, to perform a BLEAppUtil_free(pMsgData);, and then CC2340 entered faultISR




Is it because my stack overflows? I believe this is not caused by simply starting Scan. It should also happen if other Bluetooth functions are called.