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.

RTOS/MSP432-RTOS: MSP432 Periodic Wakeup with TI-RTOS DEEPSLEEP0 (LPM3)

Part Number: MSP432-RTOS

Tool/software: TI-RTOS

Hi,

We would like to create a simple application that wakes up periodically from timer and do some processing.  We are planning to set the power state to LPM3 to enjoy < 1 uA power consumption during sleep state. However, according to TI-RTOS 2.20 power management user guide, the clock module is disabled when MSP432 is in deep sleep states.  Does this mean the processor can only be waked up from external GPIO during LPM3 when running with TI-RTOS? According to TRM, the RTC should still be running in LPM3 for MSP432 hardware. 

Thanks,

Jianwei

  • Hi Jianwei,

    You can refer to this write-up for ways to get into LPM3: processors.wiki.ti.com/.../TI-RTOS_MSP432_Timer

    Todd
  • Thanks. This is exactly what I need. I have couple more follow up questions:

    1. Is the watchdog timer source from VLOCLK or BCLK in interval mode by default? I try to reduce the clock tick 250,000 from the example cfg, but it seems like the tick period remains the same after I clean and recompile.

    2. I got around 8.8 uA sleep current with MSP432 launchpad in LPM3. I am guessing this is because the gpioPinConfigs[] in MSP_EXP432P401R.c only list a few GPIO pins, and the rest of the PINs will not be parked by power manager. Do you know where I can find the complete list of the gpioPinConfigs[] with correct input/output, pull up/down setting?

    Jianwei
  • Jianwei Zhou said:
    1. Is the watchdog timer source from VLOCLK or BCLK in interval mode by default? I try to reduce the clock tick 250,000 from the example cfg, but it seems like the tick period remains the same after I clean and recompile.

    I'm not sure of the exact details. I know WDT does not have the greatest granularity. You might ask on the MSP forum for the specific details of this timer.

    Jianwei Zhou said:
    2. I got around 8.8 uA sleep current with MSP432 launchpad in LPM3. I am guessing this is because the gpioPinConfigs[] in MSP_EXP432P401R.c only list a few GPIO pins, and the rest of the PINs will not be parked by power manager. Do you know where I can find the complete list of the gpioPinConfigs[] with correct input/output, pull up/down setting?

    What version of TI-RTOS are you using? We added an enableParking field into the PowerMSP432_Config struct in tirtos_msp43x_2_20_00_06. I've used the following before in Board_initGeneral(), but I heard it from a guy who knows a guy, so major disclaimer!

        P1OUT = 0x00; P2OUT = 0x00; P3OUT = 0x00; P4OUT = 0x00; P5OUT = 0x00;

        P6OUT = 0x00; P7OUT = 0x00; P8OUT = 0x00; P9OUT = 0x00; P10OUT = 0x00;

        PJOUT = 0x00;

        P1DIR = 0xFF; P2DIR = 0xFF; P3DIR = 0xFF; P4DIR = 0xFF; P5DIR = 0xFF;

        P6DIR = 0xFF; P7DIR = 0xFF; P8DIR = 0xFF; P9DIR = 0xFF; P10DIR = 0xFF;

        PJDIR = 0xFF;

    It would probably be better to move to the tirtos_msp43x_2_20_00_06 if you have an older one. The above might be a good sanity check, but I'd be leery of shipping that in production code.


    Todd