WARP Project Forums - Wireless Open-Access Research Platform

You are not logged in.

#1 2017-May-30 12:33:20

jcrawford87
Member
Registered: 2015-May-20
Posts: 3

Measuring Tx Power

Hello,

I want to compare the performance of a few different waveforms for the same Tx power. Can I measure the total Tx power via warplab? 

Thanks.

Edit:
I also want to measurement the RSSI in dBm while AGC is in use. I have found the following code to calculate the RSSI in dBm.

Code:

function [ RSSI_dBm ] = RSSI_conversion( RSSI, RxGainRF )

if RxGainRF==1
    RSSI_dBm = 200/3069*RSSI-125/2;
elseif RxGainRF==2
    RSSI_dBm = 200/3069*RSSI-155/2;
elseif RxGainRF==3
    RSSI_dBm = 200/3069*RSSI-280/3;
end
end

However it requires the RxGainRF value to return the correct RSSI value in dBm. I have tried to using "wl_basebandCmd(nodes, 'agc_state')" to return the RxGainRF but I get the following error.

Code:

Undefined function or variable 'buffSel'.

Error in wl_baseband_buffers/procCmd (line 894)
                    for ifcIndex = length(buffSel):-1:1

Error in wl_baseband_buffers/subsref (line 142)
            varargout{:} = builtin('subsref', obj, S);

Error in wl_node/wl_basebandCmd (line 298)
                    out(n) = currNode.baseband.procCmd(n, currNode, varargin{:});

Error in MCIK_OFDM_WARP (line 364)
            wl_basebandCmd(nodes, 'agc_state')

How can I fix this? Is there another way to find the RSSI?

Last edited by jcrawford87 (2017-May-31 06:04:51)

Offline

 

#2 2017-May-31 09:32:02

chunter
Administrator
From: Mango Communications
Registered: 2006-Aug-24
Posts: 1212

Re: Measuring Tx Power

jcrawford87 wrote:

I want to compare the performance of a few different waveforms for the same Tx power. Can I measure the total Tx power via warplab?

The best way to measure Tx power for a given waveform would be to use external test equipment like a spectrum analyzer or VSA. For the 802.11 Reference Design, we used a Keysight N4010A Wireless Connectivity Test Set for our transmit power characterization.

jcrawford87 wrote:

I also want to measurement the RSSI in dBm while AGC is in use. I have found the following code to calculate the RSSI in dBm.

Code:

function [ RSSI_dBm ] = RSSI_conversion( RSSI, RxGainRF )

if RxGainRF==1
    RSSI_dBm = 200/3069*RSSI-125/2;
elseif RxGainRF==2
    RSSI_dBm = 200/3069*RSSI-155/2;
elseif RxGainRF==3
    RSSI_dBm = 200/3069*RSSI-280/3;
end
end

However it requires the RxGainRF value to return the correct RSSI value in dBm. I have tried to using "wl_basebandCmd(nodes, 'agc_state')" to return the RxGainRF but I get the following error.

Code:

Undefined function or variable 'buffSel'.

Error in wl_baseband_buffers/procCmd (line 894)
                    for ifcIndex = length(buffSel):-1:1

Error in wl_baseband_buffers/subsref (line 142)
            varargout{:} = builtin('subsref', obj, S);

Error in wl_node/wl_basebandCmd (line 298)
                    out(n) = currNode.baseband.procCmd(n, currNode, varargin{:});

Error in MCIK_OFDM_WARP (line 364)
            wl_basebandCmd(nodes, 'agc_state')

How can I fix this? Is there another way to find the RSSI?

Regarding the error, the agc_state command requires that you specify a an interface that you want to pull the AGC state from (i.e. "Requires BUFF_SEL"). So, for example, if you wanted to know the AGC state employed for the RFA interface after a capture you would call:

Code:

wl_basebandCmd(nodes, ifc_ids_RX.RF_A, 'agc_state')

where "ifc_ids_RX" can be retrieved from the "wl_getInterfaceIDs()" method.

Broadly speaking, those equations are just a best fit line of the "RX RSSI OUTPUT vs. INPUT POWER" graph on page 16 of the MAX2829 data sheet. You can see a good discussion about how to interpret RSSI here, here and here.

If you are trying to use RSSI of one kit to measure the Tx power of another kit, keep in mind that there are two unknowns in this kind of experiment -- the exact Tx power you want to measure and the exact mapping of RSSI to Rx power on the other kit. You're going to have better accuracy with calibrated lab test equipment to provide some ground truth.

Offline

 

Board footer