CPSMS with XSLEEP for sleep mode of nRF9160

Hello,

We are working on a project having nRF9160 and STM32 microcontroller. We are using Serial LTE Modem firmware application for nRF9160.

We want to set the nRF9160's application into sleep mode and modem processor into PSM. We thought of following approach -

1. nRF9160 PSM mode is first configured using CPSMS command.

2. After configuring PSM, XSLEEP command (AT#XSLEEP = 2) is sent to configure application processor sleep mode.

3. To wakeup from sleep mode, we use wakeup pin (CONFIG_SLM_WAKEUP_PIN). 

Does our approach correct? If no, then guide us how we can achieve PSM with application processor sleep.

Also, does application and modem processor will wakeup using wakeup pin?

Your quick response appreciated.

Thank you.

  • Hi,

    1. nRF9160 PSM mode is first configured using CPSMS command.

    I would recommend that you set this up before the initial connection to the network. The PSM negotiation will then be part of the attach, and not require extra signalling.

    The modem will enter PSM automatically when the RRC Inactivity timer and the Active Time timer expires. The PSM parameters are also valid for the whole duration of the connection, so there is no need to re-send the command each time.

    Also, does application and modem processor will wakeup using wakeup pin?

    The wakeup pin will only wake up the application processor, but the application processor will automatically wake up the modem when it needs to. So you do not need to worry about waking up the modem.

    Best regards,

    Didrik

  • Hi Didrik,

    Thanks for the reply!!

    My query basically related to application processor and modem processor. 

    So, does "CPSMS" command will keep modem and application processor in sleep?

    Thank you

  • Nikint said:
    So, does "CPSMS" command will keep modem and application processor in sleep?

    The +CPSMS command will tell the modem which PSM parameters the modem should request from the network. It is then up to the network if PSM is granted, and with which parameters.

    If PSM is granted, the modem will enter PSM automatically when allowed to, until it is asked to negotiate new PSM parameters, or it connects to a network that doesn't grant the device PSM.

    The application core will go to sleep automatically when no thread is active. However, in this state the UART RX line will still be active, and draw significant current. To also disable the UART, you need to use the AT#XSLEEP=2 command.

  • Hi Didrik,

    Thank you for the reply!!

    Our approach is same as UART is drawing power so we have to disable the UART using "XSLEEP" command. 

    This clarify our queries, so closing this thread.

    Thank you.

Related