Hi,
I am working on a BLE application that runs on MCU KW38. The application is simple, it scans BLE advertisement and send it over CAN if the data matches an specific pattern. I use nRFConnect to emulate the BLE devices being tracked.
The application relies on the BLE library included the in the SDK_2.6.11_FRDM-KW38 to support BLE connectivity.
The behaviour of the application is as expected but eventually, the BLE controller library raises a hardfault. Specifically, the function ll_update_adv_report_event(). See the screeshot attached for more details.
The time needed to reproduce the issue strongly depend on the densitity of BLE devices present in the environment. At home, it takes minutes or even hours to fail. However, in the office, it takes a minute.
Is this issue something known?
Any suggestions on how to find out / solve it?
Note: I enabled all the FreeRtos hooks relative to memory fails (stackoverflow and malloc failed) to track if it is an issue related to lack of memory but none of them were triggered.
Hello, hope you are doing well,
I would strongly recommend using an example from the latest SDK as a base for starting a custom project code; This to avoid BLE related issues and have the improvements from the latest SDK version. The latest SDK version for FRDM-KW38 is the 2.6.15.
One example that involves multiple devices connections is the Wireless Uart example,
This application behaves at first as a GAP central node, it enters GAP Limited Discovery procedure and searches for other Wireless UART devices to connect; you can switch to peripheral role and when the device enters GAP General Discoverable Mode and waits for a GAP central note to connect. This application requires more resources just to take in mind.
Please, try updating to the latest SDK available and let me know your findings
Let me know your comments on this and if you have any further question, please do not hesitate to ask.
Best Regards
Luis
Hello
In order to try to identify the problem described, we would need to confirm in which example where you based your application and the modifications that need to be made for us try to replicate it.
It is strongly recommended that for starting a custom code, use an example provided from NXP as a base and then modify to customer requirements.
Could you help us confirm if you can test any BLE example from the SDK on the board before?
Best Regards
Luis