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.

MSP432P401R: Confusion on Achieving Low Power Mode with SAP_close from SimpleLink SDK Bluetooth Plugin

Part Number: MSP432P401R

Hello,

I have confusion regarding SimpleLink SDK Bluetooth Plugin with MSP432P401R + CC2640R2. It says that to achieve deeper low power mode such as LPM3, the SAP_close must be called in order to release the UART driver. I am currently using SimpleLink SDK Bluetooth Plugin 1.40.00.42.

I observe the code from reference design for Access Control Panel with BLE:
http://www.ti.com/tool/tidm-1004

What I found is the SAP_close only executes when AP_taskFxn is on AP_SBL state. During normal operation there is no call to SAP_close but device can be set to release constraint even for deeper sleep modes LPM4.

My application needs to cycle between period of idle (go into LPM3) and period of awake. Because I always call to SAP_close before entering period of idle, I need to reinitialized the SAP, SAP_reset and reinitialize services and characteristics each time the idle period has been up. It consume more power from my observation using EnergyTrace.

When I remove the SAP_close on my application and still call the power API to release constraint so it can go into LPM3, I found that my application still runs well. From debug session it still executes PCM_gotoLPM3. Without reinitialization frequently on CC2640R2 I also get better battery life with additional 4-5 days.

Does this behavior is expected? May need to clear things-up just to be sure of it.

Thank you & warm regards,

  • Hello,
    I think that this behavior should be expected, but will need to confirm. The MSP432P401R clock request logic would by default prevent entrance into an LPM3 or LPM4 mode if a peripheral like the UART still needed a system clock. This can be easily changed by managing the specific clock requests or simply putting the device into 'rude mode' in which requests to enter LPM are granted regardless of the clocks being requested.

    Regards,
    Chris
  • Hi Chris,

    Thank you for your information. As for additional info, I use SimpleLink MSP432P4 SDK 2_10_00_14. Maybe the power management driver on TI RTOS in this version has policy that force into low power mode.

    Regards,
    Pranata
  • I was able to confirm that in the Power_Init() API that the rude mode is enabled.  This would permit entry without needing to close or otherwise disable the UART.

    PowerMSP432.c

            /*
             * set FORCE_LPM_ENTRY to force LPM3+ transitions, overriding any
             * outstanding peripheral clock requests
             */
            MAP_PCM_enableRudeMode();

    Regards,

    Chris

  • Hi Chris,

    Thank you for your help! It has cleared things up.

    Kind Regards,

**Attention** This is a public forum