cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WB55 - Continuous running tasks negatively affect BLE and cause BLE to not work properly.

inancmert
Visitor

There is a sensor that I receive data from with 250 Hz sampling from Interrupt. I write the incoming data to the FreeRTOS queue. And I pull this data from the queue and write it continuously to the SD card. There is also a BLE in my project. When there is a BLE connect, I also write the data coming from the interrupt to the BLE queue and send it to the phone application via BLE. The problem is: When the device works as I explained above, I noticed that BLE does not work stably. It can miss connect or disconnect packets. When I did some research on this, many people have experienced this problem. It is suggested to use SEQUENCE in a FreeRTOS project. However, SEQUENCE is a library designed for bare metal.

There is no documentation for the SEQUENCE library. There is no sample code either.

Can you help me with this issue? What do we need to do? Can SEQUENCE solve the problem?
- There are 3 tasks in the project. (sd card, ble task, control task)
- Task piorities are the same. (When they are not the same, they crush each other.)
- SD card task has to work continuously.

1 REPLY 1
STTwo-32
ST Employee

Hello @inancmert and welcome to the ST Community.

The sequencer may solve the issue you are facing. To implement it, you may refer to this wiki, the AN5289 specially the chapter 4.4 and the examples on the STM32CubeWB (almost all of them are using the sequencer). If you want to keep with FreeRTOS, you can refer to the STM32CubeWB examples that ends with FreeRTOS.

Best Regards.

STTwo-32

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.