2021-10-27 05:54 AM
Hello geeks...
Hope all are doing well
Recently, I'm dealing with the STM32WB Tickless Idle mode of the FreeRTOS (CMSIS-V2)
I'm intended to achieve the lowest power consumption with STOP1/2 mode
To do so, I'm following the official tutorial for the same, which is mentioned here
https://www.youtube.com/watch?v=B1cUWRpXrPU
Previously, i have tried with the Normal Ticklees sleep mode
With the normal sleep mode, while iterating with the main thread, I'm using 4000 ms as a osSleep & 1000ms as a run mode
Here is the code snippet
void MainThread(void *argument)
{
/* USER CODE BEGIN 5 */
/* Infinite loop */
for(;;)
{
osDelay(4000);
printf("1\r\n");
HAL_Delay(1000);
}
/* USER CODE END 5 */
}
With that configuration, i can get min 523uA & max 580uA
it means there is no significant difference there!
Then after i tries with the STOP 1/2 modes
However the main issue is, instead of blocking of the 4000 ms during the osSleep the MCU getting wake-up and it's printing the message!
It means, I'm getting the UART log message at every 1 sec!
I have attached the PDF report of the Cube IDE
All suggestions and advice welcome :)
Thanks