<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><br>Hello Marcus,<div><br></div><div>Thank you for sharing your expertise.</div><div><br></div><div>1.  I am using the narrowband one for both benchmark{tx,rx}.</div><div><br></div><div>2. What you have suggested in reference [1], I am following the same only to read the complex data captured. After decoding the data using the Octave/Matlab script, I am saving that file as .mat file.</div><div><br></div><div>3. Yes ! I am trying to get overall average received power only.</div><div><br></div><div>I would follow up the suggestions you have mentioned for validation using --from-file option in the benchmark_rx script.</div><div><br></div><div><br></div><div>Thank you for your time  :)</div><div><br></div><div>Regards,</div><div><br></div><div>Alok Ranjan </div><div><br></div><div><br><div><hr id="stopSpelling">Date: Wed, 14 Oct 2015 17:08:33 +0200<br>To: usrp-users@lists.ettus.com<br>Subject: Re: [USRP-users] Question related to captured data validation<br>From: usrp-users@lists.ettus.com<br><br>
  
    
  
  
    Hi Alok,<br>
    <br>
    a few general notes:<br>
    <blockquote>For my initial studies I am using <b>benchmark_tx
      </b> programme for transmitting the signals and <b>benchmark_rx</b>
      for the reception purpose.</blockquote>
    There's two of them, a narrowband one and an OFDM one. Which one are
    you using?<br>
    <blockquote>
      <div><b>In the next step, i am converting the complex data
          captured (using the uhd_rx_cfile) into .mat format with the
          help of "Octave".</b></div>
    </blockquote>
    You don't have to do that. There's a matlab/octave script within GNU
    Radio, called "gr-utils/octave/read_complex_binary.m" [1] that just
    reads the samples from the file without any conversion!<br>
    <br>
    <blockquote>
      <div>I would like to know that how to validate that the data i
        have captured using uhd_rx_cfile is valid and having the
        information of transmitted signals.</div>
    </blockquote>
    Well, the only 100% correct way to do that is to decode and validate
    the data using benchmark_rx. It has a --from-file option, so you can
    read samples stored in a file!<br>
    <blockquote>
      <div> Also, is it a good practice to use the converted .mat data
        to extract the Average RSSI per samples using the convolution
        formula i.e.</div>
      <div><br>
      </div>
      <div><b>Conv(abs(IQ data vector).^2, ones(1,N)/N,'valid').</b></div>
    </blockquote>
    abs(IQ data vector).^2 is element-wise magnitude squared; I'm not
    quite sure why you're convolving that with a 1-vector, but I assume
    you want to apply a moving average on these digital power samples,
    which does sound like a good idea to measure RX signal strength. <br>
    However, I'd argue that RSSI ("received signal strength indicator")
    needs to figure out what in your RX signal is noise, and what's
    signal power (otherwise, you could just put your receive antenna in
    a microwave oven, and turn it on[2] to maximize RSSI). But: To my
    knowledge, there's no "canonical" definition of RSSI (which makes it
    a "bad" measure, in my humble opinion), so you can also say that
    RSSI is only the strength of the overall received signal, in which
    case your approach is correct.<br>
    <br>
    It might be worthwhile noting that for the simpler
    benchmark_{rx,tx}, namely the narrowband one, you can just apply the
    pulse shaping filter to get a matched filter response. That will
    maximize SNR in the post-filter signal, and the power of that hence
    can be a useful signal quality indicator.<br>
    <br>
    Best regards,<br>
    Marcus<br>
    <br>
    <br>
    [1]
<a class="ecxmoz-txt-link-freetext" href="https://github.com/gnuradio/gnuradio/blob/master/gr-utils/octave/read_complex_binary.m" target="_blank">https://github.com/gnuradio/gnuradio/blob/master/gr-utils/octave/read_complex_binary.m</a><br>
    [2] Please don't do that.<br>
    <br>
    <br>
    <div class="ecxmoz-cite-prefix">On 10/14/2015 06:16 AM, alok ranjan via
      USRP-users wrote:<br>
    </div>
    <blockquote cite="mid:BAY168-W58A3CBEF54668CA34B38E1E93F0@phx.gbl">
      <style><!--
.ExternalClass .ecxhmmessage P {
padding:0px;
}

.ExternalClass body.ecxhmmessage {
font-size:12pt;
font-family:Calibri;
}

--></style>
      <div dir="ltr">Hello All,
        <div><br>
        </div>
        <div>I am using two USRP N210, one as a transmitter and another
          one as a receiver both are connected to the same host.</div>
        <div><br>
        </div>
        <div>However, both  USRPs are separated from each other (say 2,
          4, 6, 8, 10 meters). </div>
        <div><br>
        </div>
        <div>For my initial studies I am using <b>benchmark_tx </b> programme
          for transmitting the signals and <b>benchmark_rx</b> for the
          reception purpose.</div>
        <div><br>
        </div>
        <div>Next, I am capturing the transmitted base band signals
          (Complex) using the <b>uhd_rx_cfile</b> with all the valid
          assignments to be passed. I am giving  all the valid
          configuration same as the configuration maintained while
          reception.</div>
        <div><br>
        </div>
        <div><b>In the next step, i am converting the complex data
            captured (using the uhd_rx_cfile) into .mat format with the
            help of "Octave".</b></div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>I would like to know that how to validate that the data i
          have captured using uhd_rx_cfile is valid and having the
          information of transmitted signals.</div>
        <div><br>
        </div>
        <div> Also, is it a good practice to use the converted .mat data
          to extract the Average RSSI per samples using the convolution
          formula i.e.</div>
        <div><br>
        </div>
        <div><b>Conv(abs(IQ data vector).^2, ones(1,N)/N,'valid').</b></div>
        <div><b><br>
          </b></div>
        <div><b><br>
          </b></div>
        <div>Any help in this matter is appreciated. </div>
        <div><br>
        </div>
        <div>Thank you, regards</div>
        <div><br>
        </div>
        <div>Alok Ranjan</div>
      </div>
      <br>
      <fieldset class="ecxmimeAttachmentHeader"></fieldset>
      <br>
      <pre>_______________________________________________
USRP-users mailing list
<a class="ecxmoz-txt-link-abbreviated" href="mailto:USRP-users@lists.ettus.com">USRP-users@lists.ettus.com</a>
<a class="ecxmoz-txt-link-freetext" href="http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com" target="_blank">http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com</a>
</pre>
    </blockquote>
    <br>
  

<br>_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com</div></div>                                        </div></body>
</html>