Issue with PSM Functionality on nRF9151-DK in NB-IoT Network

Hello
I am currently working with the nRF9151-DK hardware to perform tests related to PSM functionality on an NB-IoT network.
The main issue is that, although the device connects to the network successfully, it never enters PSM mode, even after transitioning to RRC Idle.
For context, I am interacting directly with the modem using the following AT commands:
  1. AT+CFUN=0
  2. AT+CEMODE=0
  3. AT%XCBAND=2,28
  4. AT%XSYSTEMMODE=0,1,0,0
  5. AT+CGDCONT=0,"IP","APN"
  6. AT%SMSDISABLE=1
  7. AT+CEREG=4
  8. AT%XEPCO=0
  9. AT+CFUN=1
After establishing the connection, I request PSM timers with the following values: TAU = 5 min and Active Time = 3 min, using:
AT+CPSMS=1,"","","10100101","00100011"
In addition to the serial port, I use the Cellular Monitor software, which allows me to visualize the device’s behavior. By default, in the Power Saving Features section, the timers appear as “unknown.” This value only changes when requesting timers with AT+CPSMS, but after some time, it reverts to “unknown.”
Furthermore, when using the AT%XMONITOR command, the parameters <Active-Time> and <Periodic-TAU-ext> always display “11100000,” meaning deactivated. This behavior is also observed in the URCs from AT+CEREG, where both TAU and Active Time appear as deactivated.
Another unusual behavior is that the device seems to be “jumping” between cells, which suggests these changes might keep it in a constant RRC Connected state, preventing entry into PSM. However, this does not explain the “deactivated” message. This situation is evident from the large number of consecutive URCs from +CEREG, where the only change is the Cell ID.
This could be attributed to poor signal quality, but according to Cellular Monitor, the signal consistently remained between Good and Fair. Additionally, scanning the area with AT+COPS=? detects available networks, confirming coverage in the area.
I also used the command AT%XT3412=1,2000,30000 to subscribe to URCs indicating the remaining TAU time, but the value always oscillates between 0 and 3239999, which suggests the timer resets and the remaining time is approximately 53 minutes. However, as mentioned earlier, the network-supported and requested timers are 5 and 3 minutes, respectively; at no point were 53 minutes requested. No intermediate values are observed between these extremes.
Additional observations:
  • The current FW version is mfw_nrf91x1_2.0.2
  • The SIM and network are enabled for PSM.
  • The network defines TAU (5 min) and Active Time (3 min), so there should be no discrepancies with the requested values.
  • I have tested the same network and SIM on other NB-IoT devices, which work correctly.
  • Power supply and data transfer between the PC and the device are via USB-C, using the default antenna on the device.

This is my first time working with a device of this type, so it is possible that I missed a step in the configuration.
Any assistance would be greatly appreciated.

Thank you in advance.
%XSYSTEMMODE: 0,1,0,0
OK
> AT%XICCID
%XICCID: 89560100001272922091
OK
> AT%XEMPR?
%XEMPR:
OK
> AT+CGDCONT?
+CGDCONT: 0,"IP","<APN>","100.64.0.3",0,0
OK
> AT+COPS?
+COPS: 0,2,"73001",9
OK
> AT%XMONITOR
%XMONITOR: 1,"","","73001","8150",9,28,"00382224",95,9416,43,25,"","11100000","11100000","01001001"
OK
> AT+CPINR="SIM PIN"
+CPINR: "SIM PIN",3
OK
> AT+CPINR="SIM PIN2"
+CPINR: "SIM PIN2",3
OK
> AT+CPINR="SIM PUK"
+CPINR: "SIM PUK",10
OK
> AT+CPINR="SIM PUK2"
+CPINR: "SIM PUK2",10
OK
> AT%XSIM?
%XSIM: 1
OK
%CESQ: 43,2,17,2
> AT+CPSMS=1,"","","10100101","00100011"
OK
%XT3412: 0
+CSCON: 1
+CSCON: 0
%XT3412: 3239999
%CESQ: 42,2,9,1
> AT+CPSMS=1,"","","10100101","00100011"
OK
%CESQ: 42,2,14,2
%XT3412: 0
+CSCON: 1
+CSCON: 0
%XT3412: 3239999
> AT+CPSMS=1,"","","10100101","00100011"
OK
%CESQ: 42,2,5,0
%XT3412: 0
+CSCON: 1
%CESQ: 44,2,12,1
+CSCON: 0
%XT3412: 3239999
%CESQ: 39,1,3,0
+CEREG: 1,"8150","003AFD23",9,,,"11100000","11100000"
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 41,2,10,1
%CESQ: 41,2,15,2
%CESQ: 40,2,5,0
%CESQ: 41,2,12,1
%CESQ: 40,2,7,1
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
%CESQ: 42,2,12,1
%CESQ: 40,2,6,0
%CESQ: 40,2,12,1
%CESQ: 37,1,4,0
+CEREG: 1,"8150","00308B23",9,,,"11100000","11100000"
> AT%XMONITOR
%XMONITOR: 1,"","","73001","8150",9,28,"00308B23",76,9416,37,18,"","11100000","11100000","01001001"
OK
%CESQ: 42,2,12,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 44,2,18,2
%CESQ: 42,2,13,1
%CESQ: 43,2,18,2
%CESQ: 42,2,12,1
%CESQ: 43,2,17,2
%CESQ: 41,2,12,1
%CESQ: 42,2,17,2
%CESQ: 41,2,10,1
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 43,2,16,2
%CESQ: 42,2,10,1
> AT+CPSMS=1,"","","00111000","01001000"
OK
%XT3412: 0
+CSCON: 1
%CESQ: 43,2,15,2
+CSCON: 0
%XT3412: 3239999
%CESQ: 45,2,20,2
> AT%XMONITOR
%XMONITOR: 1,"","","73001","8150",9,28,"00382224",95,9416,45,27,"","11100000","11100000","01001001"
OK
%CESQ: 43,2,14,2
%CESQ: 39,1,8,1
+CEREG: 1,"8150","00308B23",9,,,"11100000","11100000"
%CESQ: 37,1,3,0
%CESQ: 43,2,11,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 43,2,17,2
%CESQ: 43,2,12,1
+CEREG: 1,"8150","003AFD22",9,,,"11100000","11100000"
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 44,2,21,3
%CESQ: 43,2,15,2
%CESQ: 42,2,10,1
%CESQ: 41,2,17,2
%CESQ: 41,2,12,1
%CESQ: 39,1,7,1
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
%CESQ: 40,2,12,1
%CESQ: 43,2,17,2
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 39,1,5,0
%CESQ: 39,1,14,2
%CESQ: 40,2,7,1
%CESQ: 40,2,15,2
%CESQ: 40,2,8,1
+CEREG: 1,"8150","00308B23",9,,,"11100000","11100000"
%CESQ: 37,1,1,0
%CESQ: 41,2,10,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
> +CEER
ERROR
%CESQ: 41,2,16,2
%CESQ: 40,2,6,0
%CESQ: 39,1,11,1
%CESQ: 43,2,17,2
%CESQ: 43,2,12,1
%CESQ: 43,2,18,2
%CESQ: 41,2,6,0
+CEREG: 1,"8150","003AFD22",9,,,"11100000","11100000"
%CESQ: 41,2,12,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 43,2,18,2
%CESQ: 43,2,13,1
%CESQ: 43,2,19,2
> AT+CFUN=1
OK
> AT%XCONNSTAT=1
OK
> AT%XCONNSTAT?
%XCONNSTAT: 0,0,0,0,0,0
OK
> AT+CMEE=1
OK
> AT%XSIM=1
OK
> AT+CEREG=5
OK
> AT%MDMEV=1
OK
> AT%CESQ=1
OK
> AT+CGSN=1
+CGSN: "359404230134547"
OK
> AT+CGMM
nRF9151-LACA
OK
> AT+CEMODE?
+CEMODE: 0
OK
> AT+CMEE?
+CMEE: 1
OK
> AT+CNEC?
+CNEC: 24
OK
> AT+CGEREP?
+CGEREP: 1,0
OK
> AT+CIND=1,1,1
OK
> AT+COPS=3,2
OK
> AT+CGDCONT?
+CGDCONT: 0,"IP","<APN>","100.64.0.3",0,0
OK
> AT+CGACT?
+CGACT: 0,1
OK
> AT+CESQ
+CESQ: 99,99,255,255,17,43
OK
> AT%XSIM?
%XSIM: 1
OK
> AT+CPIN?
+CPIN: READY
OK
> AT+CIMI
730013013143609
OK
> AT+CNEC=24
OK
> AT+CEER
+CEER: "ESM 50"
OK
> AT+CGEREP=1
OK
> AT%XPOFWARN=1,30
OK
> AT%XVBATLVL=1
OK
> AT+CGMI
Nordic Semiconductor ASA
OK
> AT+CGMR
mfw_nrf91x1_2.0.2
OK
> AT+CGSN
359404230134547
OK
> AT%XMODEMUUID
%XMODEMUUID: 320176d5-9f40-45fc-923b-2661ec18d547
OK
> AT%XDATAPRFL?
%XDATAPRFL: 3
OK
> AT+CEREG?
+CEREG: 5,1,"8150","00382224",9,,,"11100000","11100000"
OK
> AT+CFUN?
+CFUN: 1
OK
> AT%CESQ=1
OK
> AT+CSCON=1
OK
> AT+CSCON?
+CSCON: 1,0
OK
> AT+CPAS
+CPAS: 0
OK
> AT+CEDRXRDP
+CEDRXRDP: 5,"","",""
OK
> AT%XTIME=1
OK
> AT%CONEVAL
%CONEVAL: 0,0,7,43,17,25,"00382224","73001",95,9416,28,0,0,5,1,16,119
OK
> AT%XCBAND=?
%XCBAND: (2,28)
OK
> AT%XCBAND
%XCBAND: 28
OK
> AT%HWVERSION
%HWVERSION: nRF9151 LACA A0A
OK
> AT%XMODEMTRACE=1,2
OK
> AT%XSYSTEMMODE?
%XSYSTEMMODE: 0,1,0,0
OK
> AT%XICCID
%XICCID: 89560100001272922091
OK
> AT%XEMPR?
%XEMPR:
OK
> AT+CGDCONT?
+CGDCONT: 0,"IP","<APN>","100.64.0.3",0,0
OK
> AT+COPS?
+COPS: 0,2,"73001",9
OK
> AT%XMONITOR
%XMONITOR: 1,"","","73001","8150",9,28,"00382224",95,9416,43,25,"","11100000","11100000","01001001"
OK
> AT+CPINR="SIM PIN"
+CPINR: "SIM PIN",3
OK
> AT+CPINR="SIM PIN2"
+CPINR: "SIM PIN2",3
OK
> AT+CPINR="SIM PUK"
+CPINR: "SIM PUK",10
OK
> AT+CPINR="SIM PUK2"
+CPINR: "SIM PUK2",10
OK
> AT%XSIM?
%XSIM: 1
OK
%CESQ: 41,2,12,1
%CESQ: 43,2,18,2
%CESQ: 43,2,13,1
%CESQ: 40,2,8,1
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
+CEREG: 1,"8150","003AFD22",9,,,"11100000","11100000"
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 43,2,14,2
%CESQ: 40,2,7,1
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 44,2,17,2
%CESQ: 41,2,9,1
%CESQ: 40,2,2,0
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
%CESQ: 41,2,12,1
%CESQ: 40,2,2,0
+CEREG: 1,"8150","003AFD22",9,,,"11100000","11100000"
%CESQ: 40,2,10,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 44,2,16,2
%CESQ: 41,2,5,0
+CEREG: 1,"8150","003AFD22",9,,,"11100000","11100000"
%CESQ: 42,2,12,1
%CESQ: 48,2,12,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 48,2,18,2
%CESQ: 43,2,1,0
+CEREG: 1,"8150","003AFD22",9,,,"11100000","11100000"
%CESQ: 43,2,12,1
%CESQ: 45,2,4,0
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 45,2,15,2
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
%CESQ: 44,2,10,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 46,2,18,2
%CESQ: 45,2,13,1
%CESQ: 45,2,18,2
%CESQ: 48,2,24,3
%CESQ: 48,2,17,2
%CESQ: 39,1,3,0
+CEREG: 1,"8150","00A42023",9,,,"11100000","11100000"
%XT3412: 0
+CSCON: 1
%CESQ: 42,2,12,1
%CESQ: 40,2,7,1
%CESQ: 38,1,2,0
%CESQ: 38,1,7,1
%CESQ: 35,1,0,0
%CESQ: 38,1,7,1
%CESQ: 41,2,12,1
%CESQ: 38,1,7,1
%CESQ: 42,2,13,1
+CSCON: 0
%XT3412: 3239999
%CESQ: 43,2,1,0
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 40,2,9,1
%CESQ: 41,2,16,2
%CESQ: 40,2,9,1
%CESQ: 41,2,14,2
%CESQ: 45,2,19,2
%CESQ: 42,2,10,1
%CESQ: 42,2,18,2
%CESQ: 41,2,7,1
%CESQ: 40,2,12,1
%CESQ: 38,1,2,0
%CESQ: 37,1,8,1
%CESQ: 41,2,13,1
%CESQ: 44,2,18,2
%CESQ: 42,2,10,1
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 45,2,28,4
%CESQ: 45,2,18,2
%CESQ: 44,2,26,3
%CESQ: 43,2,13,1
%CESQ: 40,2,7,1
%CESQ: 41,2,15,2
%CESQ: 40,2,10,1
%CESQ: 43,2,18,2
%CESQ: 42,2,12,1
%CESQ: 42,2,20,2
%CESQ: 41,2,9,1
%CESQ: 41,2,15,2
%CESQ: 37,1,1,0
+CEREG: 1,"8150","00316F23",9,,,"11100000","11100000"
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
%CESQ: 41,2,11,1
%CESQ: 43,2,16,2
%CESQ: 38,1,2,0
+CEREG: 1,"8150","00316F23",9,,,"11100000","11100000"
%CESQ: 41,2,12,1
%CESQ: 40,2,7,1
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
%CESQ: 43,2,12,1
%CESQ: 37,1,2,0
%CESQ: 38,1,9,1
%CESQ: 37,1,3,0
%CESQ: 38,1,9,1
%CESQ: 41,2,15,2
%CESQ: 41,2,9,1
%CESQ: 38,1,4,0
%CESQ: 37,1,10,1
%CESQ: 38,1,0,0
+CEREG: 1,"8150","00316F23",9,,,"11100000","11100000"
%CESQ: 38,1,9,1
%CESQ: 37,1,4,0
+CEREG: 1,"8150","0036A824",9,,,"11100000","11100000"
%CESQ: 39,1,10,1
%CESQ: 38,1,5,0
%CESQ: 40,2,11,1
%CESQ: 38,1,3,0
%CESQ: 39,1,8,1
%CESQ: 36,1,0,0
%CESQ: 38,1,9,1
%CESQ: 38,1,4,0
%CESQ: 40,2,13,1
%CESQ: 39,1,7,1
%CESQ: 40,2,12,1
%CESQ: 40,2,7,1
%CESQ: 41,2,12,1
%CESQ: 43,2,18,2
%CESQ: 43,2,12,1
%CESQ: 39,1,7,1
%CESQ: 39,1,12,1
%CESQ: 42,2,17,2
%CESQ: 41,2,12,1
%CESQ: 40,2,7,1
%CESQ: 40,2,12,1
%CESQ: 39,1,6,0
%CESQ: 39,1,12,1
%CESQ: 40,2,6,0
%CESQ: 40,2,12,1
%CESQ: 39,1,6,0
%CESQ: 39,1,12,1
%CESQ: 41,2,17,2
%CESQ: 40,2,12,1
%CESQ: 40,2,7,1
%CESQ: 42,2,15,2
%CESQ: 40,2,7,1
%CESQ: 39,1,0,0
+CEREG: 1,"8150","00316F23",9,,,"11100000","11100000"
%CESQ: 40,2,7,1
%CESQ: 32,1,0,0
%CESQ: 37,1,8,1
%CESQ: 43,2,8,1
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 44,2,16,2
%CESQ: 42,2,7,1
%CESQ: 43,2,13,1
%CESQ: 44,2,18,2
%CESQ: 44,2,13,1
%CESQ: 46,2,18,2
%CESQ: 44,2,13,1
%CESQ: 46,2,18,2
%CESQ: 46,2,13,1
%CESQ: 44,2,18,2
%CESQ: 45,2,12,1
%CESQ: 45,2,17,2
%CESQ: 44,2,11,1
%CESQ: 44,2,17,2
%CESQ: 44,2,9,1
%CESQ: 44,2,16,2
%CESQ: 44,2,11,1
%CESQ: 43,2,16,2
%CESQ: 41,2,9,1
%CESQ: 42,2,18,2
%CESQ: 43,2,11,1
> AT+QPING=?
+CME ERROR: 0
%CESQ: 41,2,6,0
%CESQ: 43,2,17,2
%CESQ: 43,2,10,1
%CESQ: 43,2,16,2
%CESQ: 44,2,11,1
%CESQ: 44,2,16,2
%CESQ: 44,2,11,1
%CESQ: 46,2,18,2
%CESQ: 45,2,13,1
%CESQ: 45,2,18,2
%CESQ: 43,2,10,1
%CESQ: 45,2,17,2
%CESQ: 43,2,8,1
%CESQ: 42,2,14,2
%CESQ: 45,2,19,2
%CESQ: 42,2,8,1
%CESQ: 40,2,14,2
%CESQ: 39,1,7,1
%CESQ: 39,1,13,1
%CESQ: 39,1,7,1
%CESQ: 41,2,18,2
%CESQ: 41,2,9,1
%CESQ: 36,1,0,0
%CESQ: 36,1,5,0
%CESQ: 40,2,12,1
%CESQ: 39,1,6,0
%CESQ: 38,1,12,1
%CESQ: 37,1,4,0
%CESQ: 37,1,11,1
%CESQ: 38,1,5,0
%CESQ: 38,1,12,1
%CESQ: 39,1,6,0
%CESQ: 42,2,18,2
%CESQ: 43,2,13,1
%CESQ: 43,2,18,2
%CESQ: 41,2,10,1
%CESQ: 42,2,17,2
%CESQ: 41,2,9,1
%CESQ: 40,2,14,2
%CESQ: 41,2,6,0
%CESQ: 39,1,11,1
%CESQ: 42,2,16,2
%CESQ: 40,2,7,1
%CESQ: 40,2,16,2
%CESQ: 40,2,8,1
%CESQ: 42,2,13,1
%CESQ: 39,1,7,1
%CESQ: 40,2,12,1
%CESQ: 41,2,6,0
%CESQ: 43,2,12,1
%CESQ: 45,2,17,2
%CESQ: 43,2,10,1
%CESQ: 44,2,18,2
%CESQ: 46,2,26,3
%CESQ: 46,2,18,2
%CESQ: 48,2,23,3
%CESQ: 47,2,18,2
%CESQ: 44,2,13,1
%CESQ: 40,2,8,1
%CESQ: 36,1,0,0
%CESQ: 36,1,13,1
%CESQ: 42,2,15,2
%CESQ: 40,2,7,1
%CESQ: 40,2,12,1
%CESQ: 39,1,7,1
%CESQ: 39,1,12,1
%CESQ: 38,1,6,0
+CEREG: 1,"8150","00316F23",9,,,"11100000","11100000"
%CESQ: 40,2,11,1
%CESQ: 37,1,1,0
%CESQ: 36,1,6,0
%CESQ: 39,1,11,1
%CESQ: 38,1,6,0
%CESQ: 39,1,11,1
%CESQ: 39,1,6,0
+CEREG: 1,"8150","00382224",9,,,"11100000","11100000"
%CESQ: 43,2,17,2
%CESQ: 43,2,12,1
%CESQ: 40,2,7,1
%CESQ: 41,2,17,2
%CESQ: 41,2,8,1
%CESQ: 41,2,16,2
%CESQ: 40,2,7,1
Parents Reply Children
  • Hi Simon,

    I have a question regarding the provided response.
    From what I understand, the solution requires enabling a flag within a library. However, with the way I am currently using the device, I cannot modify the source code (unless a new firmware is loaded).

    This is because, the first time I connected the device to my PC, I selected the “AT commands” option in the “Quick Start” menu. After that, a firmware was automatically installed, which I assume allows direct communication with the modem without additional functionalities.

    Upon further research, I found that it is possible to modify the source code and then load it onto the device using VS Code and nRF Command Line Tools. Therefore, I assume the solution would be to create a new application that acts solely as a bridge between the PC and the modem for sending AT commands, but includes the necessary flags to enable PSM (for example, CONFIG_LTE_LC_PSM_MODULE).

    Could you please confirm if this interpretation is correct? Or is there another way to configure this flag, either directly on the modem or through the nRF Connect for Desktop application?

    As I mentioned before, this is my first time working in this environment, so I sincerely apologize if this question seems obvious.

    Thank you in advance.

  • Hi

    Correct. You are indeed expected to flash new firmware onto the nRF9151DK with this flag set. We have multiple sample projects in the nRF Connect SDK available here. If you are new to the Zephyr RTOS and nRF Connect SDK we also have an nRF Connect SDK fundamentals course on the DevAcademy that is ideal to get started with.
    https://academy.nordicsemi.com/courses/nrf-connect-sdk-fundamentals/ 

    If yhou have any specific questions or run into any issues, don't hesitate to reach out to us here on DevZone.

    Best regards,

    Simon

  • I understand now.
    I'll give it a try.
    Thank you so much for your support!

Related