This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nrf9160 LTE modem documentation

Hi,

Im working with serial LTE modem sampleApp which I have manage to compile, connect to my server and validate that it works using nrfConnect LTE Link Monitor to send/receive data over TCP IP socket (Commit from 17 Dec 2019 - a955d411)

Currently I'm implementing my own modem interface but as I do not have enough background on the LTE-M specification, it is being a bit difficult to validate they state of my device if connected or not... right now I'm using the output log from LTE Link monitor and the document  "nRF91 AT Commands Command Reference Guide v1.1 " as reference.

Does anybody have any other resource to use the AT Client? (documentation on the machine state to track connection/disconnections?), is it needed to perform any actions to ensure proper low power modes?

I also have notice that LTE link monitor states that the device is connected to the network once CGAT indicates that the ContextId is "active"  AT+CGACT?+CGACT: 0,1OK, (LTE Link monitor tooltip says that), however in the AT command reference guide the same command response is parsed as context Id 1 is inactive, which does not seems to makes sense as only the context ID 0 has been used during the session... I am guessing that this is a typo in the document, or am I missing something? Attached the log.

AT+CFUN?+CFUN: 0OK
AT+CFUN=1OK
AT+CFUN?+CFUN: 1OK
AT+CGSN=1+CGSN: "352656100381139"OK
AT+CGMINordic Semiconductor ASAOK
AT+CGMMnRF9160-SICAOK
AT+CGMRmfw_nrf9160_1.1.0OK
AT+CEMODE?+CEMODE: 2OK
AT%XCBAND=?%XCBAND: (1,2,3,4,5,8,12,13,14,17,18,19,20,25,26,28,66)OK
AT+CMEE?+CMEE: 0OK
AT+CMEE=1OK
AT+CNEC?+CNEC: 0OK
AT+CNEC=24OK
AT+CGEREP?+CGEREP: 0,0OK
AT+CGDCONT?+CGDCONT: 0,"IP","","",0,0OK
AT+CGACT?+CGACT: 0,0OK
AT+CGEREP=1OK
AT+CIND=1,1,1OK
AT+CEREG=2OK
AT+CEREG?+CEREG: 2,2,"370A","006A0503",7OK
AT%CESQ=1OK
AT+CESQ+CESQ: 99,99,255,255,19,54OK
AT%XSIM=1OK
AT%XSIM?%XSIM: 1OK
AT+CPIN?+CPIN: READYOK
AT+CPINR="SIM PIN"+CPINR: "SIM PIN",3OK
AT+CIMI204080813516888OK%CESQ: 54,2,24,3%CESQ: 54,2,18,2%CESQ: 54,2,13,1+CGEV: ME PDN ACT 0,0+CNEC_ESM: 50,0+CEREG: 5,"370A","006A0503",7
AT+CGDCONT?+CIND: "service",1+CIND: "roam",1+CGDCONT: 0,"IP","ibasis.iot","10.160.2.128",0,0OK
AT+COPS=3,2OK
AT+CGACT?+CGACT: 0,1OK
AT+COPS?+COPS: 0,2,"334020",7OK
AT%XCBAND%XCBAND: 4OK
AT+CGDCONT?+CGDCONT: 0,"IP","ibasis.iot","10.160.2.128",0,0OK
AT+CGACT?+CGACT: 0,1OK
%CESQ: 54,2,19,2%CESQ: 54,2,14,2%CESQ: 54,2,20,2

Parents
  • What errno/err should one expect to see if the modem connection went down? And what would be the appropriate recovery actions to take?

    Alternatively, is there a way to query the modem for it's state (connected/disconnected) before using it?

  • Hadrien Kohl said:
    What errno/err should one expect to see if the modem connection went down? And what would be the appropriate recovery actions to take?

    The errno depends on the socket call, please see the independent manual for each socket call (like "man setsockopt"). A common one is ENETDOWN if the network is down, and ENOTCONN if the socket was closed. I would still recommend that you parse the CEREG status to see the LTE network status. 

    Hadrien Kohl said:
    Alternatively, is there a way to query the modem for it's state (connected/disconnected) before using it?

    AT+CEREG shall give you the network status, and you can check the signal strength RSRP with AT+CESQ (or subscribe to it via AT%CESQ)

Reply
  • Hadrien Kohl said:
    What errno/err should one expect to see if the modem connection went down? And what would be the appropriate recovery actions to take?

    The errno depends on the socket call, please see the independent manual for each socket call (like "man setsockopt"). A common one is ENETDOWN if the network is down, and ENOTCONN if the socket was closed. I would still recommend that you parse the CEREG status to see the LTE network status. 

    Hadrien Kohl said:
    Alternatively, is there a way to query the modem for it's state (connected/disconnected) before using it?

    AT+CEREG shall give you the network status, and you can check the signal strength RSRP with AT+CESQ (or subscribe to it via AT%CESQ)

Children
Related