LTE Link Control can't recover from LTE_LC_MODEM_EVT_BATTERY_LOW ?

Hi,

OS: Windows 10
Editor: VS Code 1.74.0
nrfjprog version: 10.18.1 external
JLinkARM.dll version: 7.80c
nRF Connect SDK version: 2.2.0
nRF9160 modem firmware version: 1.3.3

I noticed that when the battery is low and the application raises +CGEV: ME BATTERY LOW and %MDMEV: ME BATTERY LOW, the LTE LC receives the LTE_LC_MODEM_EVT_BATTERY_LOW, the application can't connect to LTE after that. 

[00:12:49.443,817] <dbg> application: modem_on: No LTE connection, go offline and then connect.
[00:12:49.453,430] <inf> application: Sending the modem to offline mode.
[00:12:49.467,559] <dbg> application: modem_offline: lte_lc_func_mode: 4
[00:12:49.475,158] <dbg> application: modem_offline: Modem is already offline.
[00:12:49.483,245] <inf> application: Starting to connect to LTE network.
[00:12:49.490,905] <dbg> lte_lc_helpers: event_handler_list_append_handler: Handler already registered. Nothing to do
[00:12:49.515,930] <err> lte_lc: Could not send AT command, error: 65536
[00:12:49.523,529] <err> application: Error: lte_lc_connect_async() failed, err: -14
[00:12:49.532,470] <err> application: Error: LTE link could not be established, or maintained.

lte_lc_connect_async() calls connect_lte() which calls lte_lc_system_mode_set() which returns error Could not send AT command, error: 65536. As much I have tested this, it happens every time after the battery low event has been received and it can revocer from this only when rebooting the device. I have set AT%XPOFWARN=1,33 and set the supply voltage to about 2.5-2.6V to make it fail easier.

If I set AT+CFUN=1 over UART, the device connects to LTE successfully. That makes me wonder if there is a bug on the LTE Link Control or on the Modem library AT commands interface.

Regards,
Tero

Related