Skip to content

NI RFmx NR Configuration Functions

Ryan Eckenrode edited this page Mar 1, 2022 · 4 revisions

Configuration Functions

RFmxNR_CfgRF

int32 __stdcall RFmxNR_CfgRF (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 centerFrequency, float64 referenceLevel, float64 externalAttenuation);

Purpose

Configures the RF attributes of the signal specified by the selector string.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
centerFrequency float64 Specifies the center frequency of the acquired RF signal for a single carrier. This value is expressed in Hz. The parameter specifies the reference frequency of the subblock for intra-band carrier aggregation. Depending on the RFMXNR_ATTR_SUBBLOCK_FREQUENCY_DEFINITION) attribute, the center frequency can either be an absolute frequency or relative to the absolute frequency of the center frequency of the first subblock. All component carrier frequencies within the subblock are defined with respect to this frequency. The default value of this parameter is hardware dependent.
referenceLevel float64 Specifies the reference level which represents the maximum expected power of the RF input signal. This value is expressed in dBm for RF devices and Vpk-pk for baseband devices. The default value of this parameter is hardware dependent.
externalAttenuation float64 Specifies the attenuation of a switch or cable connected to the RF IN connector of the signal analyzer. This value is expressed in dB. For more information about attenuation, refer to the RF Attenuation and Signal Levels topic for your device in the NI RF Vector Signal Analyzers Help.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgFrequency

int32 __stdcall RFmxNR_CfgFrequency (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 centerFrequency);

Purpose

Configures the expected carrier frequency of the RF signal to acquire. The signal analyzer tunes to this frequency. Use "subblock<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
centerFrequency float64 Specifies the center frequency of the acquired RF signal for a single carrier. This value is expressed in Hz. The parameter specifies the reference frequency of the subblock for intra-band carrier aggregation. Depending on the RFMXNR_ATTR_SUBBLOCK_FREQUENCY_DEFINITION) attribute, the center frequency can either be an absolute frequency or relative to the absolute frequency of the center frequency of the first subblock. All component carrier frequencies within the subblock are defined with respect to this frequency. The default value of this parameter is hardware dependent.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgFrequencyReference

int32 __stdcall RFmxNR_CfgFrequencyReference (niRFmxInstrHandle instrumentHandle, char channelName[], char frequencyReferenceSource[], float64 frequencyReferenceFrequency);

Purpose

Configures the Reference Clock and the frequency reference source.

This function is a wrapper over the RFmx Instruments API, and calls the RFmxInstr_CfgFrequencyReference) function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
channelName char[] Set this parameter to "" (empty string) or NULL.
frequencyReferenceSource char[] Specifies the frequency reference source.
RFMXNR_VAL_ONBOARD_CLOCK_STR (OnboardClock)

NI 5663/5663E: The RFmx driver locks the NI 5663/5663E to the NI 5652 LO source onboard clock. Connect the REF OUT2 connector (if it exists) on the NI 5652 to the NI 5622 CLK IN terminal. On versions of the NI 5663/5663E that lack a REF OUT2 connector on the NI 5652, connect the REF IN/OUT connector on the NI 5652 to the NI 5622 CLK IN terminal.

NI 5665: The RFmx driver locks the NI 5665 to the NI 5653 LO source onboard clock. Connect the 100 MHz REF OUT terminal on the NI 5653 to the NI 5622CLK IN terminal.

NI 5668R: Lock the NI 5668R to the NI 5653 LO SOURCE onboard clock. Connect the LO2 OUT connector on the NI 5606 to the CLK IN connector on the NI 5624R.

NI 5644R/5645R/5646R: The RFmx driver locks the device to its onboard clock.

RFMXNR_VAL_REF_IN_STR (RefIn)

NI 5663/5663E: Connect the external signal to the NI 5652 REF IN/OUT connector. Connect the REF OUT2 connector (if it exists) on the NI 5652 to the NI 5622 CLK IN terminal.

NI 5665: Connect the external signal to the NI 5653 REF IN connector. Connect the 100 MHz REF OUT terminal on the NI 5653 to the NI 5622 CLK IN connector. If your external clock signal frequency is set to a frequency other than 10 MHz, set the frequencyReferenceFrequency parameter according to the frequency of your external clock signal.

NI 5668R: Connect the external signal to the NI 5653 REF IN connector. Connect the LO2 OUT on the NI 5606 to the CLK IN connector on the NI 5622. If your external clock signal frequency is set to a frequency other than 10 MHz, set the frequencyReferenceFrequency parameter according to the frequency of your external clock signal.

NI 5644R/5645R/5646R: The RFmx driver locks the device to the signal at the external REF IN connector.

RFMXNR_VAL_PXI_CLK_STR(PXI_Clk)

NI 5668R: Lock the NI 5653 to the PXI backplane clock. Connect the NI 5606 LO2 OUT to the LO2 IN connector on the NI 5624R.

NI 5644R/5645R/5646R, NI 5663/5663E/5665: The RFmx driver locks these devices to the PXI backplane clock.

RFMXNR_VAL_CLK_IN_STR (ClkIn)

NI 5663/5663E: The RFmx driver locks the NI 5663/5663E to an external 10 MHz signal. Connect the external signal to the NI 5622 CLK IN connector, and connect the NI 5622 CLK OUT connector to the REF IN/OUT connector on the NI 5652.

NI 5665: The RFmx driver locks the NI 5665 to an external 100 MHz signal. Connect the external signal to the NI 5622 CLK IN connector, and connect the NI 5622 CLK OUT connector to the REF IN connector on the NI 5653. Set the frequencyReferenceFrequency parameter to 100 MHz.

NI 5668R: Lock the NI 5668R to an external 100 MHz signal. Connect the external signal to the CLK IN connector on the NI 5624R, and connect the NI 5624R CLK OUT connector to the REF IN connector on the NI 5653. Set the frequencyReferenceFrequency parameter to 100 MHz.

NI 5644R/5645R/5646R: This configuration does not apply to the NI 5644R/5645R/5646R.

frequencyReferenceFrequency float64 Specifies the Reference Clock rate when you set the frequencyReferenceSource parameter to RFMXNR_VAL_CLK_IN_STR or RFMXNR_VAL_REF_IN_STR. This value is expressed in Hz.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgReferenceLevel

int32 __stdcall RFmxNR_CfgReferenceLevel (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 referenceLevel);

Purpose

Configures the reference level which represents the maximum expected power of an RF input signal.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
referenceLevel float64 Specifies the reference level which represents the maximum expected power of the RF input signal. This value is expressed in dBm for RF devices and Vpk-pk for baseband devices. The default value of this parameter is hardware dependent.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgExternalAttenuation

int32 __stdcall RFmxNR_CfgExternalAttenuation (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 externalAttenuation);

Purpose

Specifies the attenuation of a switch or cable connected to the RF IN connector of the signal analyzer.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
externalAttenuation float64 Specifies the attenuation of a switch or cable connected to the RF IN connector of the signal analyzer. This value is expressed in dB. For more information about attenuation, refer to the RF Attenuation and Signal Levels topic for your device in the NI RF Vector Signal Analyzers Help.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_AutoLevel

int32 __stdcall RFmxNR_AutoLevel (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 measurementInterval, float64* referenceLevel);

Purpose

Examines the input signal to calculate the peak power level and sets it as the value of the RFMXNR_ATTR_REFERENCE_LEVEL) attribute. Use this function to calculate an approximate setting for the reference level. The RFmxNR Auto Level function completes the following tasks: When using NI-PXIe 5663, NI-PXIe 5665, or NI-PXIe 5668R device, NI recommends that you set an appropriate value for mechanical attenuation before calling the RFmxNR Auto Level function. Setting an appropriate value for mechanical attenuation reduces the number of times the attenuator settings are changed by this function, thus reducing wear and tear, and maximizing the life time of the attenuator.

The following steps illustrate how AutoLevel works when a ref_level has been set:

  1. Resets the mixer level, mixer level offset, and IF output power offset.
  2. Sets the starting reference level to the maximum reference level supported by the device based on the current RF attenuation, mechanical attenuation, and preamplifier enabled settings.
  3. Iterates to adjust the reference level based on the input signal peak power.
  4. Uses immediate triggering and restores the trigger settings back to user setting after the execution.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
measurementInterval float64 Specifies the acquisition length. This value is expressed in seconds. Use this value to compute the number of samples to acquire from the signal analyzer.
Auto Level function does not use any trigger for acquisition. It ignores the user-configured trigger attributes. NI recommends that you set a sufficiently high measurement interval to ensure that the acquired waveform is at least as long as one period of the signal.
Output
Name Type Description
referenceLevel float64* Returns the estimated peak power level of the input signal. This value is expressed in dBm. The default value of this parameter is hardware dependent.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

Trigger

RFmxNR_DisableTrigger

int32 __stdcall RFmxNR_DisableTrigger (niRFmxInstrHandle instrumentHandle, char selectorString[]);

Purpose

Configures the device to not wait for a trigger to mark a reference point within a record. This function defines the signal triggering as immediate.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgDigitalEdgeTrigger

int32 __stdcall RFmxNR_CfgDigitalEdgeTrigger (niRFmxInstrHandle instrumentHandle, char selectorString[], char digitalEdgeSource[], int32 digitalEdge, float64 triggerDelay, int32 enableTrigger);

Purpose

Configures the device to wait for a digital edge trigger and then marks a reference point within the record. Spectral measurements are sometimes implemented with multiple acquisitions and therefore will require that digital triggers are sent for each acquisition. Multiple factors, including the desired span versus the realtime bandwidth of the hardware, affect the number of acquisitions. NI recommends repeating the generation until the measurement is completed in order to ensure that all the acquisitions are triggered.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
digitalEdgeSource char[] Specifies the source terminal for the digital edge trigger. This parameter is used when you set the RFMXNR_ATTR_TRIGGER_TYPE) attribute to RFMXNR_VAL_TRIGGER_TYPE_DIGITAL_EDGE. The default value of this parameter is hardware dependent.
RFMXNR_VAL_PFI0_STR (PFI0) The trigger is received on PFI 0.
RFMXNR_VAL_PFI1_STR (PFI1) The trigger is received on PFI 1.
RFMXNR_VAL_PXI_TRIG0_STR (PXI_Trig0) The trigger is received on PXI trigger line 0.
RFMXNR_VAL_PXI_TRIG1_STR (PXI_Trig1) The trigger is received on PXI trigger line 1.
RFMXNR_VAL_PXI_TRIG2_STR (PXI_Trig2) The trigger is received on PXI trigger line 2.
RFMXNR_VAL_PXI_TRIG3_STR (PXI_Trig3) The trigger is received on PXI trigger line 3.
RFMXNR_VAL_PXI_TRIG4_STR (PXI_Trig4) The trigger is received on PXI trigger line 4.
RFMXNR_VAL_PXI_TRIG5_STR (PXI_Trig5) The trigger is received on PXI trigger line 5.
RFMXNR_VAL_PXI_TRIG6_STR (PXI_Trig6) The trigger is received on PXI trigger line 6.
RFMXNR_VAL_PXI_TRIG7_STR (PXI_Trig7) The trigger is received on PXI trigger line 7.
RFMXNR_VAL_PXI_STAR_STR (PXI_STAR) The trigger is received on the PXI star trigger line.
RFMXNR_VAL_PXIE_DSTARB_STR (PXIe_DStarB) The trigger is received on the PXIe DStar B trigger line.
RFMXNR_VAL_TIMER_EVENT_STR (TimerEvent) The trigger is received from the timer event.
digitalEdge int32 Specifies the source terminal for the digital edge trigger. This parameter is used when you set the RFMXNR_ATTR_TRIGGER_TYPE attribute to RFMXNR_VAL_TRIGGER_TYPE_DIGITAL_EDGE.
RFMXNR_VAL_DIGITAL_EDGE_RISING_EDGE (0) The trigger asserts on the rising edge of the signal.
RFMXNR_VAL_DIGITAL_EDGE_FALLING_EDGE (1) The trigger asserts on the falling edge of the signal.
triggerDelay float64 Specifies the trigger delay time. This value is expressed in seconds. If the delay is negative, the measurement acquires pretrigger samples. If the delay is positive, the measurement acquires post-trigger samples.
enableTrigger int32 Specifies whether to enable the trigger.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgIQPowerEdgeTrigger

int32 __stdcall RFmxNR_CfgIQPowerEdgeTrigger (niRFmxInstrHandle instrumentHandle, char selectorString[], char IQPowerEdgeSource[], int32 IQPowerEdgeSlope, float64 IQPowerEdgeLevel, float64 triggerDelay, int32 triggerMinQuietTimeMode, float64 triggerMinQuietTimeDuration, int32 IQPowerEdgeLevelType, int32 enableTrigger);

Purpose

Configures the device to wait for the complex power of the I/Q data to cross the specified threshold and then marks a reference point within the record. To trigger on bursty signals, specify a minimum quiet time, which ensures that the trigger does not occur in the middle of the burst signal. The quiet time must be set to a value smaller than the time between bursts, but large enough to ignore power changes within a burst.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
IQPowerEdgeSource char[] Specifies the channel from which the device monitors the trigger. This parameter is used only when you set the RFMXNR_ATTR_TRIGGER_TYPE) attribute to RFMXNR_VAL_TRIGGER_TYPE_IQ_POWER_EDGE. The default value of this parameter is hardware dependent.
IQPowerEdgeSlope int32 Specifies whether the device asserts the trigger when the signal power is rising or when it is falling. The device asserts the trigger when the signal power exceeds the specified level with the slope you specify. This parameter is used only when you set the RFMXNR_ATTR_TRIGGER_TYPE attribute to RFMXNR_VAL_TRIGGER_TYPE_IQ_POWER_EDGE.
IQPowerEdgeLevel float64 Specifies the power level at which the device triggers. This value is expressed in dB when you set the IQPowerEdgeLevelType parameter to RFMXNR_VAL_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE_RELATIVE, and this value is expressed in dBm when you set the IQPowerEdgeLevelType parameter to RFMXNR_VAL_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE_ABSOLUTE. The device asserts the trigger when the signal exceeds the level specified by the value of this parameter, taking into consideration the specified slope. This parameter is used only when you set the RFMXNR_ATTR_TRIGGER_TYPE attribute to RFMXNR_VAL_TRIGGER_TYPE_IQ_POWER_EDGE. The default value of this parameter is hardware dependent.
triggerDelay float64 Specifies the trigger delay time. This value is expressed in seconds. If the delay is negative, the measurement acquires pretrigger samples. If the delay is positive, the measurement acquires post-trigger samples.
triggerMinQuietTimeMode int32 Specifies whether the measurement computes the minimum quiet time used for triggering.
RFMXNR_VAL_TRIGGER_MINIMUM_QUIET_TIME_MODE_MANUAL (0) The minimum quiet time for triggering is the value of the minQuietTime parameter.
RFMXNR_VAL_TRIGGER_MINIMUM_QUIET_TIME_MODE_AUTO (1) The measurement computes the minimum quiet time used for triggering.
triggerMinQuietTimeDuration float64 Specifies the time duration for which the signal must be quiet before the signal analyzer arms the I/Q power edge trigger. This value is expressed in seconds. If you set the RFMXNR_ATTR_IQ_POWER_EDGE_TRIGGER_SLOPE attribute to RFMXNR_VAL_IQ_POWER_EDGE_RISING_SLOPE, the signal is quiet below the trigger level. If you set the RFMXNR_ATTR_IQ_POWER_EDGE_TRIGGER_SLOPE attribute to RFMXNR_VAL_IQ_POWER_EDGE_FALLING_SLOPE, the signal is quiet above the trigger level.
IQPowerEdgeLevelType int32 Specifies the reference for theIQPowerEdgeLevel parameter. The IQPowerEdgeLevelType parameter is used only when you set the RFMXNR_ATTR_TRIGGER_TYPE attribute to RFMXNR_VAL_TRIGGER_TYPE_IQ_POWER_EDGE.
RFMXNR_VAL_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE_RELATIVE (0) The IQ Power Edge Level attribute is relative to the value of the RFMXNR_ATTR_REFERENCE_LEVEL) attribute.
RFMXNR_VAL_IQ_POWER_EDGE_TRIGGER_LEVEL_TYPE_ABSOLUTE (1) The IQ Power Edge Level attribute specifies the absolute power.
enableTrigger int32 Specifies whether to enable the trigger.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgSoftwareEdgeTrigger

int32 __stdcall RFmxNR_CfgSoftwareEdgeTrigger (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 triggerDelay, int32 enableTrigger);

Purpose

Configures the device to wait for a software trigger and then marks a reference point within the record.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
triggerDelay float64 Specifies the trigger delay time. This value is expressed in seconds. If the delay is negative, the measurement acquires pretrigger samples. If the delay is positive, the measurement acquires post-trigger samples.
enableTrigger int32 Specifies whether to enable the trigger.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SendSoftwareEdgeTrigger

int32 __stdcall RFmxNR_SendSoftwareEdgeTrigger (niRFmxInstrHandle instrumentHandle);

Purpose

Sends a trigger to the device when you use the RFmxNR_CfgTrigger function to choose a software version of a trigger and the device is waiting for the trigger to be sent. You can also use this function to override a hardware trigger. This function returns an error in the following situations:

  • You configure an invalid trigger.
  • You have not previously called the RFmxNR_Initiate) function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfggNodeBCategory

int32 __stdcall RFmxNR_CfggNodeBCategory (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 gNodeBCategory);

Purpose

Configures the gNodeB Category of the signal being measured.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
gNodeBCategory int32 Specifies the downlink gNodeB (Base station) category. Refer to 3GPP 38.104 specification for more information about gNodeB Category.
RFMXNR_VAL_GNODEB_CATEGORY_WIDE_AREA_BASE_STATION_CATEGORY_A (0) Specifies that gNodeB is of type Wide Area Base Station - Category A.
RFMXNR_VAL_GNODEB_CATEGORY_WIDE_AREA_BASE_STATION_CATEGORY_B_OPTION1 (1) Specifies that gNodeB is of type Wide Area Base Station - Category B Option1.
RFMXNR_VAL_GNODEB_CATEGORY_WIDE_AREA_BASE_STATION_CATEGORY_B_OPTION2 (2) Specifies that gNodeB is of type Wide Area Base Station - Category B Option2.
RFMXNR_VAL_GNODEB_CATEGORY_LOCAL_AREA_BASE_STATION (3) Specifies that gNodeB is of type Local Area Base Station.
RFMXNR_VAL_GNODEB_CATEGORY_MEDIUM_RANGE_BASE_STATION (5) Specifies that gNodeB is of type Medium Range Base Station.
RFMXNR_VAL_GNODEB_CATEGORY_FR2_CATEGORY_A (6) Specifies that gNodeB is of type FR2 Category A.
RFMXNR_VAL_GNODEB_CATEGORY_FR2_CATEGORY_B (7) Specifies that gNodeB is of type FR2 Category B.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgRFAttenuation

int32 __stdcall RFmxNR_CfgRFAttenuation (niRFmxInstrHandle instrumentHandle, char channelName[], int32 RFAttenuationAuto, float64 RFAttenuationValue);

Purpose

Configures the nominal attenuation and the RFmx driver setting.

This function is a wrapper over the RFmx Instruments API, and calls the RFmxInstr_CfgRFAttenuation) function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
channelName char[] Set this parameter to "" (empty string) or NULL.
RFAttenuationAuto int32 Specifies whether the RFmx driver computes the RF attenuation.
RFMXNR_VAL_RF_ATTENUATION_AUTO_FALSE(0) Specifies that the RFmx driver uses the value configured using the RFAttenuationValue parameter.
RFMXNR_VAL_RF_ATTENUATION_AUTO_TRUE(1) Specifies that the RFmx driver computes the RF attenuation.
RFAttenuationValue float64 Specifies the nominal attenuation setting for all attenuators before the first mixer in the RF signal chain when you set the RFAttenuationAuto parameter to RFMXNR_VAL_RF_ATTENUATION_AUTO_FALSE. This value is expressed in dB.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CfgMechanicalAttenuation

int32 __stdcall RFmxNR_CfgMechanicalAttenuation (niRFmxInstrHandle instrumentHandle, char channelName[], int32 mechanicalAttenuationAuto, float64 mechanicalAttenuationValue);

Purpose

Configures the mechanical attenuation and the RFmx driver attenuation hardware settings.

This function is a wrapper over the RFmx Instruments API, and calls the RFmxInstr_CfgMechanicalAttenuation) function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
channelName char[] Set this parameter to "" (empty string) or NULL.
mechanicalAttenuationAuto int32 Specifies whether the RFmx driver chooses an attenuation setting based on the hardware settings.
RFMXNR_VAL_MECHANICAL_ATTENUATION_AUTO_FALSE(0) Specifies that the RFmx driver uses the value configured in the mechanicalAttenuationValue parameter.
RFMXNR_VAL_MECHANICAL_ATTENUATION_AUTO_TRUE(1) Specifies that the measurement computes the mechanical attenuation.
mechanicalAttenuationValue float64 Specifies the level of mechanical attenuation for the RF path. This value is expressed in dB.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

Modacc

RFmxNR_ModAccCfgMeasurementMode

int32 __stdcall RFmxNR_ModAccCfgMeasurementMode (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 measurementMode);

Purpose

Configures the measurement mode for the ModAcc measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
measurementMode int32 Specifies whether the measurement should calibrate the noise floor of the analyzer or perform the ModAcc measurement.
RFMXNR_VAL_MODACC_MEASUREMENT_MODE_MEASURE (0) The ModAcc measurement is performed on the acquired signal.
RFMXNR_VAL_MODACC_MEASUREMENT_MODE_CALIBRATE_NOISE_FLOOR (1) The ModAcc measurement measures the noise floor of the instrument across the frequency range of interest determined by the carrier frequency and channel bandwidth. In this mode, the measurement expects that the signal generator to be turned off and checks whether no signal power is detected at the RF In port of the analyzer beyond a certain threshold. All scalar results and traces are invalid in this mode. Even if the instrument noise floor is previously calibrated, the measurement performs all the required acquisitions and overwrites any pre-existing noise floor calibration data.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ModAccCfgNoiseCompensationEnabled

int32 __stdcall RFmxNR_ModAccCfgNoiseCompensationEnabled (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 noiseCompensationEnabled);

Purpose

Configures whether to enable EVM noise compensation for the ModAcc measurement. **supporteddevices:**PXIe-5830/5831/5832/5646/5840/5841.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
noiseCompensationEnabled int32 Specifies whether the contribution of the instrument noise is compensated for EVM computation.
RFMXNR_VAL_MODACC_NOISE_COMPENSATION_ENABLED_FALSE (0) Disables instrument noise compensation for EVM results.
RFMXNR_VAL_MODACC_NOISE_COMPENSATION_ENABLED_TRUE (1) Enables instrument noise compensation for EVM results.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ModAccClearNoiseCalibrationDatabase

int32 __stdcall RFmxNR_ModAccClearNoiseCalibrationDatabase (niRFmxInstrHandle instrumentHandle);

Purpose

Clears the noise calibration database used for EVM noise compensation.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ModAccValidateCalibrationData

int32 __stdcall RFmxNR_ModAccValidateCalibrationData (niRFmxInstrHandle instrumentHandle, char selectorString[], int32* calibrationDataValid);

Purpose

Specifies whether calibration data is valid for the configuration specified by the signal name in the selectorString parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
Output
Name Type Description
calibrationDataValid int32* Returns whether the calibration data is valid.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ModAccAutoLevel

int32 __stdcall RFmxNR_ModAccAutoLevel (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 timeout);

Purpose

Performs the user-configured ModAcc measurement at multiple reference levels relative to the user-configured Reference Level attribute and configures the reference level corresponding to the lowest ModAcc Results Composite RMS EVM Mean result. This function only measures at the reference levels that do not result in an ADC or OSP overflow when you set the ModAcc Auto Level Allow Overflow attribute to false. If you set the ModAcc Auto Level Allow Overflow attribute to true, this function measures at a few reference levels beyond the overflow. This function expects: Auto level needs to be performed again if the input signal or RFmx configuration changes. For repeatable results, you must make sure that the ModAcc measurement is repeatable. This function measures EVM at reference levels starting at an integer at least 1 dB above the value you configure for the Reference Level attribute, extending upto 12 dB lower when you set the ModAcc Auto Level Allow Overflow attribute to false, and up to 17 dB lower when you set the ModAcc Auto Level Allow Overflow attribute to true with a step size of 0.5 dB. When you use this function with the ModAcc Noise Comp Enabled attribute set to true, you need to make sure that valid noise calibration data is available for the following measurements.

  • A valid ModAcc measurement configuration
  • Reference Level attribute set to peak power of the signal
  • Repetitive signals at the analyzer's input along with trigger settings that measure the same portion of the waveform every time the measurement is performed
  • No other measurements are running in parallel

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
timeout float64 Specifies the timeout, in seconds, for fetching the specified measurement. Set this value to an appropriate time, longer than expected for fetching the measurement. A value of -1 specifies that the function waits until the measurement is complete.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

ACP

RFmxNR_ACPCfgAveraging

int32 __stdcall RFmxNR_ACPCfgAveraging (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 averagingEnabled, int32 averagingCount, int32 averagingType);

Purpose

Configures averaging for the ACP measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
averagingEnabled int32 Specifies whether to enable averaging for the measurement.
RFMXNR_VAL_ACP_AVERAGING_ENABLED_FALSE (0) The measurement is performed on a single acquisition.
RFMXNR_VAL_ACP_AVERAGING_ENABLED_TRUE (1) The measurement is averaged over multiple acquisitions. The number of acquisitions is obtained by the averagingCount parameter.
averagingCount int32 Specifies the number of acquisitions used for averaging when you set the averagingEnabled parameter to RFMXNR_VAL_ACP_AVERAGING_ENABLED_TRUE.
averagingType int32 Specifies the averaging type for averaging multiple spectrum acquisitions. The averaged spectrum is used for the measurement.
RFMXNR_VAL_ACP_AVERAGING_TYPE_RMS (0) The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations, but not the noise floor.
RFMXNR_VAL_ACP_AVERAGING_TYPE_LOG (1) The power spectrum is averaged in a logarithmic scale.
RFMXNR_VAL_ACP_AVERAGING_TYPE_SCALAR (2) The square root of the power spectrum is averaged.
RFMXNR_VAL_ACP_AVERAGING_TYPE_MAXIMUM (3) The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.
RFMXNR_VAL_ACP_AVERAGING_TYPE_MINIMUM (4) The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgSweepTime

int32 __stdcall RFmxNR_ACPCfgSweepTime (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 sweepTimeAuto, float64 sweepTimeInterval);

Purpose

Configures the sweep time.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
sweepTimeAuto int32 Specifies whether the measurement sets the sweep time.
RFMXNR_VAL_ACP_SWEEP_TIME_AUTO_FALSE (0) The measurement uses the sweep time that you specify in the sweepTimeInterval parameter.
RFMXNR_VAL_ACP_SWEEP_TIME_AUTO_TRUE (1) The measurement calculates the sweep time internally. For DL, the sweep time is calculated based on the value of the RFMXNR_ATTR_OBW_RBW_FILTER_BANDWIDTH) attribute, and for UL, it uses a sweep time of 1 ms.
sweepTimeInterval float64 Specifies the sweep time when you set the sweepTimeAuto parameter to RFMXNR_VAL_ACP_SWEEP_TIME_AUTO_FALSE. This value is expressed in seconds.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgNoiseCompensationEnabled

int32 __stdcall RFmxNR_ACPCfgNoiseCompensationEnabled (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 noiseCompensationEnabled);

Purpose

Configures compensation of the channel powers for the inherent noise floor of the signal analyzer.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
noiseCompensationEnabled int32 Specifies whether to enable compensation of the channel powers for the inherent noise floor of the signal analyzer.
RFMXNR_VAL_ACP_NOISE_COMPENSATION_ENABLED_FALSE (0) Disables compensation of the channel powers for the noise floor of the signal analyzer.
RFMXNR_VAL_ACP_NOISE_COMPENSATION_ENABLED_TRUE (1) Enables compensation of the channel powers for the noise floor of the signal analyzer. The noise floor of the signal analyzer is measured for the RF path used by the ACP measurement and cached for future use. If signal analyzer or measurement parameters change, noise floors are remeasured.
supportedDevices: PXIe-5663/5665/5668R, PXIe-5830/5831/5832

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgMeasurementMethod

int32 __stdcall RFmxNR_ACPCfgMeasurementMethod (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 measurementMethod);

Purpose

Configures the method for performing the ACP measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
measurementMethod int32 Specifies the method for performing the ACP measurement.
RFMXNR_VAL_ACP_MEASUREMENT_METHOD_NORMAL (0) The ACP measurement acquires the spectrum using the same signal analyzer setting across frequency bands. Use this method when measurement speed is desirable over higher dynamic range.
RFMXNR_VAL_ACP_MEASUREMENT_METHOD_DYNAMIC_RANGE (1) The ACP measurement acquires the spectrum using the hardware-specific optimizations for different frequency bands. Use this method to get the best dynamic range. supportedDevices:PXIe-5665/5668R
RFMXNR_VAL_ACP_MEASUREMENT_METHOD_SEQUENTIAL_FFT (2) The ACP measurement acquires all the samples specified by the RFMXNR_ATTR_ACP_SWEEP_TIME_INTERVAL) attribute and divides them in to smaller chunks of equal size defined by the RFMXNR_ATTR_ACP_SEQUENTIAL_FFT_SIZE) attribute. FFT is computed for each chunk. The resultant FFTs are averaged to get the spectrum used to compute the ACP. If the total acquired samples is not an integer multiple of the FFT size, the remaining samples at the end of the acquisition are not used. Use this method to optimize for speed. The accuracy of results may be reduced when using this measurement method.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgNumberOfEUTRAOffsets

int32 __stdcall RFmxNR_ACPCfgNumberOfEUTRAOffsets (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 numberOfEUTRAOffsets);

Purpose

Configures the number of E-UTRA adjacent channels of the subblock. Use "subblock<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
numberOfEUTRAOffsets int32 Specifies the number of E-UTRA adjacent channel offsets to be configured at offset positions. For downlink ACP measurement in frequency range 2, and for uplink ACP measurement, this parameter has to be 0.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgNumberOfUTRAOffsets

int32 __stdcall RFmxNR_ACPCfgNumberOfUTRAOffsets (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 numberOfUTRAOffsets);

Purpose

Configures the number of UTRA adjacent channels of the subblock. Use "subblock<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
numberOfUTRAOffsets int32 Specifies the number of UTRA adjacent channel offsets to be configured at offset positions. For uplink ACP measurement in frequency range 2, and for downlink ACP measurement, this parameter has to be 0.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgNumberOfNROffsets

int32 __stdcall RFmxNR_ACPCfgNumberOfNROffsets (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 numberOfNROffsets);

Purpose

Configures the number of NR adjacent channels of the subblock. Use "subblock<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
numberOfNROffsets int32 Specifies the number of NR adjacent channel offsets to be configured at offset positions.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgNumberOfENDCOffsets

int32 __stdcall RFmxNR_ACPCfgNumberOfENDCOffsets (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 numberOfENDCOffsets);

Purpose

Configures the number of ENDC adjacent channels of the subblock.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used. The default is "subblock0".
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
numberOfENDCOffsets int32 Specifies the number of ENDC adjacent channel offsets to be configured at offset positions.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgRBWFilter

int32 __stdcall RFmxNR_ACPCfgRBWFilter (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 RBWAuto, float64 RBW, int32 RBWFilterType);

Purpose

Configures the resolution bandwidth (RBW) filter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
RBWAuto int32 Specifies whether the measurement computes the RBW.
RFMXNR_VAL_ACP_RBW_FILTER_AUTO_BANDWIDTH_FALSE (0) The measurement uses the RBW that you specify in the RBW parameter.
RFMXNR_VAL_ACP_RBW_FILTER_AUTO_BANDWIDTH_TRUE (1) The measurement computes the RBW.
RBW float64 Specifies the bandwidth of the RBW filter, used to sweep the acquired signal, when you set the RBWAuto parameter to RFMXNR_VAL_ACP_RBW_FILTER_AUTO_BANDWIDTH_FALSE. This value is expressed in Hz.
RBWFilterType int32 Specifies the shape of the RBW filter.
RFMXNR_VAL_ACP_RBW_FILTER_TYPE_FFT_BASED (0) No RBW filtering is performed.
RFMXNR_VAL_ACP_RBW_FILTER_TYPE_GAUSSIAN (1) An RBW filter with a Gaussian response is applied.
RFMXNR_VAL_ACP_RBW_FILTER_TYPE_FLAT (2) An RBW filter with a flat response is applied.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPCfgPowerUnits

int32 __stdcall RFmxNR_ACPCfgPowerUnits (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 powerUnits);

Purpose

Configures the unit for absolute power.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
powerUnits int32 Specifies the unit of absolute power.
RFMXNR_VAL_ACP_POWER_UNITS_DBM (0) Indicates that the absolute power is expressed in dBm.
RFMXNR_VAL_ACP_POWER_UNITS_DBM_BY_HZ (1) Indicates that the absolute power is expressed in dBm/Hz.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_ACPValidateNoiseCalibrationData

int32 __stdcall RFmxNR_ACPValidateNoiseCalibrationData (niRFmxInstrHandle instrumentHandle, char selectorString[], int32* noiseCalibrationDataValid);

Purpose

Indicates whether the ACP noise calibration data is valid for the configuration specified by the signal name in the selectorString parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
Output
Name Type Description
noiseCalibrationDataValid int32* Returns whether the calibration data is valid.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_BuildSubblockString

int32 __stdcall RFmxNR_BuildSubblockString (char selectorString[], int32 subblockNumber, int32 selectorStringOutLength, char selectorStringOut[]);

Purpose

Creates the subblock string.

Parameters

Input
Name Type Description
selectorString char[] Specifies a selector string) comprising of the signal name and the result name. If you do not specify the signal name, the default signal instance is used. If you do not specify the result name, the default result instance is used.
Example:
"signal::sig1"
"result::r1"
"signal::sig1/result::r1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
subblockNumber int32 Specifies the number of subblocks that are configured in the non-contiguous carrier aggregation. Set this parameter to 1, which is the default, for single carrier and intra-band contiguous carrier aggregation.
selectorStringOutLength int32 Specifies the length of the string that is returned by the selectorStringOut parameter. To get the minimum buffer size required to build the selector string, set the selectorStringOutLength parameter to 0.
Output
Name Type Description
selectorStringOut char[] Returns the selector string.

Return Value

Name Type Description

CHP

RFmxNR_CHPCfgAveraging

int32 __stdcall RFmxNR_CHPCfgAveraging (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 averagingEnabled, int32 averagingCount, int32 averagingType);

Purpose

Configures averaging for the CHP measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
averagingEnabled int32 Specifies whether to enable averaging for the measurement.
RFMXNR_VAL_CHP_AVERAGING_ENABLED_FALSE (0) The measurement is performed on a single acquisition.
RFMXNR_VAL_CHP_AVERAGING_ENABLED_TRUE (1) The measurement is averaged over multiple acquisitions. The number of acquisitions is obtained by the averagingCount parameter.
averagingCount int32 Specifies the number of acquisitions used for averaging when you set the averagingEnabled parameter to RFMXNR_VAL_CHP_AVERAGING_ENABLED_TRUE.
averagingType int32 Specifies the averaging type for averaging multiple spectrum acquisitions. The averaged spectrum is used for the measurement.
RFMXNR_VAL_CHP_AVERAGING_TYPE_RMS (0) The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations, but not the noise floor.
RFMXNR_VAL_CHP_AVERAGING_TYPE_LOG (1) The power spectrum is averaged in a logarithmic scale.
RFMXNR_VAL_CHP_AVERAGING_TYPE_SCALAR (2) The square root of the power spectrum is averaged.
RFMXNR_VAL_CHP_AVERAGING_TYPE_MAXIMUM (3) The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.
RFMXNR_VAL_CHP_AVERAGING_TYPE_MINIMUM (4) The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CHPCfgSweepTime

int32 __stdcall RFmxNR_CHPCfgSweepTime (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 sweepTimeAuto, float64 sweepTimeInterval);

Purpose

Configures the sweep time.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
sweepTimeAuto int32 Specifies whether the measurement sets the sweep time.
RFMXNR_VAL_CHP_SWEEP_TIME_AUTO_FALSE (0) The measurement uses the sweep time that you specify in the sweepTimeInterval parameter.
RFMXNR_VAL_CHP_SWEEP_TIME_AUTO_TRUE (1) The measurement calculates the sweep time internally. For DL, the sweep time is calculated based on the value of the RFMXNR_ATTR_OBW_RBW_FILTER_BANDWIDTH) attribute, and for UL, it uses a sweep time of 1 ms.
sweepTimeInterval float64 Specifies the sweep time when you set the sweepTimeAuto parameter to RFMXNR_VAL_CHP_SWEEP_TIME_AUTO_FALSE. This value is expressed in seconds.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CHPCfgRBWFilter

int32 __stdcall RFmxNR_CHPCfgRBWFilter (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 RBWAuto, float64 RBW, int32 RBWFilterType);

Purpose

Configures the resolution bandwidth (RBW) filter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
RBWAuto int32 Specifies whether the measurement computes the RBW.
RFMXNR_VAL_CHP_RBW_FILTER_AUTO_BANDWIDTH_FALSE (0) The measurement uses the RBW that you specify in the RBW parameter.
RFMXNR_VAL_CHP_RBW_FILTER_AUTO_BANDWIDTH_TRUE (1) The measurement computes the RBW.
RBW float64 Specifies the bandwidth of the RBW filter, used to sweep the acquired signal, when you set the RBWAuto parameter to RFMXNR_VAL_CHP_RBW_FILTER_AUTO_BANDWIDTH_FALSE. This value is expressed in Hz.
RBWFilterType int32 Specifies the shape of the RBW filter.
RFMXNR_VAL_CHP_RBW_FILTER_TYPE_FFT_BASED (0) No RBW filtering is performed.
RFMXNR_VAL_CHP_RBW_FILTER_TYPE_GAUSSIAN (1) An RBW filter with a Gaussian response is applied.
RFMXNR_VAL_CHP_RBW_FILTER_TYPE_FLAT (2) An RBW filter with a flat response is applied.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_CHPValidateNoiseCalibrationData

int32 __stdcall RFmxNR_CHPValidateNoiseCalibrationData (niRFmxInstrHandle instrumentHandle, char selectorString[], int32* noiseCalibrationDataValid);

Purpose

Indicates whether the CHP noise calibration data is valid for the configuration specified by the signal name in the selectorString parameter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
Output
Name Type Description
noiseCalibrationDataValid int32* Returns whether the calibration data is valid.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

OBW

RFmxNR_OBWCfgAveraging

int32 __stdcall RFmxNR_OBWCfgAveraging (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 averagingEnabled, int32 averagingCount, int32 averagingType);

Purpose

Configures averaging for the OBW measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
averagingEnabled int32 Specifies whether to enable averaging for the measurement.
RFMXNR_VAL_OBW_AVERAGING_ENABLED_FALSE (0) The measurement is performed on a single acquisition.
RFMXNR_VAL_OBW_AVERAGING_ENABLED_TRUE (1) The measurement is averaged over multiple acquisitions. The number of acquisitions is obtained by the averagingCount parameter.
averagingCount int32 Specifies the number of acquisitions used for averaging when you set the averagingEnabled parameter to RFMXNR_VAL_OBW_AVERAGING_ENABLED_TRUE.
averagingType int32 Specifies the averaging type for averaging multiple spectrum acquisitions. The averaged spectrum is used for the measurement.
RFMXNR_VAL_OBW_AVERAGING_TYPE_RMS (0) The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations, but not the noise floor.
RFMXNR_VAL_OBW_AVERAGING_TYPE_LOG (1) The power spectrum is averaged in a logarithmic scale.
RFMXNR_VAL_OBW_AVERAGING_TYPE_SCALAR (2) The square root of the power spectrum is averaged.
RFMXNR_VAL_OBW_AVERAGING_TYPE_MAXIMUM (3) The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.
RFMXNR_VAL_OBW_AVERAGING_TYPE_MINIMUM (4) The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_OBWCfgSweepTime

int32 __stdcall RFmxNR_OBWCfgSweepTime (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 sweepTimeAuto, float64 sweepTimeInterval);

Purpose

Configures the sweep time.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
sweepTimeAuto int32 Specifies whether the measurement sets the sweep time.
RFMXNR_VAL_OBW_SWEEP_TIME_AUTO_FALSE (0) The measurement uses the sweep time that you specify in the sweepTimeInterval parameter.
RFMXNR_VAL_OBW_SWEEP_TIME_AUTO_TRUE (1) The measurement calculates the sweep time internally. For DL, the sweep time is calculated based on the value of the RFMXNR_ATTR_OBW_RBW_FILTER_BANDWIDTH) attribute, and for UL, it uses a sweep time of 1 ms.
sweepTimeInterval float64 Specifies the sweep time when you set the sweepTimeAuto parameter to RFMXNR_VAL_OBW_SWEEP_TIME_AUTO_FALSE. This value is expressed in seconds.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_OBWCfgRBWFilter

int32 __stdcall RFmxNR_OBWCfgRBWFilter (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 RBWAuto, float64 RBW, int32 RBWFilterType);

Purpose

Configures the resolution bandwidth (RBW) filter.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
RBWAuto int32 Specifies whether the measurement computes the RBW.
RFMXNR_VAL_OBW_RBW_FILTER_AUTO_BANDWIDTH_FALSE (0) The measurement uses the RBW that you specify in the RBW parameter.
RFMXNR_VAL_OBW_RBW_FILTER_AUTO_BANDWIDTH_TRUE (1) The measurement computes the RBW.
RBW float64 Specifies the bandwidth of the RBW filter, used to sweep the acquired signal, when you set the RBWAuto parameter to RFMXNR_VAL_OBW_RBW_FILTER_AUTO_BANDWIDTH_FALSE. This value is expressed in Hz.
RBWFilterType int32 Specifies the shape of the RBW filter.
RFMXNR_VAL_OBW_RBW_FILTER_TYPE_FFT_BASED (0) No RBW filtering is performed.
RFMXNR_VAL_OBW_RBW_FILTER_TYPE_GAUSSIAN (1) An RBW filter with a Gaussian response is applied.
RFMXNR_VAL_OBW_RBW_FILTER_TYPE_FLAT (2) An RBW filter with a flat response is applied.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

SEM

RFmxNR_SEMCfgAveraging

int32 __stdcall RFmxNR_SEMCfgAveraging (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 averagingEnabled, int32 averagingCount, int32 averagingType);

Purpose

Configures averaging for the SEM measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
averagingEnabled int32 Specifies whether to enable averaging for the measurement.
RFMXNR_VAL_SEM_AVERAGING_ENABLED_FALSE (0) The measurement is performed on a single acquisition.
RFMXNR_VAL_SEM_AVERAGING_ENABLED_TRUE (1) The measurement is averaged over multiple acquisitions. The number of acquisitions is obtained by the averagingCount parameter.
averagingCount int32 Specifies the number of acquisitions used for averaging when you set the averagingEnabled parameter to RFMXNR_VAL_SEM_AVERAGING_ENABLED_TRUE.
averagingType int32 Specifies the averaging type for averaging multiple spectrum acquisitions. The averaged spectrum is used for the measurement.
RFMXNR_VAL_SEM_AVERAGING_TYPE_RMS (0) The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations, but not the noise floor.
RFMXNR_VAL_SEM_AVERAGING_TYPE_LOG (1) The power spectrum is averaged in a logarithmic scale.
RFMXNR_VAL_SEM_AVERAGING_TYPE_SCALAR (2) The square root of the power spectrum is averaged.
RFMXNR_VAL_SEM_AVERAGING_TYPE_MAXIMUM (3) The peak power in the spectrum at each frequency bin is retained from one acquisition to the next.
RFMXNR_VAL_SEM_AVERAGING_TYPE_MINIMUM (4) The lowest power in the spectrum at each frequency bin is retained from one acquisition to the next.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgSweepTime

int32 __stdcall RFmxNR_SEMCfgSweepTime (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 sweepTimeAuto, float64 sweepTimeInterval);

Purpose

Configures the sweep time.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
sweepTimeAuto int32 Specifies whether the measurement sets the sweep time.
RFMXNR_VAL_SEM_SWEEP_TIME_AUTO_FALSE (0) The measurement uses the sweep time that you specify in the sweepTimeInterval parameter.
RFMXNR_VAL_SEM_SWEEP_TIME_AUTO_TRUE (1) The measurement calculates the sweep time internally. For DL, the sweep time is calculated based on the value of the RFMXNR_ATTR_OBW_RBW_FILTER_BANDWIDTH) attribute, and for UL, it uses a sweep time of 1 ms.
sweepTimeInterval float64 Specifies the sweep time when you set the sweepTimeAuto parameter to RFMXNR_VAL_SEM_SWEEP_TIME_AUTO_FALSE. This value is expressed in seconds.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgUplinkMaskType

int32 __stdcall RFmxNR_SEMCfgUplinkMaskType (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 uplinkMaskType);

Purpose

Configures the standard defined mask type that has to be used in the measurement for uplink.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
uplinkMaskType int32 Specifies the spectrum emission mask used in the measurement for uplink. You must set the mask type to custom to configure the custom offset masks. Refer to section 6.5.2 of the 3GPP 38.101 specification for more information about standard-defined mask types.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_GENERAL (0) The measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.5.2.2-1 in section 6.5.2 of the 3GPP TS 38.101-1 specification, Table 6.5.2.1-1 and 6.5A.2.1-1 in section 6.5.2 of the 3GPP TS 38.101-2 specification and Table 6.5B.2.1.1-1 in section 6.5B of the 3GPP TS 38.101-3 specification. In case of non-contiguous EN-DC consisting of at least one subblock with all E-UTRA carriers, for the E-UTRA subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.6.2.1.5-1, 6.6.2.1.5-2, 6.6.2.1A.1.5-1, and 6.6.2.1A.1.5-2 in section 6.6.2 of the 3GPP TS 36.521-1 specification.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_NS35 (1) The measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.5.2.3.1-1 in section 6.5.2 of the 3GPP TS 38.101-1 specification and Table 6.5B.2.1.2.1-1 in section 6.5B of the 3GPP TS 38.101-3 specification. In case of non-contiguous EN-DC consisting of at least one subblock with all E-UTRA carriers, for the E-UTRA subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.6.2.2.5.5-1 in section 6.6.2 of the 3GPP TS 36.521-1 specification.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_CUSTOM (2) You need to configure the RFMXNR_ATTR_SEM_NUMBER_OF_OFFSETS), RFMXNR_ATTR_SEM_OFFSET_START_FREQUENCY), RFMXNR_ATTR_SEM_OFFSET_STOP_FREQUENCY), RFMXNR_ATTR_SEM_OFFSET_ABSOLUTE_LIMIT_START), RFMXNR_ATTR_SEM_OFFSET_ABSOLUTE_LIMIT_STOP), RFMXNR_ATTR_SEM_OFFSET_SIDEBAND), RFMXNR_ATTR_SEM_OFFSET_RBW_FILTER_BANDWIDTH), RFMXNR_ATTR_SEM_OFFSET_RBW_FILTER_TYPE), and RFMXNR_ATTR_SEM_OFFSET_BANDWIDTH_INTEGRAL) attributes for each offset.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_NS03 (3) TThe measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.5.2.3.3-1 in section 6.5.2 of the 3GPP TS 38.101-1 specification. In case of non-contiguous EN-DC consisting of at least one subblock with all E-UTRA carriers, for the E-UTRA subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.6.2.2.5.1-1 and 6.6.2.2.5.1-2 in section 6.6.2 of the 3GPP TS 36.521-1 specification.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_NS04 (4) The measurement selects the offset frequencies and limits for the SEM as defined in Table 6.5.2.3.2-3 in section 6.5.2 of the 3GPP TS 38.101-1 specification. Subcarrier spacing can be configured through RFMXNR_ATTR_BANDWIDTH_PART_SUBCARRIER_SPACING) attribute. Subcarrier spacing corresponding to first bandwidth part is used for computing mask. Transform precoding can be configured through RFMXNR_ATTR_PUSCH_TRANSFORM_PRECODING_ENABLED) attribute. Transform precoding corresponding to first bandwidth part is used for computing mask. In case of non-contiguous EN-DC consisting of at least one subblock with all E-UTRA carriers, for the E-UTRA subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.6.2.2.3.2-3 in section 6.6.2 of the 3GPP TS 36.521-1 specification.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_NS06 (5) The measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.5.2.3.4-1 in section 6.5.2 of the 3GPP TS 38.101-1 specification. In case of non-contiguous EN-DC consisting of at least one subblock with all E-UTRA carriers, for the E-UTRA subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.6.2.2.5.3-1 and 6.6.2.2.5.3-2 in section 6.6.2 of the 3GPP TS 36.521-1 specification.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_NS21 (6) The measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.5.2.3.3-1 in section 6.5.2 of the 3GPP TS 38.101-1 specification. In case of non-contiguous EN-DC consisting of at least one subblock with all E-UTRA carriers, for the E-UTRA subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.6.2.2.5.1-1 and 6.6.2.2.5.1-2 in section 6.6.2 of the 3GPP TS 36.521-1 specification.
RFMXNR_VAL_SEM_UPLINK_MASK_TYPE_NS27 (7) The measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.5.2.3.8-1 in section 6.5.2 of the 3GPP TS 38.101-1 specification. In case of intra-band contiguous CA consisting of at least one subblock with all NR carriers, for the NR subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.2A.2.3.2.1-1 in section 6.5A.2.3 of the 3GPP TS 38.101-1 specification. In case of non-contiguous EN-DC consisting of at least one subblock with all E-UTRA carriers, for the E-UTRA subblock, the measurement selects the offset frequencies and limits for the SEM, as defined in Table 6.6.2.2.3.4-1 in section 6.6.2 of the 3GPP TS 36.521-1 specification.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgComponentCarrierRatedOutputPower

int32 __stdcall RFmxNR_SEMCfgComponentCarrierRatedOutputPower (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 componentCarrierRatedOutputPower);

Purpose

Configures the rated output power (Prated, x) of the component carrier. Use "carrier<k>" or "subblock<n>/carrier<k>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name, subblock number and carrier number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0/carrier0"
"signal::sig1/subblock0/carrier0"
You can use the RFmxNR_BuildCarrierString) function to build the selector string.
componentCarrierRatedOutputPower float64 Specifies the rated output power (Prated, x), which is used only to choose the limit table for medium range base station, FR2 Category A and FR2 Category B. This value is expressed in dBm. This parameter will be considered when you set the RFMXNR_ATTR_LINK_DIRECTION) attribute to RFMXNR_VAL_LINK_DIRECTION_DOWNLINK, RFMXNR_ATTR_SEM_DOWNLINK_MASK_TYPE) attribute to RFMXNR_VAL_SEM_DOWNLINK_MASK_TYPE_STANDARD, and RFMXNR_ATTR_GNODEB_CATEGORY) attribute to RFMXNR_VAL_GNODEB_CATEGORY_MEDIUM_RANGE_BASE_STATION or FR2 Category A or FR2 Category B. For more details please refer to section 6.6.4 and section 9.7.4 of 3GPP 38.104 specification.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgNumberOfOffsets

int32 __stdcall RFmxNR_SEMCfgNumberOfOffsets (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 numberOfOffsets);

Purpose

Configures the number of offset segments for the SEM measurement. Use "subblock<n>" as the selector string to read results from this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
numberOfOffsets int32 Specifies the number of SEM offset segments.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetFrequency

int32 __stdcall RFmxNR_SEMCfgOffsetFrequency (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 offsetStartFrequency, float64 offsetStopFrequency, int32 offsetSideband);

Purpose

Configures the start and stop frequencies and the sideband of an offset segment. Use "offset<k>" or "subblock<n>" or "subblock<n>/offset<k>" as the selector string to configure or read this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name, subblock number, and offset number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0/offset0"
"signal::sig1/subblock0/offset0"
You can use the RFmxNR_BuildOffsetString) function to build the selector string.
offsetStartFrequency float64 Specifies the start frequency of an offset segment relative to the component carrier bandwidth edge (single carrier) or subblock aggregated channel bandwidth edge (multi-carrier). This value is expressed in Hz.
offsetStopFrequency float64 Specifies the stop frequency of an offset segment relative to the component carrier bandwidth edge (single carrier) or subblock aggregated channel bandwidth edge (multi-carrier). This value is expressed in Hz.
offsetSideband int32 Specifies whether the offset segment is present either on one side or on both sides of a carrier.
RFMXNR_VAL_SEM_OFFSET_SIDEBAND_NEGATIVE (0) Configures a lower offset segment to the left of the leftmost carrier.
RFMXNR_VAL_SEM_OFFSET_SIDEBAND_POSITIVE (1) Configures an upper offset segment to the right of the rightmost carrier.
RFMXNR_VAL_SEM_OFFSET_SIDEBAND_BOTH (2) Configures both the negative and the positive offset segments.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetBandwidthIntegral

int32 __stdcall RFmxNR_SEMCfgOffsetBandwidthIntegral (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 bandwidthIntegral);

Purpose

Configures the bandwidth integral of the offset segments. Use "offset<k>" or "subblock<n>" or "subblock<n>/offset<k>" as the selector string to configure or read this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name, result name, subblock number, carrier number, and offset number. If you do not specify the signal name, the default signal instance is used. If you do not specify the result name, the default result instance is used.
Example:
"subblock0/offset0"
"signal::sig1/subblock0/offset0"
"signal::sig1/result::r1/subblock0/offset0"
"result::r1/subblock0/offset0"
You can use the RFmxNR_BuildOffsetString) function to build the selector string.
bandwidthIntegral int32 Specifies the resolution of a spectrum to compare with the spectral mask limits as an integer multiple of the RBW. When you set this parameter to a value greater than 1, the measurement acquires the spectrum with a narrow resolution and then processes it digitally to get a wider resolution that is equal to the product of a bandwidth integral and a RBW.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetRBWFilter

int32 __stdcall RFmxNR_SEMCfgOffsetRBWFilter (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 offsetRBW, int32 offsetRBWFilterType);

Purpose

Configures the offset RBW and the offset RBW filter type. Use "offset<n>" or "subblock<n>" or "subblock<n>/offset<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name, subblock number, and offset number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0/offset0"
"signal::sig1/subblock0/offset0"
You can use the RFmxNR_BuildOffsetString) function to build the selector string.
offsetRBW float64 Specifies the bandwidth of an RBW filter used to sweep an acquired offset segment. This value is expressed in Hz.
offsetRBWFilterType int32 Specifies the shape of the digital RBW filter.
RFMXNR_VAL_SEM_OFFSET_RBW_FILTER_TYPE_FFT_BASED (0) No RBW filtering is performed.
RFMXNR_VAL_SEM_OFFSET_RBW_FILTER_TYPE_GAUSSIAN (1) The RBW filter has a Gaussian response.
RFMXNR_VAL_SEM_OFFSET_RBW_FILTER_TYPE_FLAT (2) The RBW filter has a flat response.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetLimitFailMask

int32 __stdcall RFmxNR_SEMCfgOffsetLimitFailMask (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 limitFailMask);

Purpose

Configures the limit fail mask of the offset segments that specify the criteria to determine the measurement fail status. Use "offset<n>" or "subblock<n>/"offset<n>" as the selector string to configure or read this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name, subblock number, and offset number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0/offset0"
"signal::sig1/subblock0/offset0"
You can use the RFmxNR_BuildOffsetString) function to build the selector string.
limitFailMask int32 Specifies the criteria to determine the measurement fail status.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetAbsoluteLimit

int32 __stdcall RFmxNR_SEMCfgOffsetAbsoluteLimit (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 absoluteLimitStart, float64 absoluteLimitStop);

Purpose

Configures the start and the stop limit of an offset segment. Use "offset<n>" or "subblock<n>/offset<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name, subblock number, and offset number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0/offset0"
"signal::sig1/subblock0/offset0"
You can use the RFmxNR_BuildOffsetString) function to build the selector string.
absoluteLimitStart float64 Specifies the absolute power limit corresponding to the beginning of an offset segment. This value is expressed in dBm.
absoluteLimitStop float64 Specifies the absolute power limit corresponding to the end of an offset segment. This value is expressed in dBm.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetRelativeLimit

int32 __stdcall RFmxNR_SEMCfgOffsetRelativeLimit (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 relativeLimitStart, float64 relativeLimitStop);

Purpose

Configures the start and stop relative limit of the offset segment. Use "offset<n>" or "subblock<n>" or "subblock<n>/offset<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name, subblock number, and offset number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0/offset0"
"signal::sig1/subblock0/offset0"
You can use the RFmxNR_BuildOffsetString) function to build the selector string.
relativeLimitStart float64 Specifies the relative power limit corresponding to the beginning of the offset segment. This value is expressed in dB.
relativeLimitStop float64 Specifies the relative power limit corresponding to the end of the offset segment. This value is expressed in dB.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

Array Vis

RFmxNR_SEMCfgComponentCarrierRatedOutputPowerArray

int32 __stdcall RFmxNR_SEMCfgComponentCarrierRatedOutputPowerArray (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 componentCarrierRatedOutputPower[], int32 numberOfElements);

Purpose

Configures an array of the rated output power (Prated, x) of the component carrier. Use "subblock<n>" as the selector string to read results from this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
componentCarrierRatedOutputPower float64[] Specifies an array of the rated output power (Prated, x), which is used only to choose the limit table for medium range base station. This value is expressed in dBm. This parameter will be considered when you set the RFMXNR_ATTR_LINK_DIRECTION) attribute to RFMXNR_VAL_LINK_DIRECTION_DOWNLINK, RFMXNR_ATTR_SEM_DOWNLINK_MASK_TYPE) attribute to RFMXNR_VAL_SEM_DOWNLINK_MASK_TYPE_STANDARD, and RFMXNR_ATTR_GNODEB_CATEGORY) attribute to RFMXNR_VAL_GNODEB_CATEGORY_MEDIUM_RANGE_BASE_STATION. For more details please refer to section 6.6.4 of 3GPP 38.104 specification.
numberOfElements int32 Specifies the number of elements in each array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetFrequencyArray

int32 __stdcall RFmxNR_SEMCfgOffsetFrequencyArray (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 offsetStartFrequency[], float64 offsetStopFrequency[], int32 offsetSideband[], int32 numberOfElements);

Purpose

Configures an array of the start and stop frequencies and the sideband of an offset segment. Use "subblock<n>" as the selector string to configure or read this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
offsetStartFrequency float64[] Specifies an array of the start frequencies of an offset segment relative to the component carrier bandwidth edge (single carrier) or subblock aggregated channel bandwidth edge (multi-carrier). This value is expressed in Hz.
offsetStopFrequency float64[] Specifies an array of the stop frequencies of an offset segment relative to the component carrier bandwidth edge (single carrier) or subblock aggregated channel bandwidth edge (multi-carrier). This value is expressed in Hz.
offsetSideband int32[] Specifies an array of whether the offset segment is present either on one side or on both sides of a carrier.
RFMXNR_VAL_SEM_OFFSET_SIDEBAND_NEGATIVE (0) Configures a lower offset segment to the left of the leftmost carrier.
RFMXNR_VAL_SEM_OFFSET_SIDEBAND_POSITIVE (1) Configures an upper offset segment to the right of the rightmost carrier.
RFMXNR_VAL_SEM_OFFSET_SIDEBAND_BOTH (2) Configures both the negative and the positive offset segments.
numberOfElements int32 Specifies the number of elements in each array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetBandwidthIntegralArray

int32 __stdcall RFmxNR_SEMCfgOffsetBandwidthIntegralArray (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 bandwidthIntegral[], int32 numberOfElements);

Purpose

Configures an array of the bandwidth integral of the offset segments. Use "subblock<n>" as the selector string to configure or read this attribute.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
bandwidthIntegral int32[] Specifies an array of the resolution of a spectrum to compare with the spectral mask limits as an integer multiple of the RBW. When you set this parameter to a value greater than 1, the measurement acquires the spectrum with a narrow resolution and then processes it digitally to get a wider resolution that is equal to the product of a bandwidth integral and a RBW.
numberOfElements int32 Specifies the number of elements in each array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetRBWFilterArray

int32 __stdcall RFmxNR_SEMCfgOffsetRBWFilterArray (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 offsetRBW[], int32 offsetRBWFilterType[], int32 numberOfElements);

Purpose

Configures the offset RBW and the offset RBW filter type array. Use "subblock<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
offsetRBW float64[] Specifies an array of the bandwidth of an RBW filter used to sweep an acquired offset segment. This value is expressed in Hz.
offsetRBWFilterType int32[] Specifies an array of the shape of the digital RBW filter.
RFMXNR_VAL_SEM_OFFSET_RBW_FILTER_TYPE_FFT_BASED (0) No RBW filtering is performed.
RFMXNR_VAL_SEM_OFFSET_RBW_FILTER_TYPE_GAUSSIAN (1) The RBW filter has a Gaussian response.
RFMXNR_VAL_SEM_OFFSET_RBW_FILTER_TYPE_FLAT (2) The RBW filter has a flat response.
numberOfElements int32 Specifies the number of elements in each array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetLimitFailMaskArray

int32 __stdcall RFmxNR_SEMCfgOffsetLimitFailMaskArray (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 limitFailMask[], int32 numberOfElements);

Purpose

Configures an array of the limit fail mask of the offset segments that specifies the criteria to determine the measurement fail status. Use "subblock<n>" as the selector string to configure or read this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
limitFailMask int32[] Specifies an array of the criteria to determine the measurement fail status.
numberOfElements int32 Specifies the number of elements in each array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetAbsoluteLimitArray

int32 __stdcall RFmxNR_SEMCfgOffsetAbsoluteLimitArray (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 absoluteLimitStart[], float64 absoluteLimitStop[], int32 numberOfElements);

Purpose

Configures an array of the start limit and the stop limit of the offset segments. Use "subblock<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
absoluteLimitStart float64[] Specifies an array of the absolute power limit corresponding to the beginning of an offset segment. This value is expressed in dBm.
absoluteLimitStop float64[] Specifies an array of the absolute power limit corresponding to the end of an offset segment. This value is expressed in dBm.
numberOfElements int32 Specifies the number of elements in each array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_SEMCfgOffsetRelativeLimitArray

int32 __stdcall RFmxNR_SEMCfgOffsetRelativeLimitArray (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 relativeLimitStart[], float64 relativeLimitStop[], int32 numberOfElements);

Purpose

Configures an array of the start and stop relative limit of the offset segment. Use "subblock<n>" as the selector string to configure this function.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name and the subblock number. If you do not specify the signal name, the default signal instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
relativeLimitStart float64[] Specifies an array of the relative power limit corresponding to the beginning of the offset segment. This value is expressed in dB.
relativeLimitStop float64[] Specifies an array of the relative power limit corresponding to the end of the offset segment. This value is expressed in dB.
numberOfElements int32 Specifies the number of elements in each array.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_BuildSubblockString

int32 __stdcall RFmxNR_BuildSubblockString (char selectorString[], int32 subblockNumber, int32 selectorStringOutLength, char selectorStringOut[]);

Purpose

Creates the subblock string.

Parameters

Input
Name Type Description
selectorString char[] Specifies a selector string) comprising of the signal name and the result name. If you do not specify the signal name, the default signal instance is used. If you do not specify the result name, the default result instance is used.
Example:
"signal::sig1"
"result::r1"
"signal::sig1/result::r1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
subblockNumber int32 Specifies the number of subblocks that are configured in the non-contiguous carrier aggregation. Set this parameter to 1, which is the default, for single carrier and intra-band contiguous carrier aggregation.
selectorStringOutLength int32 Specifies the length of the string that is returned by the selectorStringOut parameter. To get the minimum buffer size required to build the selector string, set the selectorStringOutLength parameter to 0.
Output
Name Type Description
selectorStringOut char[] Returns the selector string.

Return Value

Name Type Description

RFmxNR_BuildOffsetString

int32 __stdcall RFmxNR_BuildOffsetString (char selectorString[], int32 offsetNumber, int32 selectorStringOutLength, char selectorStringOut[]);

Purpose

Creates the offset string.

Parameters

Input
Name Type Description
selectorString char[] Specifies a selector string) comprising of the signal name, result name, and subblock number. If you do not specify the signal name, the default signal instance is used. If you do not specify the result name, the default result instance is used.
Example:
"subblock0"
"signal::sig1/subblock0"
"result::r1/subblock0"
"signal::sig1/result::r1/subblock0"
You can use the RFmxNR_BuildSubblockString) function to build the selector string.
offsetNumber int32 Specifies the offset number for building the selector string.
selectorStringOutLength int32 Specifies the length of the string that is returned by the selectorStringOut parameter. To get the minimum buffer size required to build the selector string, set the selectorStringOutLength parameter to 0.
Output
Name Type Description
selectorStringOut char[] Returns the selector string.

Return Value

Name Type Description

Pvt

RFmxNR_PVTCfgAveraging

int32 __stdcall RFmxNR_PVTCfgAveraging (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 averagingEnabled, int32 averagingCount, int32 averagingType);

Purpose

Configures averaging for the PVT measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
averagingEnabled int32 Specifies whether to enable averaging for the measurement.
RFMXNR_VAL_PVT_AVERAGING_ENABLED_FALSE (0) The measurement is performed on a single acquisition.
RFMXNR_VAL_PVT_AVERAGING_ENABLED_TRUE (1) The measurement is averaged over multiple acquisitions. The number of acquisitions is obtained by the averagingCount parameter.
averagingCount int32 Specifies the number of acquisitions used for averaging when you set the averagingEnabled parameter to RFMXNR_VAL_PVT_AVERAGING_ENABLED_TRUE.
averagingType int32 Specifies the averaging type for averaging multiple spectrum acquisitions. The averaged spectrum is used for the measurement.
RFMXNR_VAL_PVT_AVERAGING_TYPE_RMS (0) The power spectrum is linearly averaged. RMS averaging reduces signal fluctuations but not the noise floor.
RFMXNR_VAL_PVT_AVERAGING_TYPE_LOG (1) The power spectrum is averaged in a logarithmic scale.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_PVTCfgMeasurementMethod

int32 __stdcall RFmxNR_PVTCfgMeasurementMethod (niRFmxInstrHandle instrumentHandle, char selectorString[], int32 measurementMethod);

Purpose

Configures the measurement method for PVT measurement.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
measurementMethod int32 Specifies the method for performing the PVT measurement.
RFMXNR_VAL_PVT_MEASUREMENT_METHOD_NORMAL (0) The measurement is performed using a single acquisition. Use this method when a high dynamic range is not required.
RFMXNR_VAL_PVT_MEASUREMENT_METHOD_DYNAMIC_RANGE (1) The measurement is performed using two acquisitions. Use this method when a higher dynamic range is desirable over the measurement speed. supportedDevices: PXIe-5644R/5645R/5646R, PXIe-5840/5841.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

RFmxNR_PVTCfgOFFPowerExclusionPeriods

int32 __stdcall RFmxNR_PVTCfgOFFPowerExclusionPeriods (niRFmxInstrHandle instrumentHandle, char selectorString[], float64 OFFPowerExclusionBefore, float64 OFFPowerExclusionAfter);

Purpose

Configures the time excluded from the off region before and after the burst.

Parameters

Input
Name Type Description
instrumentHandle niRFmxInstrHandle Specifies the instrument session. The RFmx driver obtains this parameter from the RFmxNR_Initialize) function.
selectorString char[] Specifies a selector string) comprising of the signal name. If you do not specify the signal name, the default signal instance is used.
Example:
"signal::sig1"
You can use the RFmxNR_BuildSignalString) function to build the selector string.
OFFPowerExclusionBefore float64 Specifies the time excluded from the Off region before the burst. This value is expressed in seconds.
OFFPowerExclusionAfter float64 Specifies the time excluded from the Off region after the burst. This value is expressed in seconds.

Return Value

Name Type Description
status int32 Returns the status code of this operation. The status code either indicates success or describes an error or warning condition. Examine the status code from each call to an RFmx function to determine if an error has occurred.

To obtain a text description of the status code and additional information about the error condition, call the RFmxNR_GetError) function.

The general meaning of the status code is as follows:
Value Meaning
0 Success
Positive Values Warnings
Negative Values Errors

Table of Contents

Internal Development

Creating and Setting Up a gRPC Server

Server Security Support

Creating a gRPC Client

gRPC Client Examples

Session Utilities API Reference

Driver Documentation

gRPC API Differences From C API

Sharing Driver Sessions Between Clients

C API Docs
NI-DAQmx
NI-DCPOWER
NI-DIGITAL PATTERN DRIVER
NI-DMM
NI-FGEN
NI-FPGA
NI-RFmx Bluetooth
NI-RFmx NR
NI-RFmx WCDMA
NI-RFmx GSM
NI-RFmx CDMA2k
NI-RFmx Instr
NI-RFmx LTE
NI-RFmx SpecAn
NI-RFmx TD-SCDMA
NI-RFmx WLAN
NI-RFSA
NI-RFSG
NI-SCOPE
NI-SWITCH
NI-TCLK
NI-XNET
Clone this wiki locally