Skip to main content
Associate II
March 20, 2025
Solved

STM32WB09 deepstop mode

  • March 20, 2025
  • 1 reply
  • 636 views

I'm trying to run a sample PWR_DEEPSTOP_RTC from PWR_DEEPSTOP_RTC, but I'm facing some problems.
The code works correctly, the UC enters deepstop mode and returns to run mode, but when I try to measure the current in PJ2 as described in item 7.1.4 of UM3345, I get 90uA when in deepstop mode and not around 1uA as the datasheet says. (RTC wakeUP, LSi 32k).

I follow this example recipe:

/* The following Wakeup sequence is highly recommended before each entry into Deepstop mode
especially when using more than one wakeup source, this is to not miss any wakeup event.
- Disable all used wakeup sources,
- Clear all related wakeup flags,
- Re-enable all used wakeup sources,
- Enter Deepstop mode.
*/

Is there anything I missed or didn't understand?

Best answer by rlopes

Yes, I am using the ST example, STM32CubeWB0\Projects\NUCLEO-WB09KE\Examples\PWR.

I was only able to achieve the correct current consumption when I went to the .ioc file in CubeMX under Project Manager -> Code Generator -> HAL Settings and enabled the option "Set all free pins as analog (to optimize power consumption)", which is not enabled by default in the provided example.

1 reply

STTwo-32
Technical Moderator
April 10, 2025

Hello @rlopes 

First, are you using the same ST Example or another one based on it.

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.
rlopesAuthorAnswer
Associate II
April 11, 2025

Yes, I am using the ST example, STM32CubeWB0\Projects\NUCLEO-WB09KE\Examples\PWR.

I was only able to achieve the correct current consumption when I went to the .ioc file in CubeMX under Project Manager -> Code Generator -> HAL Settings and enabled the option "Set all free pins as analog (to optimize power consumption)", which is not enabled by default in the provided example.