With TAU set to 24 hours, when we wake up every 8 hours, everything works fine. When we extend to 12 hours, it takes longer than 10 seconds for a connection to be established. And when we try, we get the following errors waiting for the connection to come online:
Waiting for LTE [12:01:04.373,016] <wrn> lte_lc: Connection evaluation failed with reason: 5 LTE Connected [12:01:04.772,155] <wrn> lte_lc: Connection evaluation failed with reason: 4 lte_lc_conn_eval_params_get, error: 4
While it shows connected (semaphore obtained), the data isn't sent. It's only after we send 3 UDP messages that we get the following "RRC mode: Connected."
What would cause the modem to disconnect from the network after 12 hours vs 8 hours?
bool lteConnected(int m_secs) { bool connected = false; struct lte_lc_conn_eval_params params = {0}; int err; printk("Waiting for LTE\n"); err = lte_lc_conn_eval_params_get(¶ms); if (!err) { if (params.rrc_state == LTE_LC_RRC_MODE_CONNECTED) { printk("Already connected\n"); return true; } else printk("Waiting for connection\n"); } else printk("Error getting LTE connection eval params\n"); if (k_sem_take(<e_connected, K_MSEC(m_secs)) == 0) { printk("LTE Connected\n"); connected = true; } else { printk("LTE Timeout\n"); } return connected; }
## PSM CONFIG_LTE_PSM_REQ_RPTAU="00111000" CONFIG_LTE_PSM_REQ_RAT="00000000" ## eDRX CONFIG_LTE_EDRX_REQ_VALUE_LTE_M="1001"
Network registration status: Connected - roaming PSM parameter update: TAU: 86400, Active time: 0 eDRX parameter update: eDRX: 163.839996, PTW: 2.560000