Hi,
I have using lte_handler(const struct lte_lc_evt *const evt) function to get the connection details.
I'm facing a problem when i remove the antenna its still show LTE connected and pushing data to AWS but in AWS we are not getting any data after that i tried to reset the device then its showing LTE not available may i know why lte_handler not giving LTE not available after remove the antenna
static void lte_handler(const struct lte_lc_evt *const evt) { switch (evt->type) { case LTE_LC_EVT_NW_REG_STATUS: if ((evt->nw_reg_status != LTE_LC_NW_REG_REGISTERED_HOME) && (evt->nw_reg_status != LTE_LC_NW_REG_REGISTERED_ROAMING)) { printk("Network registration status: %d\n", evt->nw_reg_status); if (!lte_connected) { break; } lte_connected = false; /* Notify main function that LTE is disconnected */ lte_cb(LTE_CONNECTION_DISCONNECTED); if (k_delayed_work_remaining_get(<e_reconnect_work) > 0) { printk("LTE Reconnect work already scheduled\n"); } else { scheduleLTEReconnect(lte_reconnection_delay_s[atomic_get( <e_reconnection_attempts)]); } break; } printk("Network registration status: %s\n", evt->nw_reg_status == LTE_LC_NW_REG_REGISTERED_HOME ? "Connected - home network" : "Connected - roaming"); /* Notify main function that LTE is connected */ lte_cb(LTE_CONNECTION_CONNECTED); k_sem_give(<e_connected_sem); k_delayed_work_cancel(<e_reconnect_work); atomic_set(<e_reconnection_attempts, 0); lte_connected = true; break; case LTE_LC_EVT_PSM_UPDATE: printk("PSM parameter update: TAU: %d, Active time: %d\n", evt->psm_cfg.tau, evt->psm_cfg.active_time); break; case LTE_LC_EVT_RRC_UPDATE: printk("RRC mode: %s\n", evt->rrc_mode == LTE_LC_RRC_MODE_CONNECTED ? "Connected" : "Idle"); break; case LTE_LC_EVT_CELL_UPDATE: printk("LTE cell changed: Cell ID: %d, Tracking area: %d\n", evt->cell.id, evt->cell.tac); last_cellID = evt->cell.id; last_tac = evt->cell.tac; break; case LTE_LC_EVT_EDRX_UPDATE: default: break; } } if ((err = lte_lc_connect_async(lte_handler)) != NBIOT_ERROR_OK) { printk("Modem could not be configured, error: %d\n", err); errorHandler_process(err); }
Thanks