cancel
Showing results for 
Search instead for 
Did you mean: 

NUCLEO-U083RC - LPUART2 wake-up from Stop2 fails after power cycling

Errorr__
Associate III

Hello all,

We are testing LPUART wake-up from Stop 2 mode using the STM32CubeU0 LL example:

STM32Cube_FW_U0_V1.2.0/Projects/NUCLEOU083RC/Examples_LL/LPUART/LPUART_WakeUpFromStop2_Init

We made a minimal modification to the example:

  • Replaced LPUART1 with LPUART2
  •  Used the corresponding GPIO pins for LPUART2 (PB10,PB11)
  • Configuration otherwise unchanged (same clock source, wake-up on RX, interrupt-based RX)

Observed behavior on NUCLEO-U083RC

  1. After programming the board using STM32CubeProgrammer in hardware reset mode, the example works correctly:
    1. MCU enters Stop 2
    2. RX activity on LPUART2 wakes the system as expected
  2. However, after disconnecting and reconnecting the power supply LPUART2 no longer wakes the MCU from Stop 2
  3. RX data arrives on the pin, but no wake-up occurs
  4. If we again connect and disconnect the programmer (in hardware reset mode) the system starts working normally again, wake-up from Stop 2 via LPUART2 is restored

Additional observations

  • Using LPUART1 instead of LPUART2, with the same configuration approach, works reliably
  • The issue appears specific to LPUART2 wake-up after a cold power cycle
  • The same behavior was also observed on a custom board using STM32U073CBT6

Has this behavior been observed before?
Is there any known requirement or additional reset/initialization step specific to LPUART2 for wake-up from Stop 2 after a power-on reset? I have attached the (modified) example code for your reference.

Thanks in advance for your support.

1 ACCEPTED SOLUTION

Accepted Solutions
Gyessine
ST Employee

Hello @Errorr__ 
Based on the reference manual table 22
LPUART 2 and 3 does not support wakeup capability from stop 2 mode.

Gyessine_0-1769680808848.png

Only LPUART1 supports this feature. This limitation is intentional to make stop 2 mode more power efficient.
I recommend using LPUART1, or use stop 0 or stop 1 mode if you need to use LPUART2 or LPUART3.

BR
Gyessine

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

5 REPLIES 5
Gyessine
ST Employee

Hello @Errorr__ 
Based on the reference manual table 22
LPUART 2 and 3 does not support wakeup capability from stop 2 mode.

Gyessine_0-1769680808848.png

Only LPUART1 supports this feature. This limitation is intentional to make stop 2 mode more power efficient.
I recommend using LPUART1, or use stop 0 or stop 1 mode if you need to use LPUART2 or LPUART3.

BR
Gyessine

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.

Hi @Gyessine ,

Thank you for the response. When we checked the reference manual, Table 22 indicates that LPUART (x = 1, 2, 3) supports wake-up from Stop 2 mode (I’ve attached a screenshot for reference). However, it appears that this information differs between document versions. The document you referred to is RM0503 Rev. 4, whereas we were referring to RM0503 Rev. 2.

I also reverified the ST example using LPUART2 with Stop 1 mode instead of Stop 2, and it works correctly.

Errorr___0-1769682002291.png

 

Gyessine
ST Employee

Hello @Errorr__ 
the fact that LPUART2 and LPUART3 supports wake-up capability in stop 2 mode in revision 2 is a documentation error that was corrected in newer versions
I am glad you solved your issue. Please mark it as solved so that it can serve as a reference for other community users.
BR

Gyessine

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.


@Errorr__ wrote:

The document you referred to is RM0503 Rev. 4, whereas we were referring to RM0503 Rev. 2.


Always good to make sure you have the most recent revision!

If you look at the revision history in Rev 4, you'll see that a lot was changed since Rev 2.

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
Errorr__
Associate III

Yes, this was actually good lesson!