LTE specific functions

These are functions that can be used only with LTE supported hardware and are considered as UPI candidates.

Submodules

Network fucntions

wishful_upis.lte.net.LTE_EPC_MCC = Attribute(key=LTE_EPC_MCC, type=<type 'int'>, isReadonly=False)

MME Mobile Country Code

wishful_upis.lte.net.LTE_EPC_MNC = Attribute(key=LTE_EPC_MNC, type=<type 'int'>, isReadonly=False)

MME Mobile Network Code

wishful_upis.lte.net.LTE_EPC_OP = Attribute(key=LTE_EPC_OP, type=<type 'int'>, isReadonly=False)

Configures global configuration parameters Global OP

wishful_upis.lte.net.LTE_EPC_AMF = Attribute(key=LTE_EPC_AMF, type=<type 'int'>, isReadonly=False)

Configures global configuration parameters Global AMF

wishful_upis.lte.net.LTE_EPC_ENB_ADD = Attribute(key=LTE_EPC_ENB_ADD, type=<type 'int'>, isReadonly=False)

adds a eNB to be served by the EPC (required: IP address)

wishful_upis.lte.net.LTE_EPC_ENB_DEL = Attribute(key=LTE_EPC_ENB_DEL, type=<type 'int'>, isReadonly=False)

deletes an eNB

wishful_upis.lte.net.LTE_EPC_ENB_LIST = Attribute(key=LTE_EPC_ENB_LIST, type=<type 'int'>, isReadonly=False)

get eNB list

wishful_upis.lte.net.LTE_EPC_SUBSCRIBER_ADD = Attribute(key=LTE_EPC_SUBSCRIBER_ADD, type=<type 'int'>, isReadonly=False)

Add a single UE (required input: IMSI, Subscriber Group)

wishful_upis.lte.net.LTE_EPC_SUBSCRIBER_DEL = Attribute(key=LTE_EPC_SUBSCRIBER_DEL, type=<type 'int'>, isReadonly=False)

deletes connection data for a single subscriber

wishful_upis.lte.net.LTE_EPC_SUBSCRIBER_LIST = Attribute(key=LTE_EPC_SUBSCRIBER_LIST, type=<type 'int'>, isReadonly=False)

get UE list

wishful_upis.lte.net.LTE_EPC_SUBSCRIBER_GROUP_ADD = Attribute(key=LTE_EPC_SUBSCRIBER_GROUP_ADD, type=<type 'int'>, isReadonly=False)

Adds a new subscriber profile (required input: Name, APN, , UL/DL AMBR)

wishful_upis.lte.net.LTE_EPC_SUBSCRIBER_GROUP_DEL = Attribute(key=LTE_EPC_SUBSCRIBER_GROUP_DEL, type=<type 'int'>, isReadonly=False)

deletes a subscriber profile

wishful_upis.lte.net.LTE_EPC_SUBSCRIBER_GROUP_LIST = Attribute(key=LTE_EPC_SUBSCRIBER_GROUP_LIST, type=<type 'int'>, isReadonly=False)

get subscriber profile list

wishful_upis.lte.net.LTE_EPC_APN_ADD = Attribute(key=LTE_EPC_APN_ADD, type=<type 'int'>, isReadonly=False)

adds a new APN (required: Name, PGW address, DHCP pool, DNS server, UL/DL AMBR)

wishful_upis.lte.net.LTE_EPC_APN_DEL = Attribute(key=LTE_EPC_MNC, type=<type 'int'>, isReadonly=False)

deletes an APN

wishful_upis.lte.net.LTE_EPC_APN_LIST = Attribute(key=LTE_EPC_APN_LIST, type=<type 'int'>, isReadonly=False)

get APN list

wishful_upis.lte.net.LTE_EPC_RNTI = Attribute(key=LTE_EPC_RNTI, type=<type 'int'>, isReadonly=False)
wishful_upis.lte.net.LTE_EPC_HSS_ADDRESS = Attribute(key=LTE_EPC_HSS_ADDRESS, type=<type 'int'>, isReadonly=False)

HSS address

wishful_upis.lte.net.LTE_ENB_NM = Attribute(key=LTE_ENB_NM, type=<type 'int'>, isReadonly=False)

eNB name

wishful_upis.lte.net.LTE_ENB_ID = Attribute(key=LTE_ENB_ID, type=<type 'int'>, isReadonly=False)

eNB identifier

wishful_upis.lte.net.LTE_ENB_CT = Attribute(key=LTE_ENB_CT, type=<type 'int'>, isReadonly=False)

eNB cell type (macro, pico, femto)

wishful_upis.lte.net.LTE_ENB_PLMN = Attribute(key=LTE_ENB_PLMN, type=<type 'int'>, isReadonly=False)

eNB PLMN Code

wishful_upis.lte.net.LTE_ENB_TAC = Attribute(key=LTE_ENB_TAC, type=<type 'int'>, isReadonly=False)

eNB Tracking Area Code

wishful_upis.lte.net.LTE_ENB_MME = Attribute(key=LTE_ENB_MME, type=<type 'int'>, isReadonly=False)

MME address in the eNB config file

wishful_upis.lte.net.LTE_ENB_PGW = Attribute(key=LTE_ENB_PGW, type=<type 'int'>, isReadonly=False)

PGW address in the eNB config file

wishful_upis.lte.net.LTE_ENB_SGW = Attribute(key=LTE_ENB_SGW, type=<type 'int'>, isReadonly=False)

SGW address in the eNB config file

wishful_upis.lte.net.LTE_ENB_PHY_CELL_ID = Attribute(key=LTE_ENB_PHY_CELL_ID, type=<type 'int'>, isReadonly=False)

Cell identity

wishful_upis.lte.net.LTE_ENB_MCC = Attribute(key=LTE_ENB_MCC, type=<type 'int'>, isReadonly=False)

eNB Mobile Country Code

wishful_upis.lte.net.LTE_ENB_MNC = Attribute(key=LTE_ENB_MNC, type=<type 'int'>, isReadonly=False)

eNB Mobile Network Code

wishful_upis.lte.net.LTE_RCC_FRONTHAUL_IF_NAME_LOCAL = Attribute(key=LTE_RCC_FRONTHAUL_IF_NAME_LOCAL, type=<type 'int'>, isReadonly=False)

Interface of the local fronthaul

wishful_upis.lte.net.LTE_RCC_FRONTHAUL_IP_ADDRESS_LOCAL = Attribute(key=LTE_RCC_FRONTHAUL_IP_ADDRESS_LOCAL, type=<type 'int'>, isReadonly=False)

IP of the local fronthaul

wishful_upis.lte.net.LTE_RCC_FRONTHAUL_PORT_LOCAL = Attribute(key=LTE_RCC_FRONTHAUL_PORT_LOCAL, type=<type 'int'>, isReadonly=False)

port of the local fronthaul

wishful_upis.lte.net.LTE_RCC_FRONTHAUL_IP_ADDRESS_REMOTE = Attribute(key=LTE_RCC_FRONTHAUL_IP_ADDRESS_REMOTE, type=<type 'int'>, isReadonly=False)

IP of the remote fronthaul

wishful_upis.lte.net.LTE_RCC_FRONTHAUL_PORT_REMOTE = Attribute(key=LTE_RCC_FRONTHAUL_PORT_REMOTE, type=<type 'int'>, isReadonly=False)

port of the remote fronthaul

wishful_upis.lte.net.LTE_RRU_FRONTHAUL_IF_NAME_LOCAL = Attribute(key=LTE_RRU_FRONTHAUL_IF_NAME_LOCAL, type=<type 'int'>, isReadonly=False)

Interface of the local fronthaul

wishful_upis.lte.net.LTE_RRU_FRONTHAUL_IP_ADDRESS_LOCAL = Attribute(key=LTE_RRU_FRONTHAUL_IP_ADDRESS_LOCAL, type=<type 'int'>, isReadonly=False)

IP of the local fronthaul

wishful_upis.lte.net.LTE_RRU_FRONTHAUL_PORT_LOCAL = Attribute(key=LTE_RRU_FRONTHAUL_PORT_LOCAL, type=<type 'int'>, isReadonly=False)

port of the local fronthaul

wishful_upis.lte.net.LTE_RRU_FRONTHAUL_IP_ADDRESS_REMOTE = Attribute(key=LTE_RRU_FRONTHAUL_IP_ADDRESS_REMOTE, type=<type 'int'>, isReadonly=False)

IP of the remote fronthaul

wishful_upis.lte.net.LTE_RRU_FRONTHAUL_PORT_REMOTE = Attribute(key=LTE_RRU_FRONTHAUL_PORT_REMOTE, type=<type 'int'>, isReadonly=False)

port of the remote fronthaul

wishful_upis.lte.net.LTE_UE_APN = Attribute(key=LTE_UE_APN, type=<type 'str'>, isReadonly=False)

APN

wishful_upis.lte.net.LTE_UE_PLMN = Attribute(key=LTE_UE_PLMN, type=<type 'int'>, isReadonly=False)

PLMNID

wishful_upis.lte.net.MME_activation()[source]

Once set the MME parameters using the set_parameters(param_key_values_dict), MME_activation is to be used for running the MME

Examples:
>> controller.blocking(False).node(node).net.MME_activation()
Args:
controller: node: physical machine where the MME run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.MME_deactivation()[source]

MME_deactivation is to be used for stopping the MME

Examples:
>> controller.blocking(False).node(node).net.MME_deactivation()
Args:
controller: node: physical machine where the MME run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.HSS_activation()[source]

Once set the HSS parameters using the set_parameters(param_key_values_dict), HSS_activation is to be used for running the HSS

Examples:
>> controller.blocking(False).node(node).net.HSS_activation()
Args:
controller: node: physical machine where the HSS run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.HSS_deactivation()[source]

HSS_deactivation is to be used for stopping the HSS

Examples:
>> controller.blocking(False).node(node).net.HSS_deactivation()
Args:
controller: node: physical machine where the HSS run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.SPGW_activation()[source]

Once set the SPGW parameters using the set_parameters(param_key_values_dict), SPGW_activation is to be used for running the SPGW

Examples:
>> controller.blocking(False).node(node).net.SPGW_activation()
Args:
controller: node: physical machine where the SPGW run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.SPGW_deactivation()[source]

SPGW_deactivation is to be used for stopping the SPGW

Examples:
>> controller.blocking(False).node(node).net.SPGW_deactivation()
Args:
controller: node: physical machine where the SPGW run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.eNB_activation()[source]

Once set the eNB parameters using the set_parameters(param_key_values_dict), eNB_activation is to be used for running the eNB

Examples:
>> controller.blocking(False).node(node).net.eNB_activation()
Args:
controller: node: physical machine where the eNB run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.eNB_deactivation()[source]

eNB_deactivation is to be used for stopping the eNB

Examples:
>> controller.blocking(False).node(node).net.eNB_deactivation()
Args:
controller: node: physical machine where the eNB run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.RRU_activation()[source]

Once set the RRU parameters using the set_parameters(param_key_values_dict), RRU_activation is to be used for running the RRU

Examples:
>> controller.blocking(False).node(node).net.RRU_activation()
Args:
controller: node: physical machine where the RRU run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.RRU_deactivation()[source]

RRU_deactivation is to be used for stopping the RRU

Examples:
>> controller.blocking(False).node(node).net.RRU_deactivation()
Args:
controller: node: physical machine where the RRU run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.RCC_activation()[source]

Once set the RCC parameters using the set_parameters(param_key_values_dict), RCC_activation is to be used for running the RCC

Examples:
>> controller.blocking(False).node(node).net.RCC_activation()
Args:
controller: node: physical machine where the RCC run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.RCC_deactivation()[source]

RCC_deactivation is to be used for stopping the RCC

Examples:
>> controller.blocking(False).node(node).net.RCC_deactivation()
Args:
controller: node: physical machine where the RCC run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.UE_activation()[source]

UE_activation is to be used for running the UE

Examples:
>> controller.blocking(False).node(node).net.UE_activation()
Args:
controller: node: physical machine where the UE run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.UE_deactivation()[source]

UE_deactivation is to be used for stopping the UE

Examples:
>> controller.blocking(False).node(node).net.UE_deactivation()
Args:
controller: node: physical machine where the UE run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.UE_attach()[source]

UE_attach is to be used for attaching the UE to the MME

Examples:
>> controller.blocking(False).node(node).net.UE_attach()
Args:
controller: node: physical machine where the UE run
Returns:
0 = success, 1=fail, +1=error code
wishful_upis.lte.net.UE_detach()[source]

UE_detach is to be used for detaching the UE without stopping it

Examples:
>> controller.blocking(False).node(node).net.UE_detach()
Args:
controller: node: physical machine where the UE run
Returns:
0 = success, 1=fail, +1=error code

Radio fucntions

wishful_upis.lte.radio.LTE_ENB_DL_BW = Attribute(key=LTE_ENB_DL_BW, type=<type 'int'>, isReadonly=False)

eNB Bandwidth DL

wishful_upis.lte.radio.LTE_ENB_UL_BW = Attribute(key=LTE_ENB_UL_BW, type=<type 'int'>, isReadonly=False)

eNB bandwidth UL

wishful_upis.lte.radio.LTE_ENB_DL_FREQ = Attribute(key=LTE_ENB_DL_FREQ, type=<type 'int'>, isReadonly=False)

eNB DL center frequency

wishful_upis.lte.radio.LTE_ENB_UL_FREQ = Attribute(key=LTE_ENB_UL_FREQ, type=<type 'int'>, isReadonly=False)

eNB UL center frequency

wishful_upis.lte.radio.LTE_ENB_FREQ_BAND = Attribute(key=LTE_ENB_FREQ_BAND, type=<type 'int'>, isReadonly=False)

3GPP eNB Frequency band indicator

wishful_upis.lte.radio.LTE_ENB_N_TX_ANT = Attribute(key=LTE_ENB_N_TX_ANT, type=<type 'int'>, isReadonly=False)

eNB Number of TX antennas

wishful_upis.lte.radio.LTE_ENB_N_RX_ANT = Attribute(key=LTE_ENB_N_RX_ANT, type=<type 'int'>, isReadonly=False)

eNB Number of RX antennas

wishful_upis.lte.radio.LTE_ENB_REF_SIG_POWER = Attribute(key=LTE_ENB_REF_SIG_POWER, type=<type 'int'>, isReadonly=False)

eNB Reference signal power

wishful_upis.lte.radio.LTE_ENB_TX_GAIN = Attribute(key=LTE_ENB_TX_GAIN, type=<type 'int'>, isReadonly=False)

eNB TX gain

wishful_upis.lte.radio.LTE_ENB_RX_GAIN = Attribute(key=LTE_ENB_RX_GAIN, type=<type 'int'>, isReadonly=False)

eNB RX gain

wishful_upis.lte.radio.LTE_ENB_DUPLEX_MODE = Attribute(key=LTE_ENB_DUPLEX_MODE, type=<type 'int'>, isReadonly=False)

eNB Duplex Mode (TDD/FDD)

wishful_upis.lte.radio.LTE_ENB_TDD_CONFIGURATION = Attribute(key=LTE_ENB_TDD_CONFIGURATION, type=<type 'int'>, isReadonly=False)

3GPP eNB TDD configuration mode

wishful_upis.lte.radio.LTE_UE_DL_FREQ = Attribute(key=LTE_UE_DL_FREQ, type=<type 'int'>, isReadonly=False)

DL center frequency

wishful_upis.lte.radio.LTE_UE_DL_BW = Attribute(key=LTE_UE_DL_BW, type=<type 'int'>, isReadonly=False)

UL center frequency

wishful_upis.lte.radio.LTE_UE_UL_BW = Attribute(key=LTE_UE_UL_BW, type=<type 'int'>, isReadonly=False)

Bandwidth DL

wishful_upis.lte.radio.LTE_UE_TX_GAIN = Attribute(key=LTE_UE_TX_GAIN, type=<type 'int'>, isReadonly=False)

Bandwidth UL

wishful_upis.lte.radio.LTE_UE_RX_GAIN = Attribute(key=LTE_UE_RX_GAIN, type=<type 'int'>, isReadonly=False)

RRU RX gain

wishful_upis.lte.radio.LTE_UE_N_TX_ANT = Attribute(key=LTE_UE_N_TX_ANT, type=<type 'int'>, isReadonly=False)

Number of TX antennas

wishful_upis.lte.radio.LTE_UE_N_RX_ANT = Attribute(key=LTE_UE_N_RX_ANT, type=<type 'int'>, isReadonly=False)

Number of RX antennas

wishful_upis.lte.radio.LTE_UE_RADIO_STATE = Attribute(key=LTE_UE_RADIO_STATE, type=<type 'bool'>, isReadonly=False)

UE State

wishful_upis.lte.radio.set_parameters(param_key_values_dict)[source]

This function (re)set the value(s) of the parameters specified in the dictionary argument. The list of available parameters supported by all platforms/OS are defined in this module. Parameters specific to a subgroup of platforms/OS are defined in the corresponding submodules. A list of supported parameters can be dynamically obtained using the get_info function on each module.

Examples:
>> UPIargs_eNB = {radio.TX_GAIN_enb.key: 90}
>> result = controller.node(enb_node).radio.set_parameters(UPIargs_eNB)
>> print result
        {TX_GAIN_enb.key: 90}
Args:
param_key_values_dict (dict): dictionary containing the key (string) value (any) pairs for each parameter. An example is {PUCCH_ENB : -96, MME_REALM : wishful_lte, TX_BANDWIDTH_enb : 25}
Returns:
dict: A dictionary containing key (string name) error (0 = success, 1=fail, +1=error code) pairs for each parameter.
wishful_upis.lte.radio.get_parameters(param_key_list)[source]

This function get(s) the value(s) of the parameters specified in the list argument. The list of available parameters supported by all platforms are defined in this module. Parameters specific to a subgroup of platforms are defined in the corresponding submodules.

Example:
>> UPIargs_eNB = [TX_GAIN_enb]
>> result = controller.node(enb_node).radio.get_parameters(UPIargs_eNB)
>> print result
    {TX_GAIN_enb.key: 90}
Args:
param_key_list (list): list of parameter names, an example is [UPI_RN.CSMA_CW, UPI_RN.CSMA_CW_MIN, UPI_RN.CSMA_CW_MAX].
Returns:
dict: A dictionary containing key (string name) and values of the requested parameters.

“Network OS” helpers