Skip to main content
egoltzman
Senior
Jun 27, 2022 10:37 AM UTC
Question

Working with FreeRTOS in low power tickless mode for long stop periods

I'm using FreeRTOS in an STM32WL55 based application that needs to be active only few time per day (3-6).

The system need to be in stop mode for most of the time and I have an external line that is connected to the LPTIM and based on this line status the system needs to wake up do some activities.

All the FreeRTOS & STM32 discussion I read refer to FreeRTOS Tickless mode where the system needs to wake up periodically on a relatively fast rate (this is based on the system clock mainly) to keep its internal tick. This is indeed needed if you are using OS timers or some task are waiting on a service that is time based (e.g. wait for a message or osDelay)

But if the system does not use any OS timebase services while in stop mode one would wants the system to stay in stop mode as long as possible.

How can this be achieve?

Is there any examples for that?

Thanks

This topic has been closed for replies.

2 replies

Louis AUDOLY
ST Employee
Jun 30, 2022 7:40 AM UTC

Hello @egoltzman​ ,

Actually the Tickless mode implemented in the firmware does not allows you to stay as along as you need in stop mode, in the STM32Cube_FW_WB_V1.13.0, you can refer to the project under Projects\P-NUCLEO-WB55.Nucleo\Applications\BLE\BLE_HeartRateFreeRTOS. In this project is implemented a low power tickless idle as you are looking for.

I hope it helps

Regards

egoltzman
egoltzmanAuthor
Senior
Jun 30, 2022 12:57 PM UTC

Thanks Louis, I'll check your refence