Cannot enter PSM sleep every 12hr

Hi,

I follow the Power optimization for nrf9160 to implement the modem power saving.

And here is my test parameters

- NB-IoT

- Data publish interval = 10m

- PSM parameter, TAU = 5040, Active Time = 0 (by psm param updated)

- Modem power-off delay timer = 30s (after received RRC idle, for handling the case that modem cannot enter sleep)

- Data profile = Ultra-low power mode

When I doing a long time test at weekend, I found that the modem cannot enter sleep every 12 hours.

Does anyone has similar experience about this 12 hour behavior?

Log (in normal case)

[11:50:11.451,171] <dbg> modem: link_ind_handler: Wake up from PSM
[11:50:11.945,465] <dbg> modem: handle_modem_event: Modem Evt: Search done
[11:50:12.953,979] <dbg> modem: link_ind_handler: RRC mode: Connected
[11:50:13.397,979] <inf> app_event_manager: e:led_state_event DATA_PUBLISHED
[11:50:19.976,989] <dbg> modem: link_ind_handler: RRC mode: Idle
[11:50:20.087,493] <dbg> modem: handle_rrc_idle: Schedule modem off by PSM (0+30s)
[11:50:20.087,890] <dbg> modem: lte_lc_sleep_enter_handler: Sleep by PSM for 6479.00 seconds

Log at every 12:00, keep happen in 3 days

[12:00:11.451,324] <dbg> modem: link_ind_handler: Wake up from PSM
[12:00:12.113,708] <dbg> modem: handle_modem_event: Modem Evt: Search done
[12:00:12.850,250] <dbg> modem: link_ind_handler: RRC mode: Connected
[12:00:13.244,201] <inf> app_event_manager: e:led_state_event DATA_PUBLISHED
[12:00:19.941,162] <dbg> modem: link_ind_handler: RRC mode: Idle
[12:00:19.941,864] <dbg> modem: handle_rrc_idle: Schedule modem off by PSM (0+30s)
[12:00:49.941,955] <dbg> modem: modem_power_off: Power off modem (cfun 0)
[12:00:50.153,289] <dbg> modem: on_cfun: Modem is powered off
[12:00:50.153,381] <dbg> modem: pdn_event_handler: PDN 0 DEACTIVATED
[12:00:50.153,656] <dbg> modem: link_ind_handler: network registration status: Not registered
[12:00:50.153,747] <dbg> modem: link_ind_handler: LTE Cell changed: Cell ID: -1, Tracking area: -1
[12:00:50.153,778] <dbg> modem: link_ind_handler: LTE mode: None
[12:00:50.153,900] <dbg> modem: pdn_event_handler: PDN 0 NETWORK_DETACH

  • There may be many possibilities, one may  be a HPPLMN search. That means, the SIM card is configured to search for "Higher Priorized PLMN" in intervals. It may be the case, that you SIM uses a 12h interval and has some PLMN in your country in the priorized lists. A easy way to check that is to use a "locked PLMN" and not the "auto-select". And maybe you already used a locked PLMN which then shows, that it's not a HPPLMN search in your case.

  • Hi,

    What SIM card are you using, and what network are you connected to?

    What happens if you don't turn off the modem after 30 seconds? Does it enter PSM eventually?

    Can you take a modem trace (when you don't turn off the modem), so we can see what the modem is doing?

    Best regards,

    Didrik

  • Thanks, I think you are right.

    I run the test again last night, and this time, I saw cell changed and searching state report after that.

    [12:00:17.060,150] <dbg> modem: handle_rrc_idle: Schedule modem off by PSM (0+30s)
    [12:00:19.152,465] <dbg> modem: link_ind_handler: LTE Cell changed: Cell ID: 28662797, Tracking area: 12700
    [12:00:19.152,526] <dbg> modem: link_ind_handler: LTE mode: LTE-M
    [12:00:20.154,785] <dbg> modem: link_ind_handler: RRC mode: Connected
    [12:00:20.282,897] <dbg> modem: pdn_event_handler: PDN 0 DEACTIVATED
    [12:00:20.284,027] <dbg> modem: link_ind_handler: network registration status: Searching
    [12:00:20.284,271] <inf> app_event_manager: e:net_state_event id=0x7b1b4 NET_STATE_DISCONNECTED
    [12:00:21.535,644] <dbg> modem: link_ind_handler: RRC mode: Idle
    [12:00:21.535,675] <dbg> modem: handle_rrc_idle: Reschedule modem off (30s)
    [12:00:22.154,785] <dbg> modem: link_ind_handler: RRC mode: Connected
    [12:00:24.727,691] <dbg> modem: link_ind_handler: RRC mode: Idle
    [12:00:24.727,752] <dbg> modem: handle_rrc_idle: Reschedule modem off (30s)
    [12:00:24.920,654] <dbg> modem: link_ind_handler: LTE Cell changed: Cell ID: -1, Tracking area: -1
    [12:00:24.920,715] <dbg> modem: link_ind_handler: LTE mode: None
    [12:00:54.727,844] <dbg> modem: modem_power_off: Power off modem

    When I tried to use "locked PLMN" as your advice , the COPS command keep return error, I don't know why.

    uart:~$ at at+cops=1,2,"46692"
    +CME ERROR: 0

    But at least, the modem is actually perform searching at that time as you said.

    Thanks.

  • Tim Chao said:

    When I tried to use "locked PLMN" as your advice , the COPS command keep return error, I don't know why.

    uart:~$ at at+cops=1,2,"46692"
    +CME ERROR: 0

    When using the "at" command in the Modem Shell, you must escape the quotation marks: at AT+COPS=1,2,\"46692\"

    See the note and the examples in the documentation: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples/cellular/modem_shell/README.html#at-commands

Related