Mistake on this page?
Report an issue in GitHub or email us
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
AT_CellularNetwork Class Referenceabstract

Class AT_CellularNetwork. More...

#include <AT_CellularNetwork.h>

Inheritance diagram for AT_CellularNetwork:
CellularNetwork AT_CellularBase

Public Types

Public Member Functions

virtual nsapi_error_t set_registration (const char *plmn=0)
 Request registering to network. More...
 
virtual nsapi_error_t get_network_registering_mode (NWRegisteringMode &mode)
 Get the current network registering mode. More...
 
virtual nsapi_error_t set_attach ()
 Request attach to network. More...
 
virtual nsapi_error_t get_attach (AttachStatus &status)
 Request attach status from network. More...
 
virtual nsapi_error_t detach ()
 Request detach and deregister from a network. More...
 
virtual void attach (Callback< void(nsapi_event_t, intptr_t)> status_cb)
 Register callback for status reporting. More...
 
virtual nsapi_error_t scan_plmn (operList_t &operators, int &ops_count)
 Scans for operators module can reach. More...
 
virtual nsapi_error_t set_ciot_optimization_config (CIoT_Supported_Opt supported_opt, CIoT_Preferred_UE_Opt preferred_opt, Callback< void(CIoT_Supported_Opt)> network_support_cb)
 Set CIoT optimizations. More...
 
virtual nsapi_error_t get_ciot_ue_optimization_config (CIoT_Supported_Opt &supported_opt, CIoT_Preferred_UE_Opt &preferred_opt)
 Get UE CIoT optimizations. More...
 
virtual nsapi_error_t get_ciot_network_optimization_config (CIoT_Supported_Opt &supported_network_opt)
 Get Network CIoT optimizations. More...
 
virtual int get_3gpp_error ()
 Get the last 3GPP error code. More...
 
virtual nsapi_error_t get_operator_params (int &format, operator_t &operator_params)
 Get the operator parameters. More...
 
virtual nsapi_error_t set_registration_urc (RegistrationType type, bool on)
 Activate/deactivate listening of network events for the given RegistrationType. More...
 
virtual nsapi_error_t get_operator_names (operator_names_list &op_names)
 Read operator names. More...
 
virtual bool is_active_context (int *number_of_active_contexts=NULL, int cid=-1)
 Check if there is any PDP context active. More...
 
virtual nsapi_error_t get_registration_params (registration_params_t &reg_params)
 Gets the latest received registration parameters from the network: type, status, access technology, cell_id, lac, active_time, periodic_tau. More...
 
virtual nsapi_error_t get_registration_params (RegistrationType type, registration_params_t &reg_params)
 Gets the current network registration parameters from the network with type: status, access technology, cell_id, lac, active_time, periodic_tau. More...
 
virtual nsapi_error_t set_packet_domain_event_reporting (bool on)
 Sets the packet domain network reporting. More...
 
virtual nsapi_error_t set_access_technology (RadioAccessTechnology rat)=0
 Sets radio access technology. More...
 
ATHandlerget_at_handler ()
 Getter for at handler. More...
 
device_err_t get_device_error () const
 Gets the device error that happened when using AT commands/responses. More...
 

Static Public Member Functions

static void set_cellular_properties (const intptr_t *property_array)
 Cellular module need to define an array of cellular properties which defines module supported property values. More...
 
static intptr_t get_property (CellularProperty key)
 Get value for the given key. More...
 

Protected Member Functions

virtual nsapi_error_t set_access_technology_impl (RadioAccessTechnology op_rat)
 Sets access technology to be scanned. More...
 
virtual void get_context_state_command ()
 Sends a command to query the active state of the PDP contexts. More...
 
nsapi_error_t clear ()
 Clear the network and contexts to a known default state. More...
 

Detailed Description

Class AT_CellularNetwork.

Class for attaching to a network and getting information from it.

Definition at line 37 of file AT_CellularNetwork.h.

Member Enumeration Documentation

enum EDRXAccessTechnology
inherited

Set discontinuous reception time on cellular device.

Remarks
See 3GPP TS 27.007 eDRX for details.
Parameters
modedisable or enable the use of eDRX
act_typetype of access technology
edrx_valuerequested edxr value. Extended DRX parameters information element.
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Definition at line 379 of file CellularNetwork.h.

enum NWRegisteringMode
inherited

Network registering mode.

Definition at line 156 of file CellularNetwork.h.

enum SignalQuality
inherited

Get signal quality parameters.

Parameters
rssisignal strength level as defined in 3GPP TS 27.007, range -113..-51 dBm or SignalQualityUnknown
berbit error rate as RXQUAL as defined in 3GPP TS 45.008, range 0..7 or SignalQualityUnknown
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on other failures

Definition at line 297 of file CellularNetwork.h.

Member Function Documentation

virtual void attach ( Callback< void(nsapi_event_t, intptr_t)>  status_cb)
virtual

Register callback for status reporting.

The specified status callback function will be called on status changes on the network. The parameters on the callback are the event type and event-type dependent reason parameter.

Remarks
Application should not call attach if using CellularContext class. Call instead CellularContext::attach as CellularDevice is dependent of this attach if CellularContext/CellularDevice is used to get device/sim ready, registered, attached, connected.
Parameters
status_cbThe callback for status changes

Implements CellularNetwork.

nsapi_error_t clear ( )
protected

Clear the network and contexts to a known default state.

Returns
NSAPI_ERROR_OK on success
virtual nsapi_error_t detach ( )
virtual

Request detach and deregister from a network.

Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual int get_3gpp_error ( )
virtual

Get the last 3GPP error code.

Returns
see 3GPP TS 27.007 error codes

Implements CellularNetwork.

ATHandler& get_at_handler ( )
inherited

Getter for at handler.

Common method for all AT-classes.

Returns
reference to ATHandler
virtual nsapi_error_t get_attach ( AttachStatus &  status)
virtual

Request attach status from network.

Parameters
statussee AttachStatus values
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual nsapi_error_t get_ciot_network_optimization_config ( CIoT_Supported_Opt &  supported_network_opt)
virtual

Get Network CIoT optimizations.

Parameters
supported_network_optSupported CIoT EPS optimizations. CIOT_OPT_MAX will be returned, if the support is not known
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual nsapi_error_t get_ciot_ue_optimization_config ( CIoT_Supported_Opt &  supported_opt,
CIoT_Preferred_UE_Opt &  preferred_opt 
)
virtual

Get UE CIoT optimizations.

Parameters
supported_optSupported CIoT EPS optimizations.
preferred_optPreferred CIoT EPS optimizations.
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual void get_context_state_command ( )
protectedvirtual

Sends a command to query the active state of the PDP contexts.

Can be overridden by the target class.

device_err_t get_device_error ( ) const
inherited

Gets the device error that happened when using AT commands/responses.

This is at error returned by the device. Returned CME/CMS errors can be found from 3gpp documents 27007 and 27005.

Returns
at error (CME/CMS) while communicating with the device
virtual nsapi_error_t get_network_registering_mode ( NWRegisteringMode mode)
virtual

Get the current network registering mode.

Parameters
modeon successful return contains the current network registering mode
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual nsapi_error_t get_operator_names ( operator_names_list op_names)
virtual

Read operator names.

Parameters
op_nameson successful return contains linked list of operator names.
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_NO_MEMORY on memory failure NSAPI_ERROR_DEVICE_ERROR on other failures

Implements CellularNetwork.

virtual nsapi_error_t get_operator_params ( int &  format,
operator_t operator_params 
)
virtual

Get the operator parameters.

Parameters
formatformat of the operator field
operator_paramsapplicable operator param fields filled
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on case of other failures

Implements CellularNetwork.

static intptr_t get_property ( CellularProperty  key)
staticinherited

Get value for the given key.

Parameters
keykey for value to be fetched
Returns
property value for the given key. Value type is defined in enum CellularProperty
virtual nsapi_error_t get_registration_params ( registration_params_t reg_params)
virtual

Gets the latest received registration parameters from the network: type, status, access technology, cell_id, lac, active_time, periodic_tau.

Parameters
reg_paramssee registration_params_t
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual nsapi_error_t get_registration_params ( RegistrationType  type,
registration_params_t reg_params 
)
virtual

Gets the current network registration parameters from the network with type: status, access technology, cell_id, lac, active_time, periodic_tau.

Parameters
typesee RegistrationType values
reg_paramssee registration_params_t
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_UNSUPPORTED if the modem does not support RegistrationType NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual bool is_active_context ( int *  number_of_active_contexts = NULL,
int  cid = -1 
)
virtual

Check if there is any PDP context active.

If cid is given, then check is done only for that cid.

Parameters
number_of_active_contextsIf given then in return contains the number of all active contexts
cidIf given then check if the context with this cid is active
Returns
true if any (or the given cid) context is active, false otherwise or in case of error

Implements CellularNetwork.

virtual nsapi_error_t scan_plmn ( operList_t operators,
int &  ops_count 
)
virtual

Scans for operators module can reach.

Parameters
operatorsContainer of reachable operators and their access technologies
ops_countNumber of found operators
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_NO_MEMORY on memory failure NSAPI_ERROR_DEVICE_ERROR on other failures

Implements CellularNetwork.

virtual nsapi_error_t set_access_technology ( RadioAccessTechnology  rat)
pure virtualinherited

Sets radio access technology.

Parameters
ratRadio access technology
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_UNSUPPORTED if the given rat is RAT_UNKNOWN or inheriting target class has not implemented method set_access_technology_impl(...) OR return value of the inheriting target class set_access_technology_impl(...)
virtual nsapi_error_t set_access_technology_impl ( RadioAccessTechnology  op_rat)
protectedvirtual

Sets access technology to be scanned.

Modem specific implementation.

Parameters
op_ratAccess technology
Returns
zero on success
virtual nsapi_error_t set_attach ( )
virtual

Request attach to network.

Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

static void set_cellular_properties ( const intptr_t *  property_array)
staticinherited

Cellular module need to define an array of cellular properties which defines module supported property values.

Parameters
property_arrayarray of module properties
virtual nsapi_error_t set_ciot_optimization_config ( CIoT_Supported_Opt  supported_opt,
CIoT_Preferred_UE_Opt  preferred_opt,
Callback< void(CIoT_Supported_Opt)>  network_support_cb 
)
virtual

Set CIoT optimizations.

Parameters
supported_optSupported CIoT EPS optimizations (the HW support can be checked with get_ciot_ue_optimization_config).
preferred_optPreferred CIoT EPS optimizations.
network_support_cbThis callback will be called when CIoT network optimization support is known
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual nsapi_error_t set_packet_domain_event_reporting ( bool  on)
virtual

Sets the packet domain network reporting.

Useful for getting events when detached from the network. When detach event arrives it is propagated as NSAPI_STATUS_DISCONNECTED to callback set with attach(...).

Parameters
ontrue for enabling event reporting, false for disabling
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_UNSUPPORTED is command is not supported by the modem NSAPI_ERROR_DEVICE_ERROR on failure

Reimplemented from CellularNetwork.

virtual nsapi_error_t set_registration ( const char *  plmn = 0)
virtual

Request registering to network.

Parameters
plmnformat is in numeric format or 0 for automatic network registration
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

virtual nsapi_error_t set_registration_urc ( RegistrationType  type,
bool  on 
)
virtual

Activate/deactivate listening of network events for the given RegistrationType.

This should be called after network class is created and ready to receive AT commands. After successful call network class starts to get information about network changes like registration statue, access technology, cell id...

Parameters
typeRegistrationType to set urc on/off
onControls are urc active or not
Returns
NSAPI_ERROR_OK on success NSAPI_ERROR_UNSUPPORTED if the modem does not support RegistrationType NSAPI_ERROR_DEVICE_ERROR on failure

Implements CellularNetwork.

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.