Hello,
We are working to improve our connectivity globally, and have some questions about how we might improve our firmware.
We are using the nRF9160 to connect via LTE-M (CAT-M1) using a SIM that allows us to roam across multiple networks. This SIM has a feature that allows it to rotate through several profiles in order to find a network that we can connect to.
The initialization of the nRF9160 modem (FW 1.2.0) is done via the following AT commands:
- AT%CESQ=1
- AT+CPSMS=1,,,"01100000","00000000"
- AT+CSCON=3
- AT+CNEC=24
- AT%XSYSTEMMODE=1,0,0,0
- AT+CGDCONT=0,"IP","[APN]"
- AT+CEREG=5
- AT+CFUN=1
Our questions are:
- What should we do about +CEREG status = 4 (“Unknown”)?
Whilst the modem is searching and attempting to connect to a network (+CEREG: 2), we occasionally see +CEREG status messages indicating “Unknown” status.
Example message: +CEREG: 4,"FFFE","FFFFFFFF",7,0,15,"11100000","11100000"
Our question is what to do in this case? Is this an error, meaning we should try again (maybe turn the modem off, then on again), or should we just let the modem continue to search? Our interpretation of this above message is that the network search has completed, but no available networks were found (reject_cause=15, indicates “No suitable cells in tracking area”). Will the modem continue to search? We’ve also seen reject_cause=11 (“PLMN not allowed”) and have similar questions. - Is it possible to do a factory reset for the modem?
One thing that makes debugging difficult is that we aren’t sure what settings are stored/cached in the modem’s NVM. This makes it difficult to compare device behavior across multiple devices. - When should we transition into AT+CFUN=0 and when should we transition to AT+CFUN=4?
Several of the AT commands state that settings are written to NVM when transitioning to CFUN=0. Is there guidance on when it’s best to transition to off vs. airplane mode? Our approach has been to transition to airplane mode when we wish to save power, but when an unpredictable reset happens (via a user event), we want to be able to reasonably quickly connect to the network again. - Why does it sometimes take about 60 seconds from CFUN=1 to the first status update message (example: %CESQ: 14,0,0,0 followed within 1 millisecond by +CEREG: 2,"0411","00EF090F",7,0,0,"11100000","11100000"). Is there something we can/should be doing to force the modem to begin searching immediately?
Any help would be appreciated!
Thank you,
Jonathan