nRF Connect SDK API 2.8.0
Loading...
Searching...
No Matches
lte_lc.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <zephyr/kernel.h>

Go to the source code of this file.

Data Structures

struct  lte_lc_psm_cfg
 
struct  lte_lc_edrx_cfg
 
struct  lte_lc_ncell
 
struct  lte_lc_cell
 
struct  lte_lc_cells_info
 
struct  lte_lc_modem_sleep
 
struct  lte_lc_rai_cfg
 
struct  lte_lc_conn_eval_params
 
struct  lte_lc_ncellmeas_params
 
struct  lte_lc_periodic_search_range_cfg
 
struct  lte_lc_periodic_search_table_cfg
 
struct  lte_lc_periodic_search_pattern
 
struct  lte_lc_periodic_search_cfg
 
struct  lte_lc_cfun_cb
 
struct  lte_lc_evt
 

Macros

#define LTE_LC_CELL_TIMING_ADVANCE_MAX   20512
 
#define LTE_LC_CELL_TIMING_ADVANCE_INVALID   65535
 
#define LTE_LC_CELL_EARFCN_MAX   262143
 
#define LTE_LC_CELL_RSRP_INVALID   255
 
#define LTE_LC_CELL_RSRQ_INVALID   255
 
#define LTE_LC_CELL_EUTRAN_ID_INVALID   UINT32_MAX
 
#define LTE_LC_CELL_EUTRAN_ID_MAX   268435455
 
#define LTE_LC_CELL_TAC_INVALID   UINT32_MAX
 
#define LTE_LC_CELL_TIME_DIFF_INVALID   0
 
#define LTE_LC_ON_CFUN(name, _callback, _context)
 

Typedefs

typedef void(* lte_lc_evt_handler_t) (const struct lte_lc_evt *const evt)
 

Enumerations

enum  lte_lc_nw_reg_status {
  LTE_LC_NW_REG_NOT_REGISTERED = 0 , LTE_LC_NW_REG_REGISTERED_HOME = 1 , LTE_LC_NW_REG_SEARCHING = 2 , LTE_LC_NW_REG_REGISTRATION_DENIED = 3 ,
  LTE_LC_NW_REG_UNKNOWN = 4 , LTE_LC_NW_REG_REGISTERED_ROAMING = 5 , LTE_LC_NW_REG_UICC_FAIL = 90
}
 
enum  lte_lc_system_mode {
  LTE_LC_SYSTEM_MODE_LTEM = 1 , LTE_LC_SYSTEM_MODE_NBIOT , LTE_LC_SYSTEM_MODE_GPS , LTE_LC_SYSTEM_MODE_LTEM_GPS ,
  LTE_LC_SYSTEM_MODE_NBIOT_GPS , LTE_LC_SYSTEM_MODE_LTEM_NBIOT , LTE_LC_SYSTEM_MODE_LTEM_NBIOT_GPS
}
 
enum  lte_lc_lte_mode { LTE_LC_LTE_MODE_NONE = 0 , LTE_LC_LTE_MODE_LTEM = 7 , LTE_LC_LTE_MODE_NBIOT = 9 }
 
enum  lte_lc_system_mode_preference {
  LTE_LC_SYSTEM_MODE_PREFER_AUTO = 0 , LTE_LC_SYSTEM_MODE_PREFER_LTEM , LTE_LC_SYSTEM_MODE_PREFER_NBIOT , LTE_LC_SYSTEM_MODE_PREFER_LTEM_PLMN_PRIO ,
  LTE_LC_SYSTEM_MODE_PREFER_NBIOT_PLMN_PRIO
}
 
enum  lte_lc_func_mode {
  LTE_LC_FUNC_MODE_POWER_OFF = 0 , LTE_LC_FUNC_MODE_NORMAL = 1 , LTE_LC_FUNC_MODE_RX_ONLY = 2 , LTE_LC_FUNC_MODE_OFFLINE = 4 ,
  LTE_LC_FUNC_MODE_DEACTIVATE_LTE = 20 , LTE_LC_FUNC_MODE_ACTIVATE_LTE = 21 , LTE_LC_FUNC_MODE_DEACTIVATE_GNSS = 30 , LTE_LC_FUNC_MODE_ACTIVATE_GNSS = 31 ,
  LTE_LC_FUNC_MODE_DEACTIVATE_UICC = 40 , LTE_LC_FUNC_MODE_ACTIVATE_UICC = 41 , LTE_LC_FUNC_MODE_OFFLINE_UICC_ON = 44
}
 
enum  lte_lc_evt_type {
  LTE_LC_EVT_NW_REG_STATUS = 0 , LTE_LC_EVT_PSM_UPDATE = 1 , LTE_LC_EVT_EDRX_UPDATE = 2 , LTE_LC_EVT_RRC_UPDATE = 3 ,
  LTE_LC_EVT_CELL_UPDATE = 4 , LTE_LC_EVT_LTE_MODE_UPDATE = 5 , LTE_LC_EVT_TAU_PRE_WARNING = 6 , LTE_LC_EVT_NEIGHBOR_CELL_MEAS = 7 ,
  LTE_LC_EVT_MODEM_SLEEP_EXIT_PRE_WARNING = 8 , LTE_LC_EVT_MODEM_SLEEP_EXIT = 9 , LTE_LC_EVT_MODEM_SLEEP_ENTER = 10 , LTE_LC_EVT_MODEM_EVENT = 11 ,
  LTE_LC_EVT_RAI_UPDATE = 12
}
 
enum  lte_lc_rrc_mode { LTE_LC_RRC_MODE_IDLE = 0 , LTE_LC_RRC_MODE_CONNECTED = 1 }
 
enum  lte_lc_modem_sleep_type {
  LTE_LC_MODEM_SLEEP_PSM = 1 , LTE_LC_MODEM_SLEEP_RF_INACTIVITY = 2 , LTE_LC_MODEM_SLEEP_LIMITED_SERVICE = 3 , LTE_LC_MODEM_SLEEP_FLIGHT_MODE = 4 ,
  LTE_LC_MODEM_SLEEP_PROPRIETARY_PSM = 7
}
 
enum  lte_lc_energy_estimate {
  LTE_LC_ENERGY_CONSUMPTION_EXCESSIVE = 5 , LTE_LC_ENERGY_CONSUMPTION_INCREASED = 6 , LTE_LC_ENERGY_CONSUMPTION_NORMAL = 7 , LTE_LC_ENERGY_CONSUMPTION_REDUCED = 8 ,
  LTE_LC_ENERGY_CONSUMPTION_EFFICIENT = 9
}
 
enum  lte_lc_tau_triggered { LTE_LC_CELL_IN_TAI_LIST = 0 , LTE_LC_CELL_NOT_IN_TAI_LIST = 1 , LTE_LC_CELL_UNKNOWN = UINT8_MAX }
 
enum  lte_lc_ce_level {
  LTE_LC_CE_LEVEL_0 = 0 , LTE_LC_CE_LEVEL_1 = 1 , LTE_LC_CE_LEVEL_2 = 2 , LTE_LC_CE_LEVEL_3 = 3 ,
  LTE_LC_CE_LEVEL_UNKNOWN = UINT8_MAX
}
 
enum  lte_lc_reduced_mobility_mode { LTE_LC_REDUCED_MOBILITY_DEFAULT = 0 , LTE_LC_REDUCED_MOBILITY_NORDIC = 1 , LTE_LC_REDUCED_MOBILITY_DISABLED = 2 }
 
enum  lte_lc_modem_evt {
  LTE_LC_MODEM_EVT_LIGHT_SEARCH_DONE , LTE_LC_MODEM_EVT_SEARCH_DONE , LTE_LC_MODEM_EVT_RESET_LOOP , LTE_LC_MODEM_EVT_BATTERY_LOW ,
  LTE_LC_MODEM_EVT_OVERHEATED , LTE_LC_MODEM_EVT_NO_IMEI , LTE_LC_MODEM_EVT_CE_LEVEL_0 , LTE_LC_MODEM_EVT_CE_LEVEL_1 ,
  LTE_LC_MODEM_EVT_CE_LEVEL_2 , LTE_LC_MODEM_EVT_CE_LEVEL_3
}
 
enum  lte_lc_factory_reset_type { LTE_LC_FACTORY_RESET_ALL = 0 , LTE_LC_FACTORY_RESET_USER = 1 }
 
enum  lte_lc_neighbor_search_type {
  LTE_LC_NEIGHBOR_SEARCH_TYPE_DEFAULT = 1 , LTE_LC_NEIGHBOR_SEARCH_TYPE_EXTENDED_LIGHT = 2 , LTE_LC_NEIGHBOR_SEARCH_TYPE_EXTENDED_COMPLETE = 3 , LTE_LC_NEIGHBOR_SEARCH_TYPE_GCI_DEFAULT = 4 ,
  LTE_LC_NEIGHBOR_SEARCH_TYPE_GCI_EXTENDED_LIGHT = 5 , LTE_LC_NEIGHBOR_SEARCH_TYPE_GCI_EXTENDED_COMPLETE = 6
}
 
enum  lte_lc_periodic_search_pattern_type { LTE_LC_PERIODIC_SEARCH_PATTERN_RANGE = 0 , LTE_LC_PERIODIC_SEARCH_PATTERN_TABLE = 1 }
 

Functions

void lte_lc_register_handler (lte_lc_evt_handler_t handler)
 
int lte_lc_deregister_handler (lte_lc_evt_handler_t handler)
 
int lte_lc_connect (void)
 
int lte_lc_connect_async (lte_lc_evt_handler_t handler)
 
int lte_lc_offline (void)
 
int lte_lc_power_off (void)
 
int lte_lc_normal (void)
 
int lte_lc_psm_param_set (const char *rptau, const char *rat)
 
int lte_lc_psm_param_set_seconds (int rptau, int rat)
 
int lte_lc_psm_req (bool enable)
 
int lte_lc_psm_get (int *tau, int *active_time)
 
int lte_lc_proprietary_psm_req (bool enable)
 
int lte_lc_ptw_set (enum lte_lc_lte_mode mode, const char *ptw)
 
int lte_lc_edrx_param_set (enum lte_lc_lte_mode mode, const char *edrx)
 
int lte_lc_edrx_req (bool enable)
 
int lte_lc_edrx_get (struct lte_lc_edrx_cfg *edrx_cfg)
 
int lte_lc_nw_reg_status_get (enum lte_lc_nw_reg_status *status)
 
int lte_lc_system_mode_set (enum lte_lc_system_mode mode, enum lte_lc_system_mode_preference preference)
 
int lte_lc_system_mode_get (enum lte_lc_system_mode *mode, enum lte_lc_system_mode_preference *preference)
 
int lte_lc_func_mode_set (enum lte_lc_func_mode mode)
 
int lte_lc_func_mode_get (enum lte_lc_func_mode *mode)
 
int lte_lc_lte_mode_get (enum lte_lc_lte_mode *mode)
 
int lte_lc_neighbor_cell_measurement (struct lte_lc_ncellmeas_params *params)
 
int lte_lc_neighbor_cell_measurement_cancel (void)
 
int lte_lc_conn_eval_params_get (struct lte_lc_conn_eval_params *params)
 
int lte_lc_modem_events_enable (void)
 
int lte_lc_modem_events_disable (void)
 
int lte_lc_periodic_search_set (const struct lte_lc_periodic_search_cfg *const cfg)
 
int lte_lc_periodic_search_get (struct lte_lc_periodic_search_cfg *const cfg)
 
int lte_lc_periodic_search_clear (void)
 
int lte_lc_periodic_search_request (void)
 
int lte_lc_reduced_mobility_get (enum lte_lc_reduced_mobility_mode *mode)
 
int lte_lc_reduced_mobility_set (enum lte_lc_reduced_mobility_mode mode)
 
int lte_lc_factory_reset (enum lte_lc_factory_reset_type type)