cancel
Showing results for 
Search instead for 
Did you mean: 

How to enter Low Power or Standby mode on NUCLEO-U575ZI-Q ?

hetal-mpc
Associate II

I am new to STM32 and I wanted to create low power and standby power mode for my application,

I am using NUCLEO-U575ZI-Q devkit runs on 160MHz high frequency clock and create project with only single GPIO configured as EXTINT to wakeup

I have supplied external 5v supply for that I have changed connected jumper to 5V_EXT and removed from 5V_STLK

Measured current 64.75mA.

I have used reference from here: https://wiki.stmicroelectronics.cn/stm32mcu/wiki/Getting_started_with_PWR#Sleep_mode

 

 

 

...
void HAL_GPIO_EXTI_Rising_Callback(uint16_t GPIO_Pin)
{
	HAL_ResumeTick();
}

/* USER CODE END 0 */

/**
  * @brief  The application entry point.
  * @retval int
  */
int main(void)
{

  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* Configure the System Power */
  SystemPower_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  /* USER CODE BEGIN 2 */

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
	  HAL_SuspendTick();

	  HAL_PWR_EnterSLEEPMode(PWR_MAINREGULATOR_ON, PWR_SLEEPENTRY_WFI);
  }
  /* USER CODE END 3 */
}
...

 

 

 

Thank you in advance. 

1 ACCEPTED SOLUTION

Accepted Solutions

Hi @hetal-mpc ,

  1. As stated in table 106 of RM0456, wake-up sources from standby mode are:  WKUPx pin edge, RTC/TAMP event/interrupt, NRST pin external reset, IWDG reset, BOR reset.
  2. Try to configure pins in analog mode, this will help to reduce power consumption (refer to this article for the how to).
  3. More tips can be found here to reduce power consumption.

-Amel

 

 

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.

View solution in original post

6 REPLIES 6
Amel NASRI
ST Employee

Hi @hetal-mpc ,

Which low power mode do you need? Is it standby mode? What you are getting if far from standby mode values.

I suggest you try the examples provided in the STM32Cube package first: STM32CubeU5/Projects/NUCLEO-U575ZI-Q/Examples/PWR at main · STMicroelectronics/STM32CubeU5 · GitHub.

Please refer to the readme file of each example to know more how it works and the expected setup.

To validate the values you are measuring, you need to compare them to the ones in the datasheet ("Current Consumption" tables in "Supply current characteristics" paragraph).

-Amel

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.

hetal-mpc
Associate II

Thanks @Amel NASRI for the response. 

 

I am trying to configure both sleep mode and standby mode.

Given examples helped me and I could see in standby mode it is draining ~240uA of  Idd current which is high, as per the datasheet the standby current should be 0.64uA with 3v3 Vdd.

To wake up I see there is WAKEUP pins are given BUT is there any way I can configure wakeup on any other GPIO external interrupt ?

 

For Sleep mode the Idd drops  from 9mA to ~7.44mA when it enters to sleep mode and the currents are still high,  and it sleep should be 4.35mA 25°C.

I have I2C1, UART1 and UART2 enabled when it enters to sleep mode does that causing this much of current?  I have tested with disabling it but could not see much difference. 

 

Thanks 

Hetal

Hi @hetal-mpc ,

  1. As stated in table 106 of RM0456, wake-up sources from standby mode are:  WKUPx pin edge, RTC/TAMP event/interrupt, NRST pin external reset, IWDG reset, BOR reset.
  2. Try to configure pins in analog mode, this will help to reduce power consumption (refer to this article for the how to).
  3. More tips can be found here to reduce power consumption.

-Amel

 

 

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.

hetal-mpc
Associate II

Hi @Amel NASRI

 

Thank you for the documents links and information. 

For STOP2 mode,  it enters to low power mode but it stays in it, i have configured the EXTI to wakeup but it does not affecting it. can you provide me what i can check to find what is preventing it to exit the wake up? 

Hetal. 

hetal-mpc
Associate II

@Amel NASRI Any input for wakeup from STOP2 mode?

I got that working on bare-metal code, but got issues that it entering and quickly exiting from STOP2 with RTOS integrated. 

 

Thanks. 

Hetal

Hi @hetal-mpc ,

Should we consider that initial question was already answered?

In such case, you need to submit any new question in new thread.

Regarding the current situation: as we don't have access to your code, there are several reasons that may lead to the faced issue: pending interrupts, debug request, wakeup flags not cleared, …

If you are using FreeRTOS, the example NUCLEO-U575ZI-Q\FreeRTOS_Semaphore_LowPower  can be a good start for you. You find it in the X-CUBE-FREERTOS package.

-Amel

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.