This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2651R3: Wake from shutdown not working as expected with multiple wakeup pins enabled

Part Number: CC2651R3

I have the UART RX pin and another GPIO pin set to wake the MCU from shutdown when they go high.

When the board is not connected to anything and I toggle either of these two pins high, the MCU wakes from shutdown as expected.

However, when the board is on a test fixture that has a pull up on the UART RX pin, the board won't wake when the other GPIO is toggled, but does wake from the UART RX pin being toggled.

I think what's going on is that since the UART RX pin is already at the wake up level when the MCU goes into shutdown mode, it is somehow blocking all wake up signals until it is toggled low and high.

It would seem that the wake up is level based?  What I would like is for the wake to be edge based, thus sitting at the high level would not assert the wake signal.

There appear to be registers that might do this (IOCFGx: IOEV_MCU_WU_EN), but I've tried enabling both the IOEV_MCU_WU_EN and EDGE_DET bits, but that didn't work.

Is it possible to wake on positive going edge and not on a level?

  • Hello ZIJWS,

    If any of the wakeup pins are at the active level during the Shutdown transition, the edge of any wakeup pin will not be detected until all the pins are returned to the inactive position.  This is a known limitation of SimpleLink CC13XX and CC26XX devices: https://e2e.ti.com/f/1/t/683237 

    The IO pads are level sensitive when configured for wake up from shutdown (WU_CFG in IOCFGx ). An internal signal is generated from the pad when the input level match the set level (WU_CFG - 10: LOW, - 11: HIGH). All these signals from the IO pads are internally OR'ed together to form a single signal routed to an internal edge trigger block. When one of the input signals remain active, there will be no edge signal on the internal edge detect block until the active input is released. If then one of the several input configured for wake up from shutdown remain active before and after they are configured and the device enter shutdown there will be no internal edge generated to wake up the device.

    Please note as well that the PIN.h TI Driver will be removed in the 2Q22 release.  Please refer to the GPIO++ Driver Porting Guide from the Z-Stack Migration Guide.

    Regards,
    Ryan