cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WB55-Nucleo + BLE_HeartRateFreeRTOS - app crashes after ~40mins

ACoad.1
Associate II

Hi,

I have a STM32WB55-Nucleo running the BLE_HeartRateFreeRTOS sample application. All works well for a while - I can scan and connect to it (from LightBlue on iOS) and read, write and subscribe to notifications. However, after approximately 40 mins, the application crashes.

My environment is:

  • STM32CubeIDE 1.5.1 on Mac OS 10.14.6
  • STM32CubeWB-master (downloaded directly from github - v1.9??)
  • STM32Cube_FW_WB_v1.10.0 (patch downloaded from STM.com)
  • BLE_HeartRateFreeRTOS sample (I am not generating any code from the MX view in STM32CubeIDE)
  • stm32wb5x_BLE_Stack_full_fw.bin from downloaded patch uploaded to Nucleo board using CLI to address 0x080CB000

The application crashes because it exits from the Idle Task in port.c as shown here (can't upload screenshot for some reason...):

/* Start the first task. */
	prvPortStartFirstTask();
 
	/* Should never get here as the tasks will now be executing!  Call the task
	exit error function to prevent compiler warnings about a static function
	not being called in the case that the application writer overrides this
	functionality by defining configTASK_RETURN_ADDRESS.  Call
	vTaskSwitchContext() so link time optimisation does not remove the
	symbol. */
	vTaskSwitchContext(); <------ HALTS ON BREAKPOINT HERE
	prvTaskExitError();
 
	/* Should not get here! */
	return 0;

I have:

  • checked each stack (6 of them) for overflow and all are OK (I checked each stack directly in the memory browser)
  • turned off UARTs and DMA - no change, still crashes

Take note that the crash happens without interacting with the peripheral. If I start up the peripheral and leave it running without interacting with it in any way, the peripheral crashes after about 40 mins.

I would appreciate any assistance or pointers to help me debug this.

Kind regards,

AC

0 REPLIES 0