(NCS 2.4.0) lte_lc: Could not send AT command, error: "131590"

Hi,

Under some specific timing combination, I'm getting `lte_lc: Could not send AT command, error: "131590"` message from lte_lc_connect_aync when restoring connectivity after an XPOFWARN. I'm now trying to get more logs out of it (as I said, that seems to be timing-dependent, so not easily reproducible), but what does this error code stand for? Didn't found 131590/0x20206 in any header…

Thank you.

Edit: MFW1.3.3, if that might be important.

  • Hi Valentin, I will take a look at this tomorrow.

    I'm now trying to get more logs out of it

    Please let us know if you have any success capturing anything.

  • I'm getting `lte_lc: Could not send AT command, error: "131590"` message from lte_lc_connect_aync when restoring connectivity after an XPOFWARN.

    Would you be able to post more from before and after this, including XPOFWARN? How low is the the supply voltage level when the issue occurs? Are you able to provoke the issue by lowering he voltage?

    From the description of %XPOFWARN:

    "%XPOFWARN is based on voltage level detection without any delay. When this warning has been sent once, it needs to be enabled again by sending AT%XPOFWARN=1,<voltage>.

    %XPOFWARN is enabled by default at the 3000 mV level. Active %XPOFWARN warning blocks the storing to NVM."

    Is AT%XPOFWARN=1,<voltage> being sent by the application?

    From the description of %XPOFWARN(set command):

    "To receive unsolicited +CGEV and %MDMEV notifications, the application must first request and enable them."

    Try requesting and enabling these in order to obtain more information.

    Edit: MFW1.3.3, if that might be important.

    Thank you for posting the modem firmware version, this is quite often relevant.

  • I'm able to reproduce this by lowering the voltage, yes. I'll enable more debug output, but here is what I have:

    // Applications runs AT%XPOFWARN=1,31 and %MDMEV are enabled
    //Pre-regulator voltage is 3.9V vs. 6V nominal.
    00> VBAT: 3977
    //Application sends data to socket.
    00> [00:12:04.327,728] <inf> CLOUD: Sent, 355 0
    //These come from from LTE_LC_EVT_MODEM_SLEEP_ENTER/EXIT
    00> [00:12:04.327,972] <inf> CELLULAR: Modem awake. 
    00> [00:12:04.328,277] <inf> CELLULAR: Modem asleep. Total uptime: 22813
    00> [00:12:04.358,673] <inf> CELLULAR: Modem awake.
    //I run CFUN=0 in VBAT LOW handler, because I saw it didn't allways happen automatically, at least in older versions
    00> [00:12:04.793,457] <err> lte_lc: Failed to set functional mode. Please check XSYSTEMMODE.
    //I. e. we got VBAT LOW MDMEV
    00> [00:12:04.793,457] <err> CELLULAR: VBAT LOW!!! 
    00> 
    00> [00:12:04.793,487] <inf> CELLULAR: Restarting modem in 600000 milliseconds.
    //Yet somehow we still get the response from network
    00> [00:12:05.265,777] <inf> CLOUD: Got 49 
    //Trying to run CONNEVAL after we got response
    //it fails because the modem is off
    00> [00:12:05.266,174] <err> CELL_INFO: CONNEVAL failed: 131072
    //I. e. we get CEREG=0
    00> [00:12:05.350,006] <dbg> REGISTRY: registry_set_str: Set 63 to +CEREG: 0
    //...
    //I set voltage back to high
    00> VBAT: 5717
    00> [00:22:04.793,579] <inf> CELLULAR: Restarting modem.
    // Applications runs AT%XPOFWARN=1,31
    00> [00:22:04.800,811] <inf> CELLULAR: XPOFWARN: 0
    //lte_lc_connect_async fails
    00> [00:22:04.810,089] <err> lte_lc: Could not send AT command, error: 131590
    00> [00:22:04.810,119] <err> CELLULAR: lte_lc_connect_async error: -14

    It looks that with 1.3.5 the issue does not occur. I know that mfw1.3.3 and ncs 2.4.0 are not officially supported, but the problem is that we have some devices in the field on NB-IoT-only coverage and deploying mfw update there is a bit of a hustle.

  • Looks like I'm able to recover if I run lte_lc_deinit() and nrf_modem_lib_shutdown() and then re-initialize.

  • Looks like I've a viable workaround, so I close the ticket.

Related