le_mrc_interface.h File Reference

#include "legato.h"
#include "le_mrc_common.h"

Go to the source code of this file.

Typedefs

typedef void(* le_mrc_DisconnectHandler_t) (void *)
 

Functions

void le_mrc_ConnectService (void)
 
le_result_t le_mrc_TryConnectService (void)
 
LE_FULL_API void le_mrc_SetServerDisconnectHandler (le_mrc_DisconnectHandler_t disconnectHandler, void *contextPtr)
 
void le_mrc_DisconnectService (void)
 
le_mrc_NetRegStateEventHandlerRef_t le_mrc_AddNetRegStateEventHandler (le_mrc_NetRegStateHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveNetRegStateEventHandler (le_mrc_NetRegStateEventHandlerRef_t handlerRef)
 
le_mrc_RatChangeHandlerRef_t le_mrc_AddRatChangeHandler (le_mrc_RatChangeHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveRatChangeHandler (le_mrc_RatChangeHandlerRef_t handlerRef)
 
le_mrc_PacketSwitchedChangeHandlerRef_t le_mrc_AddPacketSwitchedChangeHandler (le_mrc_PacketSwitchedChangeHandlerFunc_t packetHandlerPtr, void *contextPtr)
 
void le_mrc_RemovePacketSwitchedChangeHandler (le_mrc_PacketSwitchedChangeHandlerRef_t handlerRef)
 
le_mrc_SignalStrengthChangeHandlerRef_t le_mrc_AddSignalStrengthChangeHandler (le_mrc_Rat_t rat, int32_t lowerRangeThreshold, int32_t upperRangeThreshold, le_mrc_SignalStrengthChangeHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveSignalStrengthChangeHandler (le_mrc_SignalStrengthChangeHandlerRef_t handlerRef)
 
le_result_t le_mrc_SetSignalStrengthIndThresholds (le_mrc_Rat_t rat, int32_t lowerRangeThreshold, int32_t upperRangeThreshold)
 
le_result_t le_mrc_SetSignalStrengthIndDelta (le_mrc_Rat_t rat, uint16_t delta)
 
le_result_t le_mrc_SetAutomaticRegisterMode (void)
 
le_result_t le_mrc_SetManualRegisterMode (const char *LE_NONNULL mcc, const char *LE_NONNULL mnc)
 
void le_mrc_SetManualRegisterModeAsync (const char *LE_NONNULL mcc, const char *LE_NONNULL mnc, le_mrc_ManualSelectionHandlerFunc_t handlerPtr, void *contextPtr)
 
le_result_t le_mrc_GetRegisterMode (bool *isManualPtrPtr, char *mccPtr, size_t mccPtrSize, char *mncPtr, size_t mncPtrSize)
 
le_result_t le_mrc_GetPacketSwitchedState (le_mrc_NetRegState_t *statePtr)
 
int32_t le_mrc_GetPlatformSpecificRegistrationErrorCode (void)
 
le_result_t le_mrc_SetRatPreferences (le_mrc_RatBitMask_t ratMask)
 
le_result_t le_mrc_GetRatPreferences (le_mrc_RatBitMask_t *ratMaskPtrPtr)
 
le_result_t le_mrc_SetBandPreferences (le_mrc_BandBitMask_t bandMask)
 
le_result_t le_mrc_GetBandPreferences (le_mrc_BandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_SetLteBandPreferences (le_mrc_LteBandBitMask_t bandMask)
 
le_result_t le_mrc_GetLteBandPreferences (le_mrc_LteBandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_SetTdScdmaBandPreferences (le_mrc_TdScdmaBandBitMask_t bandMask)
 
le_result_t le_mrc_GetTdScdmaBandPreferences (le_mrc_TdScdmaBandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_AddPreferredOperator (const char *LE_NONNULL mcc, const char *LE_NONNULL mnc, le_mrc_RatBitMask_t ratMask)
 
le_result_t le_mrc_RemovePreferredOperator (const char *LE_NONNULL mcc, const char *LE_NONNULL mnc)
 
le_mrc_PreferredOperatorListRef_t le_mrc_GetPreferredOperatorsList (void)
 
le_mrc_PreferredOperatorRef_t le_mrc_GetFirstPreferredOperator (le_mrc_PreferredOperatorListRef_t preferredOperatorListRef)
 
le_mrc_PreferredOperatorRef_t le_mrc_GetNextPreferredOperator (le_mrc_PreferredOperatorListRef_t preferredOperatorListRef)
 
void le_mrc_DeletePreferredOperatorsList (le_mrc_PreferredOperatorListRef_t preferredOperatorListRef)
 
le_result_t le_mrc_GetPreferredOperatorDetails (le_mrc_PreferredOperatorRef_t preferredOperatorRef, char *mccPtr, size_t mccPtrSize, char *mncPtr, size_t mncPtrSize, le_mrc_RatBitMask_t *ratMaskPtr)
 
le_result_t le_mrc_GetNetRegState (le_mrc_NetRegState_t *statePtr)
 
le_result_t le_mrc_GetSignalQual (uint32_t *qualityPtr)
 
le_result_t le_mrc_SetRadioPower (le_onoff_t power)
 
le_result_t le_mrc_GetRadioPower (le_onoff_t *powerPtr)
 
le_mrc_ScanInformationListRef_t le_mrc_PerformCellularNetworkScan (le_mrc_RatBitMask_t ratMask)
 
le_mrc_PciScanInformationListRef_t le_mrc_PerformPciNetworkScan (le_mrc_RatBitMask_t ratMask)
 
void le_mrc_PerformCellularNetworkScanAsync (le_mrc_RatBitMask_t ratMask, le_mrc_CellularNetworkScanHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_PerformPciNetworkScanAsync (le_mrc_RatBitMask_t ratMask, le_mrc_PciNetworkScanHandlerFunc_t handlerPtr, void *contextPtr)
 
le_mrc_ScanInformationRef_t le_mrc_GetFirstCellularNetworkScan (le_mrc_ScanInformationListRef_t scanInformationListRef)
 
le_mrc_ScanInformationRef_t le_mrc_GetNextCellularNetworkScan (le_mrc_ScanInformationListRef_t scanInformationListRef)
 
le_mrc_PciScanInformationRef_t le_mrc_GetFirstPciScanInfo (le_mrc_PciScanInformationListRef_t scanInformationListRef)
 
le_mrc_PciScanInformationRef_t le_mrc_GetNextPciScanInfo (le_mrc_PciScanInformationListRef_t scanInformationListRef)
 
le_mrc_PlmnInformationRef_t le_mrc_GetFirstPlmnInfo (le_mrc_PciScanInformationRef_t pciScanInformationRef)
 
le_mrc_PlmnInformationRef_t le_mrc_GetNextPlmnInfo (le_mrc_PciScanInformationRef_t plmnRef)
 
uint16_t le_mrc_GetPciScanCellId (le_mrc_PciScanInformationRef_t pciScanInformationRef)
 
uint32_t le_mrc_GetPciScanGlobalCellId (le_mrc_PciScanInformationRef_t pciScanInformationRef)
 
le_result_t le_mrc_GetPciScanMccMnc (le_mrc_PlmnInformationRef_t plmnRef, char *mccPtr, size_t mccPtrSize, char *mncPtr, size_t mncPtrSize)
 
void le_mrc_DeleteCellularNetworkScan (le_mrc_ScanInformationListRef_t scanInformationListRef)
 
void le_mrc_DeletePciNetworkScan (le_mrc_PciScanInformationListRef_t scanInformationListRef)
 
le_result_t le_mrc_GetCellularNetworkMccMnc (le_mrc_ScanInformationRef_t scanInformationRef, char *mccPtr, size_t mccPtrSize, char *mncPtr, size_t mncPtrSize)
 
le_result_t le_mrc_GetCellularNetworkName (le_mrc_ScanInformationRef_t scanInformationRef, char *namePtr, size_t namePtrSize)
 
le_mrc_Rat_t le_mrc_GetCellularNetworkRat (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkInUse (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkAvailable (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkHome (le_mrc_ScanInformationRef_t scanInformationRef)
 
bool le_mrc_IsCellularNetworkForbidden (le_mrc_ScanInformationRef_t scanInformationRef)
 
le_result_t le_mrc_GetCurrentNetworkName (char *nameStr, size_t nameStrSize)
 
le_result_t le_mrc_GetCurrentNetworkMccMnc (char *mccStr, size_t mccStrSize, char *mncStr, size_t mncStrSize)
 
le_result_t le_mrc_GetRadioAccessTechInUse (le_mrc_Rat_t *ratPtr)
 
le_mrc_NeighborCellsRef_t le_mrc_GetNeighborCellsInfo (void)
 
void le_mrc_DeleteNeighborCellsInfo (le_mrc_NeighborCellsRef_t ngbrCellsRef)
 
le_mrc_CellInfoRef_t le_mrc_GetFirstNeighborCellInfo (le_mrc_NeighborCellsRef_t ngbrCellsRef)
 
le_mrc_CellInfoRef_t le_mrc_GetNextNeighborCellInfo (le_mrc_NeighborCellsRef_t ngbrCellsRef)
 
uint32_t le_mrc_GetNeighborCellId (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
uint32_t le_mrc_GetNeighborCellLocAreaCode (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
int32_t le_mrc_GetNeighborCellRxLevel (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
le_mrc_Rat_t le_mrc_GetNeighborCellRat (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
int32_t le_mrc_GetNeighborCellUmtsEcIo (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
le_result_t le_mrc_GetNeighborCellLteIntraFreq (le_mrc_CellInfoRef_t ngbrCellInfoRef, int32_t *rsrqPtr, int32_t *rsrpPtr)
 
le_result_t le_mrc_GetNeighborCellLteInterFreq (le_mrc_CellInfoRef_t ngbrCellInfoRef, int32_t *rsrqPtr, int32_t *rsrpPtr)
 
le_mrc_MetricsRef_t le_mrc_MeasureSignalMetrics (void)
 
void le_mrc_DeleteSignalMetrics (le_mrc_MetricsRef_t MetricsRef)
 
le_mrc_Rat_t le_mrc_GetRatOfSignalMetrics (le_mrc_MetricsRef_t MetricsRef)
 
le_result_t le_mrc_GetGsmSignalMetrics (le_mrc_MetricsRef_t MetricsRef, int32_t *rssiPtr, uint32_t *berPtr)
 
le_result_t le_mrc_GetUmtsSignalMetrics (le_mrc_MetricsRef_t MetricsRef, int32_t *ssPtr, uint32_t *blerPtr, int32_t *ecioPtr, int32_t *rscpPtr, int32_t *sinrPtr)
 
le_result_t le_mrc_GetLteSignalMetrics (le_mrc_MetricsRef_t MetricsRef, int32_t *ssPtr, uint32_t *blerPtr, int32_t *rsrqPtr, int32_t *rsrpPtr, int32_t *snrPtr)
 
le_result_t le_mrc_GetCdmaSignalMetrics (le_mrc_MetricsRef_t MetricsRef, int32_t *ssPtr, uint32_t *erPtr, int32_t *ecioPtr, int32_t *sinrPtr, int32_t *ioPtr)
 
uint32_t le_mrc_GetServingCellId (void)
 
uint32_t le_mrc_GetServingCellLocAreaCode (void)
 
uint16_t le_mrc_GetServingCellLteTracAreaCode (void)
 
le_result_t le_mrc_GetBandCapabilities (le_mrc_BandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_GetLteBandCapabilities (le_mrc_LteBandBitMask_t *bandMaskPtrPtr)
 
le_result_t le_mrc_GetTdScdmaBandCapabilities (le_mrc_TdScdmaBandBitMask_t *bandMaskPtrPtr)
 
le_mrc_NetworkRejectHandlerRef_t le_mrc_AddNetworkRejectHandler (le_mrc_NetworkRejectHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveNetworkRejectHandler (le_mrc_NetworkRejectHandlerRef_t handlerRef)
 
le_mrc_NetRegRejectHandlerRef_t le_mrc_AddNetRegRejectHandler (le_mrc_NetRegRejectHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveNetRegRejectHandler (le_mrc_NetRegRejectHandlerRef_t handlerRef)
 
le_mrc_JammingDetectionEventHandlerRef_t le_mrc_AddJammingDetectionEventHandler (le_mrc_JammingDetectionHandlerFunc_t handlerPtr, void *contextPtr)
 
void le_mrc_RemoveJammingDetectionEventHandler (le_mrc_JammingDetectionEventHandlerRef_t handlerRef)
 
le_result_t le_mrc_StartJammingDetection (void)
 
le_result_t le_mrc_StopJammingDetection (void)
 
le_result_t le_mrc_SetSarBackoffState (uint8_t state)
 
le_result_t le_mrc_GetSarBackoffState (uint8_t *statePtr)
 
uint32_t le_mrc_GetServingCellEarfcn (void)
 
uint32_t le_mrc_GetNeighborCellEarfcn (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
uint32_t le_mrc_GetServingCellTimingAdvance (void)
 
uint16_t le_mrc_GetPhysicalServingLteCellId (void)
 
uint16_t le_mrc_GetPhysicalNeighborLteCellId (le_mrc_CellInfoRef_t ngbrCellInfoRef)
 
le_result_t le_mrc_GetServingCellGsmBsic (uint8_t *BSICPtr)
 
le_result_t le_mrc_GetNeighborCellGsmBsic (le_mrc_CellInfoRef_t ngbrCellInfoRef, uint8_t *bsicPtr)
 

Detailed Description

Legato Modem Radio Control include file.

Typedef Documentation

◆ le_mrc_DisconnectHandler_t

typedef void(* le_mrc_DisconnectHandler_t) (void *)

Type for handler called when a server disconnects.

Function Documentation

◆ le_mrc_AddJammingDetectionEventHandler()

le_mrc_JammingDetectionEventHandlerRef_t le_mrc_AddJammingDetectionEventHandler ( le_mrc_JammingDetectionHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_JammingDetectionEvent'

This event provides information on jamming detection.

Parameters
[in]handlerPtr
[in]contextPtr

◆ le_mrc_AddNetRegRejectHandler()

le_mrc_NetRegRejectHandlerRef_t le_mrc_AddNetRegRejectHandler ( le_mrc_NetRegRejectHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_NetRegReject'

Event to report network registration reject indication. NetworkReject will be deprecated.

Parameters
[in]handlerPtr
[in]contextPtr

◆ le_mrc_AddNetRegStateEventHandler()

le_mrc_NetRegStateEventHandlerRef_t le_mrc_AddNetRegStateEventHandler ( le_mrc_NetRegStateHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

2G/3G Band Bit Mask (64 bits) LTE Band Bit Mask (64 bits) TDSCDMA Band Bit Mask Reference type for referring to MRC Scan Information objects. Reference type for Scan Information Listing. Reference type for PCI Scan Information Listing. Reference type for PCI Scan Information . Reference type for PLMN Information . Reference type for referring to the Preferred Operator objects. Reference type for Preferred Operator Listing. Reference type for one Cell Information. Reference type for all Neighboring Cells Information. Reference type for the signal metrics. Network Registration states. Radio Access Technology enum Jamming detection report type enum

Note
If the reported status is the final status (end of the procedure), this shall be indicated within the status report.
Other reports, called intermediate reports, gives only intermediate results issuing from the algorithm Jamming detection status type enum
The final status can be only NULL or JAMMED. Radio Bitmask Access Technology Bit Mask Network Registration reject cause type enum. Network Registration service domain type enum. Network registration reject indication structure. Handler for Network registration state changes. Reference type used by Add/Remove functions for EVENT 'le_mrc_NetRegStateEvent' Handler for Radio Access Technology changes. Reference type used by Add/Remove functions for EVENT 'le_mrc_RatChange' Handler for Packet Switched service state changes. Reference type used by Add/Remove functions for EVENT 'le_mrc_PacketSwitchedChange' Handler for Signal Strength value changes. Reference type used by Add/Remove functions for EVENT 'le_mrc_SignalStrengthChange' Handler for cellular asynchronous network scan Sending result. Returns the reference to the List object. Null pointer if the scan failed. Handler for PCI asynchronous network scan Sending result. Returns the reference to the List object. Null pointer if the scan failed. Handler for asynchronous manual selection response Handler to report network reject indication.
Deprecated:
le_mrc_NetworkRejectHandler() will be removed in near future. It will be replaced by le_mrc_AddNetRegRejectHandler().

Reference type used by Add/Remove functions for EVENT 'le_mrc_NetworkReject' Handler to report network registration reject indication. NetworkRejectHandler is deprecated. Reference type used by Add/Remove functions for EVENT 'le_mrc_NetRegReject' Handler for jamming detection event. Reference type used by Add/Remove functions for EVENT 'le_mrc_JammingDetectionEvent' Add handler function for EVENT 'le_mrc_NetRegStateEvent'

This event provides information on network registration state changes.

Note
multi-app safe
Parameters
[in]handlerPtr
[in]contextPtr

◆ le_mrc_AddNetworkRejectHandler()

le_mrc_NetworkRejectHandlerRef_t le_mrc_AddNetworkRejectHandler ( le_mrc_NetworkRejectHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_NetworkReject'

Event to report network reject indication.

Parameters
[in]handlerPtr
[in]contextPtr

◆ le_mrc_AddPacketSwitchedChangeHandler()

le_mrc_PacketSwitchedChangeHandlerRef_t le_mrc_AddPacketSwitchedChangeHandler ( le_mrc_PacketSwitchedChangeHandlerFunc_t  packetHandlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_PacketSwitchedChange'

This event provides information on Packet Switched service changes.

Note
multi-app safe
Parameters
[in]packetHandlerPtr
[in]contextPtr

◆ le_mrc_AddPreferredOperator()

le_result_t le_mrc_AddPreferredOperator ( const char *LE_NONNULL  mcc,
const char *LE_NONNULL  mnc,
le_mrc_RatBitMask_t  ratMask 
)

Add a preferred operator by specifying the MCC/MNC and the Radio Access Technology.

Returns
  • LE_UNSUPPORTED List of User Preferred operators not available.
  • LE_FAULT Function failed.
  • LE_BAD_PARAMETER RAT mask is invalid.
  • LE_OK Function succeeded.
Note
If strings are not set, too long (bigger than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN digits), or too short (less than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN-1 digits) it's a fatal error, the function won't return.
NOT multi-app safe
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code
[in]ratMaskBit mask for the Radio Access Technology preferences.

◆ le_mrc_AddRatChangeHandler()

le_mrc_RatChangeHandlerRef_t le_mrc_AddRatChangeHandler ( le_mrc_RatChangeHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_RatChange'

This event provides information on Radio Access Technology changes.

Note
multi-app safe
Parameters
[in]handlerPtr
[in]contextPtr

◆ le_mrc_AddSignalStrengthChangeHandler()

le_mrc_SignalStrengthChangeHandlerRef_t le_mrc_AddSignalStrengthChangeHandler ( le_mrc_Rat_t  rat,
int32_t  lowerRangeThreshold,
int32_t  upperRangeThreshold,
le_mrc_SignalStrengthChangeHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Add handler function for EVENT 'le_mrc_SignalStrengthChange'

This event provides information on Signal Strength value changes.

Note
NOT multi-app safe
Parameters
[in]ratRadio Access Technology
[in]lowerRangeThresholdLower-range Signal strength threshold in dBm
[in]upperRangeThresholdUpper-range Signal strength threshold in dBm
[in]handlerPtr
[in]contextPtr

◆ le_mrc_ConnectService()

void le_mrc_ConnectService ( void  )

Connect the current client thread to the service providing this API. Block until the service is available.

For each thread that wants to use this API, either ConnectService or TryConnectService must be called before any other functions in this API. Normally, ConnectService is automatically called for the main thread, but not for any other thread. For details, see Client-specific Functions.

This function is created automatically.

◆ le_mrc_DeleteCellularNetworkScan()

void le_mrc_DeleteCellularNetworkScan ( le_mrc_ScanInformationListRef_t  scanInformationListRef)

This function must be called to delete the list of the Scan Information retrieved with le_mrc_PerformCellularNetworkScan().

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]scanInformationListRefThe list of scan information.

◆ le_mrc_DeleteNeighborCellsInfo()

void le_mrc_DeleteNeighborCellsInfo ( le_mrc_NeighborCellsRef_t  ngbrCellsRef)

This function must be called to delete the Neighboring Cells information.

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]ngbrCellsRefNeighboring Cells reference.

◆ le_mrc_DeletePciNetworkScan()

void le_mrc_DeletePciNetworkScan ( le_mrc_PciScanInformationListRef_t  scanInformationListRef)

This function must be called to delete the list of the Pci Scan Information retrieved with le_mrc_PerformPciNetworkScan() or le_mrc_PerformPciNetworkScanAsync().

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
Parameters
[in]scanInformationListRefThe list of scan information.

◆ le_mrc_DeletePreferredOperatorsList()

void le_mrc_DeletePreferredOperatorsList ( le_mrc_PreferredOperatorListRef_t  preferredOperatorListRef)

This function must be called to delete the list of the preferred operators retrieved with le_mrc_GetPreferredOperators().

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]preferredOperatorListRefThe list of the preferred operators.

◆ le_mrc_DeleteSignalMetrics()

void le_mrc_DeleteSignalMetrics ( le_mrc_MetricsRef_t  MetricsRef)

This function must be called to delete the the signal metrics.

Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]MetricsRefSignal metrics reference.

◆ le_mrc_DisconnectService()

void le_mrc_DisconnectService ( void  )

Disconnect the current client thread from the service providing this API.

Normally, this function doesn't need to be called. After this function is called, there's no longer a connection to the service, and the functions in this API can't be used. For details, see Client-specific Functions.

This function is created automatically.

◆ le_mrc_GetBandCapabilities()

le_result_t le_mrc_GetBandCapabilities ( le_mrc_BandBitMask_t *  bandMaskPtrPtr)

Get the Bit mask for 2G/3G Band capabilities.

Returns
  • LE_OK on success
  • LE_FAULT on failure
  • LE_UNSUPPORTED Unable to get the 2G/3G Band capabilities on this platform
Note
multi-app safe
Parameters
[out]bandMaskPtrPtrBit mask for 2G/3G Band capabilities.

◆ le_mrc_GetBandPreferences()

le_result_t le_mrc_GetBandPreferences ( le_mrc_BandBitMask_t *  bandMaskPtrPtr)

Get the Bit mask for 2G/3G Band preferences.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
multi-app safe
Parameters
[out]bandMaskPtrPtrBit mask for 2G/3G Band preferences.

◆ le_mrc_GetCdmaSignalMetrics()

le_result_t le_mrc_GetCdmaSignalMetrics ( le_mrc_MetricsRef_t  MetricsRef,
int32_t *  ssPtr,
uint32_t *  erPtr,
int32_t *  ecioPtr,
int32_t *  sinrPtr,
int32_t *  ioPtr 
)

This function returns the signal metrics measured on CDMA network.

Returns
  • LE_OK on success
  • LE_FAULT on failure
  • rscpPtr and sinrPtr return INT32_MAX when the value isn't available.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]MetricsRefSignal metrics reference.
[out]ssPtrSignal strength in dBm
[out]erPtrFrame/Packet error rate
[out]ecioPtrECIO value in dB with 1 decimal place (-15 = -1.5 dB) (Negative value)
[out]sinrPtrSINR level in dB with 1 decimal place, (only applicable for 1xEV-DO, value INT32_MAX means that the value is not available)
[out]ioPtrReceived IO in dBm (only applicable for 1xEV-DO, value INT32_MAX means that the value is not available)

◆ le_mrc_GetCellularNetworkMccMnc()

le_result_t le_mrc_GetCellularNetworkMccMnc ( le_mrc_ScanInformationRef_t  scanInformationRef,
char *  mccPtr,
size_t  mccPtrSize,
char *  mncPtr,
size_t  mncPtrSize 
)

This function must be called to get the Cellular Network Code [mcc:mnc]

Returns
  • LE_OK on success
  • LE_OVERFLOW if the MCC or MNC would not fit in buffer
  • LE_FAULT for all other errors
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]scanInformationRefScan information reference
[out]mccPtrMobile Country Code
[in]mccPtrSize
[out]mncPtrMobile Network Code
[in]mncPtrSize

◆ le_mrc_GetCellularNetworkName()

le_result_t le_mrc_GetCellularNetworkName ( le_mrc_ScanInformationRef_t  scanInformationRef,
char *  namePtr,
size_t  namePtrSize 
)

This function must be called to get the Cellular Network Name.

Returns
  • LE_OK on success
  • LE_OVERFLOW if the operator name would not fit in buffer
  • LE_FAULT for all other errors
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]scanInformationRefScan information reference
[out]namePtrName of operator
[in]namePtrSize

◆ le_mrc_GetCellularNetworkRat()

le_mrc_Rat_t le_mrc_GetCellularNetworkRat ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to get the radio access technology of a scanInformationRef.

Returns
the radio access technology
Note
On failure, the process exits.
multi-app safe
Parameters
[in]scanInformationRefScan information reference

◆ le_mrc_GetCurrentNetworkMccMnc()

le_result_t le_mrc_GetCurrentNetworkMccMnc ( char *  mccStr,
size_t  mccStrSize,
char *  mncStr,
size_t  mncStrSize 
)

This function must be called to get the current network PLMN information.

Returns
  • LE_OK on success
  • LE_FAULT on any other failure
Note
multi-app safe
Parameters
[out]mccStrthe mobile country code
[in]mccStrSize
[out]mncStrthe mobile network code
[in]mncStrSize

◆ le_mrc_GetCurrentNetworkName()

le_result_t le_mrc_GetCurrentNetworkName ( char *  nameStr,
size_t  nameStrSize 
)

This function must be called to get the current network name information.

Returns
  • LE_OK on success
  • LE_BAD_PARAMETER if nameStr is NULL
  • LE_OVERFLOW if the Home Network Name can't fit in nameStr
  • LE_FAULT on any other failure
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[out]nameStrthe home network Name
[in]nameStrSize

◆ le_mrc_GetFirstCellularNetworkScan()

le_mrc_ScanInformationRef_t le_mrc_GetFirstCellularNetworkScan ( le_mrc_ScanInformationListRef_t  scanInformationListRef)

This function must be called to get the first Scan Information object reference in the list of scan Information retrieved with le_mrc_PerformCellularNetworkScan().

Returns
NULL No scan information found.
le_mrc_ScanInformationRef_t The Scan Information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]scanInformationListRefThe list of scan information.

◆ le_mrc_GetFirstNeighborCellInfo()

le_mrc_CellInfoRef_t le_mrc_GetFirstNeighborCellInfo ( le_mrc_NeighborCellsRef_t  ngbrCellsRef)

This function must be called to get the first Cell Information reference in the list of Neighboring Cells information retrieved with le_mrc_GetNeighborCellsInfo().

Returns
NULL No Cell information object found.
le_mrc_CellInfoRef_t The Cell information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellsRefNeighboring Cells reference.

◆ le_mrc_GetFirstPciScanInfo()

le_mrc_PciScanInformationRef_t le_mrc_GetFirstPciScanInfo ( le_mrc_PciScanInformationListRef_t  scanInformationListRef)

This function must be called to get the first Pci Scan Information object reference in the list of scan Information retrieved with le_mrc_PerformPciNetworkScan().

Returns
NULL No scan information found.
The Scan Information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]scanInformationListRefThe list of scan information.

◆ le_mrc_GetFirstPlmnInfo()

le_mrc_PlmnInformationRef_t le_mrc_GetFirstPlmnInfo ( le_mrc_PciScanInformationRef_t  pciScanInformationRef)

This function must be called to get the first Plmn Information object reference in the list of Plmn on each cell.

Returns
NULL No scan information found.
le_mrc_PlmnInformationRef_t The Plmn Information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
Parameters
[in]pciScanInformationRef[IN] The reference to the cell information.

◆ le_mrc_GetFirstPreferredOperator()

le_mrc_PreferredOperatorRef_t le_mrc_GetFirstPreferredOperator ( le_mrc_PreferredOperatorListRef_t  preferredOperatorListRef)

This function must be called to get the first Operator object reference in the list of the preferred operators retrieved with le_mrc_GetPreferredOperators().

Returns
  • NULL No operator information found.
  • le_mrc_PreferredOperatorRef The Operator object reference.
Note
If the caller is passing a bad reference into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]preferredOperatorListRefThe list of the preferred operators.

◆ le_mrc_GetGsmSignalMetrics()

le_result_t le_mrc_GetGsmSignalMetrics ( le_mrc_MetricsRef_t  MetricsRef,
int32_t *  rssiPtr,
uint32_t *  berPtr 
)

This function returns the signal strength in dBm and the bit error rate measured on GSM network.

Returns
  • LE_OK on success
  • LE_FAULT on failure
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]MetricsRefSignal metrics reference.
[out]rssiPtrSignal strength in dBm
[out]berPtrBit error rate.

◆ le_mrc_GetLteBandCapabilities()

le_result_t le_mrc_GetLteBandCapabilities ( le_mrc_LteBandBitMask_t *  bandMaskPtrPtr)

Get the Bit mask for LTE Band capabilities.

Returns
  • LE_OK on success
  • LE_FAULT on failure
  • LE_UNSUPPORTED Unable to get the LTE Band capabilities on this platform
Note
multi-app safe
Parameters
[out]bandMaskPtrPtrBit mask for LTE Band capabilities.

◆ le_mrc_GetLteBandPreferences()

le_result_t le_mrc_GetLteBandPreferences ( le_mrc_LteBandBitMask_t *  bandMaskPtrPtr)

Get the Bit mask for LTE Band preferences.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
multi-app safe
Parameters
[out]bandMaskPtrPtrBit mask for LTE Band preferences.

◆ le_mrc_GetLteSignalMetrics()

le_result_t le_mrc_GetLteSignalMetrics ( le_mrc_MetricsRef_t  MetricsRef,
int32_t *  ssPtr,
uint32_t *  blerPtr,
int32_t *  rsrqPtr,
int32_t *  rsrpPtr,
int32_t *  snrPtr 
)

This function returns the signal metrics measured on LTE network.

Returns
  • LE_OK on success
  • LE_FAULT on failure
  • sinrPtr and ioPtr return INT32_MAX when the value isn't available.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]MetricsRefSignal metrics reference.
[out]ssPtrSignal strength in dBm
[out]blerPtrBlock error rate
[out]rsrqPtrRSRQ value in dB as measured by L1 with 1 decimal place
[out]rsrpPtrCurrent RSRP in dBm as measured by L1 with 1 decimal place
[out]snrPtrSNR level in dB with 1 decimal place (15 = 1.5 dB)

◆ le_mrc_GetNeighborCellEarfcn()

uint32_t le_mrc_GetNeighborCellEarfcn ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

Get the neighbor cell radio frequency channel number. The EARFCN is in the range from 0 to 262143.

Returns
The neighbor cell frequency channel number. UINT32_MAX value is returned if the value is not available.
Parameters
[in]ngbrCellInfoRefThe cell information reference

◆ le_mrc_GetNeighborCellGsmBsic()

le_result_t le_mrc_GetNeighborCellGsmBsic ( le_mrc_CellInfoRef_t  ngbrCellInfoRef,
uint8_t *  bsicPtr 
)

Get the Base Station Identity Code (BSIC) for a neighbour cell on GSM network.

Returns
LE_OK The function succeeded.
LE_BAD_PARAMETER Bad parameter passed to the function
LE_FAULT The function failed.
LE_UNAVAILABLE The BSIC is not available. The BSIC value is set to UINT8_MAX.
Parameters
[in]ngbrCellInfoRefThe cell information reference.
[out]bsicPtrThe BSIC value

◆ le_mrc_GetNeighborCellId()

uint32_t le_mrc_GetNeighborCellId ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the Physical Cell Identifier.

Returns
The Physical Cell Identifier. UINT32_MAX value is returned if the Cell Identifier is not available.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellInfoRefCell information reference.

◆ le_mrc_GetNeighborCellLocAreaCode()

uint32_t le_mrc_GetNeighborCellLocAreaCode ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the Location Area Code of a cell.

Returns
The Location Area Code of a cell. UINT16_MAX value is returned if the value is not available.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellInfoRefCell information reference.

◆ le_mrc_GetNeighborCellLteInterFreq()

le_result_t le_mrc_GetNeighborCellLteInterFreq ( le_mrc_CellInfoRef_t  ngbrCellInfoRef,
int32_t *  rsrqPtr,
int32_t *  rsrpPtr 
)

This function must be called to get the RSRP and RSRQ of the Interfrequency of a LTE cell.

Returns
  • LE_OK on success
  • LE_FAULT on failure
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellInfoRefCell information reference.
[out]rsrqPtrReference Signal Received Quality value in dB with 1 decimal place
[out]rsrpPtrReference Signal Receiver Power value in dBm with 1 decimal place

◆ le_mrc_GetNeighborCellLteIntraFreq()

le_result_t le_mrc_GetNeighborCellLteIntraFreq ( le_mrc_CellInfoRef_t  ngbrCellInfoRef,
int32_t *  rsrqPtr,
int32_t *  rsrpPtr 
)

This function must be called to get the RSRP and RSRQ of the Intrafrequency of a LTE cell.

Returns
  • LE_OK on success
  • LE_FAULT on failure
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellInfoRefCell information reference.
[out]rsrqPtrReference Signal Received Quality value in dB with 1 decimal place
[out]rsrpPtrReference Signal Receiver Power value in dBm with 1 decimal place

◆ le_mrc_GetNeighborCellRat()

le_mrc_Rat_t le_mrc_GetNeighborCellRat ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the Radio Access Technology of a cell.

Returns
The Radio Access Technology of a cell.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellInfoRefCell information reference.

◆ le_mrc_GetNeighborCellRxLevel()

int32_t le_mrc_GetNeighborCellRxLevel ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the signal strength of a cell.

Returns
The signal strength of a cell in dBm.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellInfoRefCell information reference.

◆ le_mrc_GetNeighborCellsInfo()

le_mrc_NeighborCellsRef_t le_mrc_GetNeighborCellsInfo ( void  )

This function must be called to retrieve the Neighboring Cells information. It creates and returns a reference to the Neighboring Cells information.

Returns
A reference to the Neighboring Cells information.
NULL if no Cells Information are available.
Note
multi-app safe

◆ le_mrc_GetNeighborCellUmtsEcIo()

int32_t le_mrc_GetNeighborCellUmtsEcIo ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

This function must be called to get the Ec/Io; the received energy per chip divided by the power density in the band measured in dBm on the primary CPICH channel of serving cell (negative value)

Returns
  • The Ec/Io of a cell given in dB with 1 decimal place. (only applicable for UMTS network).
  • INT32_MAX when the value isn't available.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellInfoRefCell information reference.

◆ le_mrc_GetNetRegState()

le_result_t le_mrc_GetNetRegState ( le_mrc_NetRegState_t *  statePtr)

Get the network registration state.

Returns
LE_FAULT The function failed to get the Network registration state.
LE_BAD_PARAMETER A bad parameter was passed.
LE_OK The function succeeded.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[out]statePtrNetwork Registration state.

◆ le_mrc_GetNextCellularNetworkScan()

le_mrc_ScanInformationRef_t le_mrc_GetNextCellularNetworkScan ( le_mrc_ScanInformationListRef_t  scanInformationListRef)

This function must be called to get the next Scan Information object reference in the list of scan Information retrieved with le_mrc_PerformCellularNetworkScan().

Returns
NULL No scan information found.
le_mrc_ScanInformationRef_t The Scan Information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]scanInformationListRefThe list of scan information.

◆ le_mrc_GetNextNeighborCellInfo()

le_mrc_CellInfoRef_t le_mrc_GetNextNeighborCellInfo ( le_mrc_NeighborCellsRef_t  ngbrCellsRef)

This function must be called to get the next Cell Information reference in the list of Neighboring Cells information retrieved with le_mrc_GetNeighborCellsInfo().

Returns
NULL No Cell information object found.
le_mrc_CellInfoRef_t Cell information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]ngbrCellsRefNeighboring Cells reference.

◆ le_mrc_GetNextPciScanInfo()

le_mrc_PciScanInformationRef_t le_mrc_GetNextPciScanInfo ( le_mrc_PciScanInformationListRef_t  scanInformationListRef)

This function must be called to get the next Scan Information object reference in the list of scan Information retrieved with le_mrc_PerformPciNetworkScan().

Returns
NULL No scan information found.
The Scan Information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]scanInformationListRefThe list of scan information.

◆ le_mrc_GetNextPlmnInfo()

le_mrc_PlmnInformationRef_t le_mrc_GetNextPlmnInfo ( le_mrc_PciScanInformationRef_t  plmnRef)

This function must be called to get the next Plmn Information object reference in the list of Plmn on each cell.

Returns
NULL No scan information found.
le_mrc_PlmnInformationRef_t The Plmn Information object reference.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
Parameters
[in]plmnRef[IN] The reference to the cell information.

◆ le_mrc_GetNextPreferredOperator()

le_mrc_PreferredOperatorRef_t le_mrc_GetNextPreferredOperator ( le_mrc_PreferredOperatorListRef_t  preferredOperatorListRef)

This function must be called to get the next Operator object reference in the list of the preferred operators retrieved with le_mrc_GetPreferredOperators().

Returns
  • NULL No operator information found.
  • le_mrc_PreferredOperatorRef The Operator object reference.
Note
If the caller is passing a bad reference into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]preferredOperatorListRefThe list of the preferred operators.

◆ le_mrc_GetPacketSwitchedState()

le_result_t le_mrc_GetPacketSwitchedState ( le_mrc_NetRegState_t *  statePtr)

Get the Packet Switched state.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
multi-app safe
Parameters
[out]statePtrThe current Packet switched state.

◆ le_mrc_GetPciScanCellId()

uint16_t le_mrc_GetPciScanCellId ( le_mrc_PciScanInformationRef_t  pciScanInformationRef)

This function must be called to get the physical cell id referenced by PciScanInformation which is returned by le_mrc_GetFirstPciScanInfo() and le_mrc_GetNextPciScanInfo().

Returns
The Physical Cell Identifier.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
Parameters
[in]pciScanInformationRef[IN] The reference to the cell information.

◆ le_mrc_GetPciScanGlobalCellId()

uint32_t le_mrc_GetPciScanGlobalCellId ( le_mrc_PciScanInformationRef_t  pciScanInformationRef)

This function must be called to get the global cell id referenced by PciScanInformation which is returned by le_mrc_GetFirstPciScanInfo() and le_mrc_GetNextPciScanInfo().

Returns
The Global Cell Identifier.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
Parameters
[in]pciScanInformationRef[IN] The reference to the cell information.

◆ le_mrc_GetPciScanMccMnc()

le_result_t le_mrc_GetPciScanMccMnc ( le_mrc_PlmnInformationRef_t  plmnRef,
char *  mccPtr,
size_t  mccPtrSize,
char *  mncPtr,
size_t  mncPtrSize 
)

This function must be called to get the Mcc/Mnc of each PLMN referenced in the list of Plmn Information retrieved with le_mrc_GetFirstPlmnInfo() and le_mrc_GetNextPlmnInfo().

Returns
  • LE_OK on success
  • LE_OVERFLOW if the MCC or MNC would not fit in buffer
  • LE_FAULT for all other errors
Parameters
[in]plmnRef[IN] The reference to the cell information.
[out]mccPtrMobile Country Code
[in]mccPtrSize
[out]mncPtrMobile Network Code
[in]mncPtrSize

◆ le_mrc_GetPhysicalNeighborLteCellId()

uint16_t le_mrc_GetPhysicalNeighborLteCellId ( le_mrc_CellInfoRef_t  ngbrCellInfoRef)

Get the neighbor physical cell Id. The physical cell Id is in the range from 0 to 503.

Returns
The physical serving cell Id. UINT16_MAX value is returned if the value is not available.
Parameters
[in]ngbrCellInfoRefThe cell information reference

◆ le_mrc_GetPhysicalServingLteCellId()

uint16_t le_mrc_GetPhysicalServingLteCellId ( void  )

Get the physical serving cell Id. The physical cell Id is in the range from 0 to 503.

Returns
The physical serving cell Id. UINT16_MAX value is returned if the value is not available.

◆ le_mrc_GetPlatformSpecificRegistrationErrorCode()

int32_t le_mrc_GetPlatformSpecificRegistrationErrorCode ( void  )

Get the platform specific network registration error code.

Refer to Platform specific error codes for platform specific registration error code description.

Returns
the platform specific registration error code

◆ le_mrc_GetPreferredOperatorDetails()

le_result_t le_mrc_GetPreferredOperatorDetails ( le_mrc_PreferredOperatorRef_t  preferredOperatorRef,
char *  mccPtr,
size_t  mccPtrSize,
char *  mncPtr,
size_t  mncPtrSize,
le_mrc_RatBitMask_t *  ratMaskPtr 
)

This function must be called to get the Operator information details.

Returns
  • LE_OK on success
  • LE_OVERFLOW if the MCC or MNC would not fit in buffer
  • LE_FAULT for all other errors
Note
multi-app safe
Parameters
[in]preferredOperatorRefOperator object reference.
[out]mccPtrMobile Country Code.
[in]mccPtrSize
[out]mncPtrMobile Network Code.
[in]mncPtrSize
[out]ratMaskPtrBit mask for the RAT preferences.

◆ le_mrc_GetPreferredOperatorsList()

le_mrc_PreferredOperatorListRef_t le_mrc_GetPreferredOperatorsList ( void  )

This function must be called to retrieve a list of the preferred operators.

Returns
  • Reference to the List object.
  • Null pointer if there is no preferences list.
Note
multi-app safe

◆ le_mrc_GetRadioAccessTechInUse()

le_result_t le_mrc_GetRadioAccessTechInUse ( le_mrc_Rat_t *  ratPtr)

This function must be called to get the current Radio Access Technology in use.

Returns
LE_OK Function succeeded.
LE_BAD_PARAMETER Invalid parameter.
LE_FAULT Function failed to get the Radio Access Technology.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
The API returns the RAT only if the device is registered on the network. le_mrc_GetNetRegState() function can be called first to obtain the network registration state.
multi-app safe
Parameters
[out]ratPtrThe Radio Access Technology.

◆ le_mrc_GetRadioPower()

le_result_t le_mrc_GetRadioPower ( le_onoff_t powerPtr)

Must be called to get the Radio Module power state.

Returns
LE_FAULT The function failed to get the Radio Module power state.
LE_BAD_PARAMETER if powerPtr is NULL.
LE_OK The function succeed.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[out]powerPtrPower state.

◆ le_mrc_GetRatOfSignalMetrics()

le_mrc_Rat_t le_mrc_GetRatOfSignalMetrics ( le_mrc_MetricsRef_t  MetricsRef)

This function returns the Radio Access Technology of the signal metrics.

Returns
The Radio Access Technology of the signal measure.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]MetricsRefSignal metrics reference.

◆ le_mrc_GetRatPreferences()

le_result_t le_mrc_GetRatPreferences ( le_mrc_RatBitMask_t *  ratMaskPtrPtr)

Get the Radio Access Technology preferences

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
multi-app safe
Parameters
[out]ratMaskPtrPtrBit mask for the Radio Access Technology preferences.

◆ le_mrc_GetRegisterMode()

le_result_t le_mrc_GetRegisterMode ( bool *  isManualPtrPtr,
char *  mccPtr,
size_t  mccPtrSize,
char *  mncPtr,
size_t  mncPtrSize 
)

Get the selected Selection Register mode.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
multi-app safe
Parameters
[out]isManualPtrPtrtrue if the scan mode is manual, false if the scan mode is automatic.
[out]mccPtrMobile Country Code
[in]mccPtrSize
[out]mncPtrMobile Network Code
[in]mncPtrSize

◆ le_mrc_GetSarBackoffState()

le_result_t le_mrc_GetSarBackoffState ( uint8_t *  statePtr)

Get the SAR backoff state

Warning
The SAR backoff feature might be unsupported by some platforms. Please refer to the platform documentation Modem Control platform constraints.
Returns
  • LE_OK The function succeeded.
  • LE_FAULT The function failed.
  • LE_UNSUPPORTED The feature is not supported.
Parameters
[out]statePtrCurrent state. By default, SAR is disabled (state = 0). Refer to platformConstraitsMdc for the number of maximum states.

◆ le_mrc_GetServingCellEarfcn()

uint32_t le_mrc_GetServingCellEarfcn ( void  )

Get the serving cell radio frequency channel number. The EARFCN is in the range from 0 to 262143.

Returns
The serving cell frequency channel number. UINT32_MAX value is returned if the value is not available.

◆ le_mrc_GetServingCellGsmBsic()

le_result_t le_mrc_GetServingCellGsmBsic ( uint8_t *  BSICPtr)

Get the Base Station Identity Code (BSIC) for the serving cell on GSM network.

Returns
LE_OK The function succeeded.
LE_BAD_PARAMETER Bad parameter passed to the function
LE_FAULT The function failed.
LE_UNAVAILABLE The BSIC is not available. The BSIC value is set to UINT8_MAX.
Parameters
[out]BSICPtrThe BSIC value

◆ le_mrc_GetServingCellId()

uint32_t le_mrc_GetServingCellId ( void  )

This function must be called to get the serving Cell Identifier.

Returns
The Cell Identifier. UINT32_MAX value is returned if the value is not available.
Note
When the module is in UMTS network, the API returns the serving UTRAN Cell Identity (UC-Id) which is used to identify the cell uniquely. It is composed of the Controlling Radio Network Controller Identifier (CRNC-Id, 12 bits) and the Cell Identifier (C-Id, 16 bits). (3GPP 25.401, section 6.1.5) The Cell Identifier is coded in the lower 2 bytes of the 4 bytes UC-Id and the CRNC-Id is coded in the upper 2 bytes. Example: the API returns 7807609 -> 0x772279 (CRNC-Id = 0x77 , cell ID = 0x2279)
multi-app safe

◆ le_mrc_GetServingCellLocAreaCode()

uint32_t le_mrc_GetServingCellLocAreaCode ( void  )

This function must be called to get the Location Area Code of the serving cell.

Returns
The Location Area Code. UINT32_MAX value is returned if the value is not available.
Note
multi-app safe

◆ le_mrc_GetServingCellLteTracAreaCode()

uint16_t le_mrc_GetServingCellLteTracAreaCode ( void  )

This function must be called to get the Tracking Area Code of the serving cell (LTE only).

Returns
The Tracking Area Code. UINT16_MAX value is returned if the value is not available.
Note
multi-app safe

◆ le_mrc_GetServingCellTimingAdvance()

uint32_t le_mrc_GetServingCellTimingAdvance ( void  )

Get the serving cell timing advance index value. Timing advance index value is in the range from 0 to 1280.

Returns
The serving cell timing advance index value. UINT32_MAX value is returned if the value is not available.

◆ le_mrc_GetSignalQual()

le_result_t le_mrc_GetSignalQual ( uint32_t *  qualityPtr)

Get the signal quality.

Returns
LE_FAULT The function failed to get the Signal Quality information.
LE_BAD_PARAMETER A bad parameter was passed.
LE_OK The function succeeded.
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[out]qualityPtr[OUT] Received signal strength quality (0 = no signal strength, 5 = very good signal strength).

◆ le_mrc_GetTdScdmaBandCapabilities()

le_result_t le_mrc_GetTdScdmaBandCapabilities ( le_mrc_TdScdmaBandBitMask_t *  bandMaskPtrPtr)

Get the Bit mask for TD-SCDMA Band capabilities.

Returns
  • LE_OK on success
  • LE_FAULT on failure
  • LE_UNSUPPORTED Unable to get the TD-SCDMA Band Capabilities on this platform
Note
multi-app safe
Parameters
[out]bandMaskPtrPtrBit mask for TD-SCDMA Band capabilities.

◆ le_mrc_GetTdScdmaBandPreferences()

le_result_t le_mrc_GetTdScdmaBandPreferences ( le_mrc_TdScdmaBandBitMask_t *  bandMaskPtrPtr)

Get the Bit mask for TD-SCDMA Band preferences.

Returns
  • LE_OK Function succeeded.
  • LE_FAULT Function failed.
  • LE_UNSUPPORTED The platform doesn't support getting TD-SCDMA Band preferences.
Note
multi-app safe
Parameters
[out]bandMaskPtrPtrBit mask for TD-SCDMA Band preferences.

◆ le_mrc_GetUmtsSignalMetrics()

le_result_t le_mrc_GetUmtsSignalMetrics ( le_mrc_MetricsRef_t  MetricsRef,
int32_t *  ssPtr,
uint32_t *  blerPtr,
int32_t *  ecioPtr,
int32_t *  rscpPtr,
int32_t *  sinrPtr 
)

This function returns the signal metrics measured on UMTS or TD-SCDMA networks.

Returns
  • LE_OK on success
  • LE_FAULT on failure
Note
If the caller is passing a bad pointer into this function, it's a fatal error, the function won't return.
multi-app safe
Parameters
[in]MetricsRefSignal metrics reference.
[out]ssPtrSignal strength in dBm
[out]blerPtrBlock error rate
[out]ecioPtrEc/Io value in dB with 1 decimal place (-15 = -1.5 dB) (Negative value)
[out]rscpPtrMeasured RSCP in dBm (negative value, value INT32_MAX means that RSCP is not available)
[out]sinrPtrMeasured SINR in dB (only applicable for TD-SCDMA network, value INT32_MAX means that the SINR is not available)

◆ le_mrc_IsCellularNetworkAvailable()

bool le_mrc_IsCellularNetworkAvailable ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is available.

Returns
true The network is available
false The network isn't available
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]scanInformationRefScan information reference

◆ le_mrc_IsCellularNetworkForbidden()

bool le_mrc_IsCellularNetworkForbidden ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is forbidden by the operator.

Returns
true The network is forbidden
false The network is allowed
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]scanInformationRefScan information reference

◆ le_mrc_IsCellularNetworkHome()

bool le_mrc_IsCellularNetworkHome ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is currently in home mode.

Returns
true The network is home
false The network is roaming
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]scanInformationRefScan information reference

◆ le_mrc_IsCellularNetworkInUse()

bool le_mrc_IsCellularNetworkInUse ( le_mrc_ScanInformationRef_t  scanInformationRef)

This function must be called to check if a cellular network is currently in use.

Returns
true The network is in use
false The network isn't in use
Note
On failure, the process exits, so you don't have to worry about checking the returned reference for validity.
multi-app safe
Parameters
[in]scanInformationRefScan information reference

◆ le_mrc_MeasureSignalMetrics()

le_mrc_MetricsRef_t le_mrc_MeasureSignalMetrics ( void  )

This function must be called to measure the signal metrics. It creates and returns a reference to the signal metrics.

Returns
A reference to the signal metrics.
NULL if no signal metrics are available.
Note
multi-app safe

◆ le_mrc_PerformCellularNetworkScan()

le_mrc_ScanInformationListRef_t le_mrc_PerformCellularNetworkScan ( le_mrc_RatBitMask_t  ratMask)

This function must be called to perform a cellular network scan.

Returns
Reference to the List object. Null pointer if the scan failed.
Note
multi-app safe
Parameters
[in]ratMaskRadio Access Technology mask

◆ le_mrc_PerformCellularNetworkScanAsync()

void le_mrc_PerformCellularNetworkScanAsync ( le_mrc_RatBitMask_t  ratMask,
le_mrc_CellularNetworkScanHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

This function must be called to perform a cellular network scan asynchronously. This function is not blocking, the response will be returned with a handler function.

Note
multi-app safe
Parameters
[in]ratMaskRadio Access Technology mask
[in]handlerPtrhandler for sending result.
[in]contextPtr

◆ le_mrc_PerformPciNetworkScan()

le_mrc_PciScanInformationListRef_t le_mrc_PerformPciNetworkScan ( le_mrc_RatBitMask_t  ratMask)

This function must be called to perform a PCI network scan.

Returns
Reference to the List object. Null pointer if the scan failed.
Warning
PCI scan is platform dependent. Please refer to Modem Control platform constraints for further details.
Note
On devices with the watchdog service enabled, the timeout is 4 mins. On those without, the timeout is 5 mins.
multi-app safe
Parameters
[in]ratMaskRadio Access Technology mask

◆ le_mrc_PerformPciNetworkScanAsync()

void le_mrc_PerformPciNetworkScanAsync ( le_mrc_RatBitMask_t  ratMask,
le_mrc_PciNetworkScanHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

This function must be called to perform a PCI network scan asynchronously. This function is not blocking, the response will be returned with a handler function.

Warning
PCI scan is platform dependent. Please refer to Modem Control platform constraints for further details.
Note
multi-app safe
Parameters
[in]ratMaskRadio Access Technology mask
[in]handlerPtrhandler for sending result.
[in]contextPtr

◆ le_mrc_RemoveJammingDetectionEventHandler()

void le_mrc_RemoveJammingDetectionEventHandler ( le_mrc_JammingDetectionEventHandlerRef_t  handlerRef)

Remove handler function for EVENT 'le_mrc_JammingDetectionEvent'

Parameters
[in]handlerRef

◆ le_mrc_RemoveNetRegRejectHandler()

void le_mrc_RemoveNetRegRejectHandler ( le_mrc_NetRegRejectHandlerRef_t  handlerRef)

Remove handler function for EVENT 'le_mrc_NetRegReject'

Parameters
[in]handlerRef

◆ le_mrc_RemoveNetRegStateEventHandler()

void le_mrc_RemoveNetRegStateEventHandler ( le_mrc_NetRegStateEventHandlerRef_t  handlerRef)

Remove handler function for EVENT 'le_mrc_NetRegStateEvent'

Parameters
[in]handlerRef

◆ le_mrc_RemoveNetworkRejectHandler()

void le_mrc_RemoveNetworkRejectHandler ( le_mrc_NetworkRejectHandlerRef_t  handlerRef)

Remove handler function for EVENT 'le_mrc_NetworkReject'

Parameters
[in]handlerRef

◆ le_mrc_RemovePacketSwitchedChangeHandler()

void le_mrc_RemovePacketSwitchedChangeHandler ( le_mrc_PacketSwitchedChangeHandlerRef_t  handlerRef)

Remove handler function for EVENT 'le_mrc_PacketSwitchedChange'

Parameters
[in]handlerRef

◆ le_mrc_RemovePreferredOperator()

le_result_t le_mrc_RemovePreferredOperator ( const char *LE_NONNULL  mcc,
const char *LE_NONNULL  mnc 
)

Remove a preferred operator by specifying the MCC/MNC.

Returns
  • LE_UNSUPPORTED List of User Preferred operators not available.
  • LE_NOT_FOUND Operator not found in the User Preferred operators list.
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
If strings are not set, too long (bigger than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN digits), or too short (less than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN-1 digits) it's a fatal error, the function won't return.
NOT multi-app safe
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code

◆ le_mrc_RemoveRatChangeHandler()

void le_mrc_RemoveRatChangeHandler ( le_mrc_RatChangeHandlerRef_t  handlerRef)

Remove handler function for EVENT 'le_mrc_RatChange'

Parameters
[in]handlerRef

◆ le_mrc_RemoveSignalStrengthChangeHandler()

void le_mrc_RemoveSignalStrengthChangeHandler ( le_mrc_SignalStrengthChangeHandlerRef_t  handlerRef)

Remove handler function for EVENT 'le_mrc_SignalStrengthChange'

Parameters
[in]handlerRef

◆ le_mrc_SetAutomaticRegisterMode()

le_result_t le_mrc_SetAutomaticRegisterMode ( void  )

Enable the automatic Selection Register mode.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
NOT multi-app safe

◆ le_mrc_SetBandPreferences()

le_result_t le_mrc_SetBandPreferences ( le_mrc_BandBitMask_t  bandMask)

Set the 2G/3G Band preferences by using a bit mask.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
NOT multi-app safe
Parameters
[in]bandMaskBit mask for 2G/3G Band preferences.

◆ le_mrc_SetLteBandPreferences()

le_result_t le_mrc_SetLteBandPreferences ( le_mrc_LteBandBitMask_t  bandMask)

Set the LTE Band preferences by using a bit mask.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
  • LE_UNSUPPORTED The platform doesn't support setting LTE Band preferences.
Note
NOT multi-app safe
Parameters
[in]bandMaskBit mask for LTE Band preferences.

◆ le_mrc_SetManualRegisterMode()

le_result_t le_mrc_SetManualRegisterMode ( const char *LE_NONNULL  mcc,
const char *LE_NONNULL  mnc 
)

Set the manual Selection Register mode with the MCC/MNC parameters.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
Note
If strings are not set, too long (bigger than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN digits), or too short (less than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN-1 digits) it's a fatal error, the function won't return.
NOT multi-app safe
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code

◆ le_mrc_SetManualRegisterModeAsync()

void le_mrc_SetManualRegisterModeAsync ( const char *LE_NONNULL  mcc,
const char *LE_NONNULL  mnc,
le_mrc_ManualSelectionHandlerFunc_t  handlerPtr,
void *  contextPtr 
)

Set the manual selection register mode asynchronously. This function is not blocking, the response will be returned with a handler function.

Note
If strings are not set, too long (bigger than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN digits), or too short (less than LE_MRC_MCC_LEN/LE_MRC_MNC_LEN-1 digits) it's a fatal error, the function won't return.
NOT multi-app safe
Parameters
[in]mccMobile Country Code
[in]mncMobile Network Code
[in]handlerPtrhandler for sending result
[in]contextPtr

◆ le_mrc_SetRadioPower()

le_result_t le_mrc_SetRadioPower ( le_onoff_t  power)

Set the power of the Radio Module.

Returns
LE_BAD_PARAMETER Bad power mode specified.
LE_FAULT Function failed.
LE_OK Function succeed.
Note
NOT multi-app safe
Parameters
[in]powerThe power state.

◆ le_mrc_SetRatPreferences()

le_result_t le_mrc_SetRatPreferences ( le_mrc_RatBitMask_t  ratMask)

Set the Radio Access Technology preferences by using a bit mask.

Returns
  • LE_FAULT Function failed.
  • LE_OK Function succeeded.
  • LE_UNSUPPORTED Not supported by platform.
Note
NOT multi-app safe
Parameters
[in]ratMaskBit mask for the Radio Access Technology preferences.

◆ le_mrc_SetSarBackoffState()

le_result_t le_mrc_SetSarBackoffState ( uint8_t  state)

Set the SAR backoff state

Warning
The SAR backoff feature might be unsupported by some platforms. Please refer to the platform documentation Modem Control platform constraints.
Returns
  • LE_OK The function succeeded.
  • LE_FAULT The function failed.
  • LE_UNSUPPORTED The feature is not supported.
  • LE_OUT_OF_RANGE The provided index is out of range.
Parameters
[in]stateNew state to enable. By default, SAR is disabled (state = 0). Refer to platformConstraitsMdc for the number of maximum states.

◆ le_mrc_SetServerDisconnectHandler()

LE_FULL_API void le_mrc_SetServerDisconnectHandler ( le_mrc_DisconnectHandler_t  disconnectHandler,
void *  contextPtr 
)

Set handler called when server disconnection is detected.

When a server connection is lost, call this handler then exit with LE_FATAL. If a program wants to continue without exiting, it should call longjmp() from inside the handler.

◆ le_mrc_SetSignalStrengthIndDelta()

le_result_t le_mrc_SetSignalStrengthIndDelta ( le_mrc_Rat_t  rat,
uint16_t  delta 
)

This function sets a signal strength indication delta for a specific RAT.

Returns
  • LE_OK Function succeeded.
  • LE_BAD_PARAMETER Bad parameters.
  • LE_FAULT Function failed.
Note
The signal delta is set in units of 0.1 dBm. For example, to set a delta of 10.6 dBm, the delta value must be set to 106.
Warning
The signal delta resolution is platform dependent. Please refer to Modem Control platform constraints section for full details.
Parameters
[in]ratRadio Access Technology
[in]deltaSignal delta in units of 0.1 dBm

◆ le_mrc_SetSignalStrengthIndThresholds()

le_result_t le_mrc_SetSignalStrengthIndThresholds ( le_mrc_Rat_t  rat,
int32_t  lowerRangeThreshold,
int32_t  upperRangeThreshold 
)

This function sets signal strength indication thresholds for a specific RAT.

Returns
  • LE_OK Function succeeded.
  • LE_BAD_PARAMETER Bad parameters
  • LE_FAULT Function failed.
Note
NOT multi-app safe
Parameters
[in]ratRadio Access Technology
[in]lowerRangeThresholdLower-range Signal strength threshold in dBm
[in]upperRangeThresholdUpper-range Signal strength threshold in dBm

◆ le_mrc_SetTdScdmaBandPreferences()

le_result_t le_mrc_SetTdScdmaBandPreferences ( le_mrc_TdScdmaBandBitMask_t  bandMask)

Set the TD-SCDMA Band preferences by using a bit mask.

Returns
  • LE_OK Function succeeded.
  • LE_FAULT Function failed.
  • LE_UNSUPPORTED The platform doesn't support setting TD-SCDMA Band preferences.
Note
NOT multi-app safe
Parameters
[in]bandMaskBit mask for TD-SCDMA Band preferences.

◆ le_mrc_StartJammingDetection()

le_result_t le_mrc_StartJammingDetection ( void  )

Start the jamming detection monitoring.

Warning
The jamming detection feature might be limited by the platform. Please refer to the platform documentation Modem Control platform constraints.
Returns
  • LE_OK The function succeeded.
  • LE_FAULT The function failed.
  • LE_DUPLICATE The feature is already activated and an activation is requested.
  • LE_UNSUPPORTED The feature is not supported.

◆ le_mrc_StopJammingDetection()

le_result_t le_mrc_StopJammingDetection ( void  )

Stop the jamming detection monitoring.

Returns
  • LE_OK The function succeeded.
  • LE_FAULT The function failed or the application did not start the jamming detection.
  • LE_UNSUPPORTED The feature is not supported.

◆ le_mrc_TryConnectService()

le_result_t le_mrc_TryConnectService ( void  )

Try to connect the current client thread to the service providing this API. Return with an error if the service is not available.

For each thread that wants to use this API, either ConnectService or TryConnectService must be called before any other functions in this API. Normally, ConnectService is automatically called for the main thread, but not for any other thread. For details, see Client-specific Functions.

This function is created automatically.

Returns
  • LE_OK if the client connected successfully to the service.
  • LE_UNAVAILABLE if the server is not currently offering the service to which the client is bound.
  • LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).
  • LE_COMM_ERROR if the Service Directory cannot be reached.