[Discuss-gnuradio] OFDM Receiver

2017-02-22 Thread MUHAMMAD AHMAD
Hi,

I am referring the built in  example of gnuradio companion  ( rx_ofdm.grc).
In which I replace random source with usrp source.
on Transmetter side I am sending some bits and in receiver flow graph
(rx_ofdm ) I am facing problem where I have to attach file sink to get
 these bits.

I attached *File sink block* after *bits repack* block but I did not
get any data in file.
I also have attached *File sink after stream CRC32 block but*  I did not
get data in file.

Kindly inform if possible where I have to attach file sink in flow graph to
get receiving bits.

Here is an Attached flow graph modified form of (rx_ofdm)

Thanks in anticipation.


finaloftm_rx.grc
Description: Binary data
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver

2017-02-22 Thread Marcus Müller
Hi Muhammad,

sadly, it's not very clear what you're asking about.

* Which flow graph are you referring to?
* What is your precise problem, and what have you tried to solve it so
far? How can we help you with that?

Best regards,

Marcus

On 02/22/2017 02:05 PM, MUHAMMAD AHMAD wrote:
> How can I receive  bits using file sink in ofdm receiver.
> where I have to connect  file sink in flow graph of ofdm receiver?
> either bits repack block output can give bits?
>
>
> ___
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] OFDM receiver

2017-02-22 Thread MUHAMMAD AHMAD
How can I receive  bits using file sink in ofdm receiver.
where I have to connect  file sink in flow graph of ofdm receiver?
either bits repack block output can give bits?
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver error, FATAL: Missing a required length tag on port 0 at item #0

2014-07-01 Thread Wafa Elhajhmida
Hi, thank you for your response.

In fact, I still have the same error:
 FATAL: Missing a required length tag on port 0 at item #0
 thread[thread-per-block[21]: gr_block crc 32_bb (9)]: Missing length
tag.
and UOO
I put the usrp sink and usrp source 's sample rate to 1M.

What is the suitable sampling rate to put ?

Thanks in advance




2014-06-30 16:36 GMT+02:00 Philip Balister phi...@balister.org:

 On 06/30/2014 09:20 AM, Wafa Elhajhmida wrote:
  Hi,
 
  I implemented OFDM receiver on USRP E110 using the OFDM receiver in
  examples in gnuradio's files 3.7
 
  and I added to it a chain to create OFDM transmitter: random source, OFDM
  transmitter, channel model,  throttle, USRP sink
 
  But when I executed the flow graph. It generated UOO
 and
  I got an error :

 Slow the data rate until this message stops. Then worry about the next
 message.

 Philip

 
  FATAL: Missing a required length tag on port 0 at item #0
   thread[thread-per-block[21]: gr_block crc 32_bb (9)]: Missing length
  tag.
 
  and tag debug didn't show anything.
 
  Have you an idea how to fix this error ?
 
  Thanks in advance
 
 
 
  ___
  Discuss-gnuradio mailing list
  Discuss-gnuradio@gnu.org
  https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
 

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] OFDM receiver error, FATAL: Missing a required length tag on port 0 at item #0

2014-06-30 Thread Wafa Elhajhmida
Hi,

I implemented OFDM receiver on USRP E110 using the OFDM receiver in
examples in gnuradio's files 3.7

and I added to it a chain to create OFDM transmitter: random source, OFDM
transmitter, channel model,  throttle, USRP sink

But when I executed the flow graph. It generated UOO and
I got an error :

FATAL: Missing a required length tag on port 0 at item #0
 thread[thread-per-block[21]: gr_block crc 32_bb (9)]: Missing length
tag.

and tag debug didn't show anything.

Have you an idea how to fix this error ?

Thanks in advance
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver error, FATAL: Missing a required length tag on port 0 at item #0

2014-06-30 Thread Martin Braun
On 06/30/2014 03:20 PM, Wafa Elhajhmida wrote:
 FATAL: Missing a required length tag on port 0 at item #0 
 thread[thread-per-block[21]: gr_block crc 32_bb (9)]: Missing length tag. 

Add a stream to tagged stream converter.

M


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2011-01-18 Thread Tom Rondeau
On Mon, Jan 17, 2011 at 7:58 PM, Guanbo gbzh...@gmail.com wrote:

 Hi,

 I feel like the output of coarse frequency offset is very inaccurate. Or
 probably it is not directly related.

 For best test, I tried higher resolution of subcarrier bandwidth by
 selecting the large FFT length, high Interp/decim rate,
 as follows:
 @TX:   $ sudo python benchmark_ofdm_tx_new.py  --mac-addr=ADD -m qpsk -f
 2.462G -i 512 --tx-gain=30 --fft-length=2048 --occupied-tones=200
 @RX:   $ sudo python benchmark_ofdm_rx_new.py  --mac-addr=ADD -m qpsk  -f
 2.462G -d 512 --rx-gain=30 --fft-length=2048 --occupied-tones=200

 From ofdm_frame_acquisition.cc, I can output d_coarse_freq.
 Therefore, I can calculate the coarse frequency offset by:  (ADC rate /
 Decim rate / FFT_len) * d_coarse_freq

 But  the results I have obtained does not match the real frequency offset.
 From the command above, I obtained the d_coarse_freq = 2  -- 190 Hz
 By moving the RX center frequency to 2.46202G (20KHz offset), the output
 d_coarse_freq is -64  -- -6103Hz

 I tried to look into the problem by changing the filter BW line 66-68 of
 ofdm_receiver.py, as well as shift length at line 109.
 But they does not work out.

 Would anyone can help to explain the problem here? Really appreciate :)

 Thanks,
 Guanbo


I know this doesn't directly answer your question, but I know that
Matt and I performed the exact same tests when we developed the OFDM
code to make sure that the coarse frequency offset followed the input
frequency offset that we used. So if one subcarrier in your case is
~95 Hz, we could easily track the coarse frequency offset output and
match up our results.

One problem that you seem to have is that a 20 kHz is completely
outside your channel. If I've done my math correctly, 20 kHz is almost
210 subcarriers and you are only using 200, so you are out of the
receiver's channel by about 110 bins.

Tom


 Tom Rondeau wrote:

 On 2/20/2010 7:43 PM, Srinivas wrote:
 Hi Tom,

 I tried increasing the bandwidth of the filter and also tried changing
 the window type to KAISER, but it didn't improve on the offset error.
 I am getting a constant frequency offset value -10. Currently, I am
 just compensating for the offset at the receiver or specifying a
 minimum BW to be used for that pair of USRP2s.

 Thanks a lot for your time.

 Srinivas

 Changing the window type isn't going to help much with this problem.
 What I was suggesting was that the filter is too small, not the wrong
 type. Also, the only way to change the offset value is to actually move
 the frequency. I was just suggesting that you see what that value is to
 see how many bins you are off by (i.e., calculate the bandwidth of a
 subcarrier and multiply that by 10; that's you're coarse offset). You
 can use that to see how much bigger to make the channel filter's
 bandwidth.

 Tom



 On Thu, Feb 18, 2010 at 9:45 AM, Tom Rondeau trondeau1...@gmail.com
 mailto:trondeau1...@gmail.com wrote:

     On Thu, Feb 18, 2010 at 12:49 AM, Srinivas psriniva...@gmail.com
     mailto:psriniva...@gmail.com wrote:
      Hi Tom, Matt
     
      replied inline:
     
      On Wed, Feb 17, 2010 at 10:26 AM, Tom Rondeau
     trondeau1...@gmail.com mailto:trondeau1...@gmail.com
      wrote:
     
      On Tue, Feb 16, 2010 at 5:45 PM, Srinivas
     psriniva...@gmail.com mailto:psriniva...@gmail.com wrote:
       Matt,
      
       Thanks for verifying the data rate calculation!
      
       I tried the other solutions that you suggested, namely,
      
       - increasing the data rate by a factor of 2 or 4
       It works.
      
       - modifying the OFDM code to widen the search range - How do
     I widen the
       search range ?
       Should I be looking in the ofdm_sync_ blocks in blks2impl
     folder ?
       If
       yes, which synchronizer is currently used with ofdm_examples ?
     
      You need to add an argument to gr.ofdm_frame_acquisition in
      ofdm_receiver.py (in python/gnuradio/blks2impl).
     
      In the current Git master, this is located on line 109 of
      ofdm_receiver.py. After the ks[0] argument, you can put in an
      integer. This is the maximum number of bins the receiver will
     search
      over for correlation. It defaults to 10.
     
      I added this extra argument and tried changing the values from
     10 to 100. I
      also tried with int(0.5*occupied_tones)  as the argument, but
     it doesn't
      receive for lower data rates ( 1M). Only when I increase the
     data rate 
      1.2M, I start receiving some pkts.
     
      As mentioned before, when I compensate for the frequency offset
     at the
      receiver it starts receiving packets successfully too.

     For small bandwidths, it's possible that the frequency offset has
     pushed you outside of the channel filter. The filter is probably
     specified too tight and is really supposed to cover only the occupied
     tones, so if you're too far away from the center frequency, the
     

Re: [Discuss-gnuradio] OFDM receiver on USRP2

2011-01-17 Thread Guanbo

Hi,

I feel like the output of coarse frequency offset is very inaccurate. Or
probably it is not directly related.

For best test, I tried higher resolution of subcarrier bandwidth by
selecting the large FFT length, high Interp/decim rate, 
as follows:
@TX:   $ sudo python benchmark_ofdm_tx_new.py  --mac-addr=ADD -m qpsk -f
2.462G -i 512 --tx-gain=30 --fft-length=2048 --occupied-tones=200
@RX:   $ sudo python benchmark_ofdm_rx_new.py  --mac-addr=ADD -m qpsk  -f
2.462G -d 512 --rx-gain=30 --fft-length=2048 --occupied-tones=200

From ofdm_frame_acquisition.cc, I can output d_coarse_freq.
Therefore, I can calculate the coarse frequency offset by:  (ADC rate /
Decim rate / FFT_len) * d_coarse_freq

But  the results I have obtained does not match the real frequency offset.
From the command above, I obtained the d_coarse_freq = 2  -- 190 Hz
By moving the RX center frequency to 2.46202G (20KHz offset), the output
d_coarse_freq is -64  -- -6103Hz

I tried to look into the problem by changing the filter BW line 66-68 of
ofdm_receiver.py, as well as shift length at line 109.
But they does not work out.

Would anyone can help to explain the problem here? Really appreciate :)

Thanks,
Guanbo 



Tom Rondeau wrote:
 
 On 2/20/2010 7:43 PM, Srinivas wrote:
 Hi Tom,

 I tried increasing the bandwidth of the filter and also tried changing 
 the window type to KAISER, but it didn't improve on the offset error. 
 I am getting a constant frequency offset value -10. Currently, I am 
 just compensating for the offset at the receiver or specifying a 
 minimum BW to be used for that pair of USRP2s.

 Thanks a lot for your time.

 Srinivas
 
 Changing the window type isn't going to help much with this problem. 
 What I was suggesting was that the filter is too small, not the wrong 
 type. Also, the only way to change the offset value is to actually move 
 the frequency. I was just suggesting that you see what that value is to 
 see how many bins you are off by (i.e., calculate the bandwidth of a 
 subcarrier and multiply that by 10; that's you're coarse offset). You 
 can use that to see how much bigger to make the channel filter's
 bandwidth.
 
 Tom
 
 

 On Thu, Feb 18, 2010 at 9:45 AM, Tom Rondeau trondeau1...@gmail.com 
 mailto:trondeau1...@gmail.com wrote:

 On Thu, Feb 18, 2010 at 12:49 AM, Srinivas psriniva...@gmail.com
 mailto:psriniva...@gmail.com wrote:
  Hi Tom, Matt
 
  replied inline:
 
  On Wed, Feb 17, 2010 at 10:26 AM, Tom Rondeau
 trondeau1...@gmail.com mailto:trondeau1...@gmail.com
  wrote:
 
  On Tue, Feb 16, 2010 at 5:45 PM, Srinivas
 psriniva...@gmail.com mailto:psriniva...@gmail.com wrote:
   Matt,
  
   Thanks for verifying the data rate calculation!
  
   I tried the other solutions that you suggested, namely,
  
   - increasing the data rate by a factor of 2 or 4
   It works.
  
   - modifying the OFDM code to widen the search range - How do
 I widen the
   search range ?
   Should I be looking in the ofdm_sync_ blocks in blks2impl
 folder ?
   If
   yes, which synchronizer is currently used with ofdm_examples ?
 
  You need to add an argument to gr.ofdm_frame_acquisition in
  ofdm_receiver.py (in python/gnuradio/blks2impl).
 
  In the current Git master, this is located on line 109 of
  ofdm_receiver.py. After the ks[0] argument, you can put in an
  integer. This is the maximum number of bins the receiver will
 search
  over for correlation. It defaults to 10.
 
  I added this extra argument and tried changing the values from
 10 to 100. I
  also tried with int(0.5*occupied_tones)  as the argument, but
 it doesn't
  receive for lower data rates ( 1M). Only when I increase the
 data rate 
  1.2M, I start receiving some pkts.
 
  As mentioned before, when I compensate for the frequency offset
 at the
  receiver it starts receiving packets successfully too.

 For small bandwidths, it's possible that the frequency offset has
 pushed you outside of the channel filter. The filter is probably
 specified too tight and is really supposed to cover only the occupied
 tones, so if you're too far away from the center frequency, the
 filter's already hitting it and no amount of frequency correction
 after that will work.

 In ofdm_receiver.py, try making the bandwidth term (bw on line 66)
 wider and see what that does for you.

 Also, you can print out d_coarse_freq calculated on line 130 in
 gr_ofdm_frame_acquisition.cc. This is the number of bins you're off
 by
 that you can use to get a feel for how far away in frequency you are.

 If opening up the filter works for you, please let us know. We might
 want to either parameterize the bandwidth or just set it wider by
 default.

 Tom




 -- 
 Srinivas
 WINLAB, Rutgers University
 New Jersey
 
 
 

Re: [Discuss-gnuradio] OFDM receiver on USRP2

2011-01-13 Thread Tom Rondeau
On Wed, Jan 12, 2011 at 7:36 PM, Guanbo gbzh...@gmail.com wrote:

 Hi, Tom

 I am not quite understand the ofdm_sync_xx.cc in python/gnuradio/blks2impl/.

 What is the difference between frequency synchronization and carrier
 frequency offset.
 Why we have to do the timing and frequency synchronization before it?

 Thanks,
 Guanbo

There is the difference between the fine frequency tuning (centering
the signal inside of a subcarrier) and coarse frequency tunning
(making sure that subcarrier 0 is at the correct location). The
ofdm_sync_xx blocks perform the timing and fine frequency calculations
(the self.nco in ofdm_receiver.py is generated from the fine frequency
offset from the sync block). This is required before being able to
perform the FFT demo, or else you'll get inter-carrier interference.

We can then go into the frequency domain (after the FFT) and work on
the subcarrier bins to handle the coarse frequency offset, since it is
easier to do in this domain.

Tom



 Tom Rondeau wrote:

 On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com wrote:
 Matt,

 Thanks for verifying the data rate calculation!

 I tried the other solutions that you suggested, namely,

 - increasing the data rate by a factor of 2 or 4
 It works.

 - modifying the OFDM code to widen the search range - How do I widen the
 search range ?
 Should I be looking in the ofdm_sync_ blocks in blks2impl folder ? If
 yes, which synchronizer is currently used with ofdm_examples ?

 You need to add an argument to gr.ofdm_frame_acquisition in
 ofdm_receiver.py (in python/gnuradio/blks2impl).

 In the current Git master, this is located on line 109 of
 ofdm_receiver.py. After the ks[0] argument, you can put in an
 integer. This is the maximum number of bins the receiver will search
 over for correlation. It defaults to 10.


 - locking the usrps to a common reference
 My usrp2s are located wide apart so I guess this solution is not
 practical.

 Besides, this confirms that the problem is somewhere in the USRP2 board,
 right ? (as I tried swapping the daughter cards  firmware with the
 working
 pair)

 Thanks,
 Srinivas

 Nope, this is typical of radio hardware. They are always off
 frequency. If two oscillators are off frequency and then multiplied up
 to another frequency, the difference will also be magnified. So a 2.4
 GHz board will have a larger frequency offset than if you ran it just
 through the BasicTx/Rx boards (even though the ratios should be the
 same).

 Tom


 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio



 --
 View this message in context: 
 http://old.nabble.com/OFDM-receiver-on-USRP2-tp27557644p30658514.html
 Sent from the GnuRadio mailing list archive at Nabble.com.


 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2011-01-13 Thread Guanbo

Thanks Tom. I tried to see how much the carrier frequency offset would be. 
As you suggested above, I output the coarse freq offset bins, which was
similar as Srinivas's result. It is constant -2. 

Does it means the carrier offset can be computed as: ADC rate /( Decim_rate
* FFT_len) * 2  ?
If so, in my case, it is around 4KHz. From my knowledge, it seems too good
to be true. 

From your reference, I put on the channel filter code:
--
bw = (float(occupied_tones) / float(fft_length)) / 2.0
tb = bw*0.08
chan_coeffs = gr.firdes.low_pass (1.0, # gain
  1.0, #
sampling rate
  bw+tb,   #
midpoint of trans. band
  tb,  # width
of trans. band
  gr.firdes.WIN_HAMMING)   # filter
type
self.chan_filt = gr.fft_filter_ccc(1, chan_coeffs)

win = [1 for i in range(fft_length)]

--
Also, my hardware is USRP2+ XCVR2450.
$ sudo python benchmark_ofdm_tx_new.py --mac-addr=  -f 2.462G -m qpsk -i
100 --tx-gain=30 -M 8 -s 1000
FFT_len = 512 (default)
occupie_tones=200






Tom Rondeau wrote:
 
 On Wed, Jan 12, 2011 at 7:36 PM, Guanbo gbzh...@gmail.com wrote:

 Hi, Tom

 I am not quite understand the ofdm_sync_xx.cc in
 python/gnuradio/blks2impl/.

 What is the difference between frequency synchronization and carrier
 frequency offset.
 Why we have to do the timing and frequency synchronization before it?

 Thanks,
 Guanbo
 
 There is the difference between the fine frequency tuning (centering
 the signal inside of a subcarrier) and coarse frequency tunning
 (making sure that subcarrier 0 is at the correct location). The
 ofdm_sync_xx blocks perform the timing and fine frequency calculations
 (the self.nco in ofdm_receiver.py is generated from the fine frequency
 offset from the sync block). This is required before being able to
 perform the FFT demo, or else you'll get inter-carrier interference.
 
 We can then go into the frequency domain (after the FFT) and work on
 the subcarrier bins to handle the coarse frequency offset, since it is
 easier to do in this domain.
 
 Tom
 
 
 
 Tom Rondeau wrote:

 On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com wrote:
 Matt,

 Thanks for verifying the data rate calculation!

 I tried the other solutions that you suggested, namely,

 - increasing the data rate by a factor of 2 or 4
 It works.

 - modifying the OFDM code to widen the search range - How do I widen
 the
 search range ?
 Should I be looking in the ofdm_sync_ blocks in blks2impl folder ?
 If
 yes, which synchronizer is currently used with ofdm_examples ?

 You need to add an argument to gr.ofdm_frame_acquisition in
 ofdm_receiver.py (in python/gnuradio/blks2impl).

 In the current Git master, this is located on line 109 of
 ofdm_receiver.py. After the ks[0] argument, you can put in an
 integer. This is the maximum number of bins the receiver will search
 over for correlation. It defaults to 10.


 - locking the usrps to a common reference
 My usrp2s are located wide apart so I guess this solution is not
 practical.

 Besides, this confirms that the problem is somewhere in the USRP2
 board,
 right ? (as I tried swapping the daughter cards  firmware with the
 working
 pair)

 Thanks,
 Srinivas

 Nope, this is typical of radio hardware. They are always off
 frequency. If two oscillators are off frequency and then multiplied up
 to another frequency, the difference will also be magnified. So a 2.4
 GHz board will have a larger frequency offset than if you ran it just
 through the BasicTx/Rx boards (even though the ratios should be the
 same).

 Tom


 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio



 --
 View this message in context:
 http://old.nabble.com/OFDM-receiver-on-USRP2-tp27557644p30658514.html
 Sent from the GnuRadio mailing list archive at Nabble.com.


 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

 
 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
 
 

-- 
View this message in context: 
http://old.nabble.com/OFDM-receiver-on-USRP2-tp27557644p30669471.html
Sent from the GnuRadio mailing list archive at Nabble.com.


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2011-01-12 Thread Guanbo

Hi, Tom

I am not quite understand the ofdm_sync_xx.cc in python/gnuradio/blks2impl/.

What is the difference between frequency synchronization and carrier
frequency offset. 
Why we have to do the timing and frequency synchronization before it?

Thanks,
Guanbo


Tom Rondeau wrote:
 
 On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com wrote:
 Matt,

 Thanks for verifying the data rate calculation!

 I tried the other solutions that you suggested, namely,

 - increasing the data rate by a factor of 2 or 4
 It works.

 - modifying the OFDM code to widen the search range - How do I widen the
 search range ?
 Should I be looking in the ofdm_sync_ blocks in blks2impl folder ? If
 yes, which synchronizer is currently used with ofdm_examples ?
 
 You need to add an argument to gr.ofdm_frame_acquisition in
 ofdm_receiver.py (in python/gnuradio/blks2impl).
 
 In the current Git master, this is located on line 109 of
 ofdm_receiver.py. After the ks[0] argument, you can put in an
 integer. This is the maximum number of bins the receiver will search
 over for correlation. It defaults to 10.
 
 
 - locking the usrps to a common reference
 My usrp2s are located wide apart so I guess this solution is not
 practical.

 Besides, this confirms that the problem is somewhere in the USRP2 board,
 right ? (as I tried swapping the daughter cards  firmware with the
 working
 pair)

 Thanks,
 Srinivas
 
 Nope, this is typical of radio hardware. They are always off
 frequency. If two oscillators are off frequency and then multiplied up
 to another frequency, the difference will also be magnified. So a 2.4
 GHz board will have a larger frequency offset than if you ran it just
 through the BasicTx/Rx boards (even though the ratios should be the
 same).
 
 Tom
 
 
 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
 
 

-- 
View this message in context: 
http://old.nabble.com/OFDM-receiver-on-USRP2-tp27557644p30658514.html
Sent from the GnuRadio mailing list archive at Nabble.com.


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2011-01-12 Thread Guanbo

Hi, Tom

I am not quite understand the ofdm_sync_xx.cc in python/gnuradio/blks2impl/.

What is the difference between frequency synchronization and carrier
frequency offset. 
Why we have to do the timing and frequency synchronization before it?

Also, 

Thanks,
Guanbo


Tom Rondeau wrote:
 
 On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com wrote:
 Matt,

 Thanks for verifying the data rate calculation!

 I tried the other solutions that you suggested, namely,

 - increasing the data rate by a factor of 2 or 4
 It works.

 - modifying the OFDM code to widen the search range - How do I widen the
 search range ?
 Should I be looking in the ofdm_sync_ blocks in blks2impl folder ? If
 yes, which synchronizer is currently used with ofdm_examples ?
 
 You need to add an argument to gr.ofdm_frame_acquisition in
 ofdm_receiver.py (in python/gnuradio/blks2impl).
 
 In the current Git master, this is located on line 109 of
 ofdm_receiver.py. After the ks[0] argument, you can put in an
 integer. This is the maximum number of bins the receiver will search
 over for correlation. It defaults to 10.
 
 
 - locking the usrps to a common reference
 My usrp2s are located wide apart so I guess this solution is not
 practical.

 Besides, this confirms that the problem is somewhere in the USRP2 board,
 right ? (as I tried swapping the daughter cards  firmware with the
 working
 pair)

 Thanks,
 Srinivas
 
 Nope, this is typical of radio hardware. They are always off
 frequency. If two oscillators are off frequency and then multiplied up
 to another frequency, the difference will also be magnified. So a 2.4
 GHz board will have a larger frequency offset than if you ran it just
 through the BasicTx/Rx boards (even though the ratios should be the
 same).
 
 Tom
 
 
 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
 
 

-- 
View this message in context: 
http://old.nabble.com/OFDM-receiver-on-USRP2-tp27557644p30658519.html
Sent from the GnuRadio mailing list archive at Nabble.com.


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-07-19 Thread Tuan Ta
Sorry for bringing up an old thread. I was having the same problem of not
receiving packets using benchmark_ofdm_* and changing the receiver frequency
to tune to the transmitter frequency indeed solved the problem.

However, if I have to manually do it every time, I don't see how I can get
ofdm tunnel to work. In tunnel, each USRP is both transmitter and receiver.
The frequency offset of one USRP (A) transmitting to the other (B) will be
different than B transmitting to A. Since the frequency offset can't be set
at run time, I don't see how to manually tune after running tunnel on both
USRPs.

Can anyone show me how to make tunnel work?

Thank you very much,

Tuan

On 2/20/2010 7:43 PM, Srinivas wrote:

Hi Tom,

I tried increasing the bandwidth of the filter and also tried changing the
window type to KAISER, but it didn't improve on the offset error. I am
getting a constant frequency offset value -10. Currently, I am just
compensating for the offset at the receiver or specifying a minimum BW to be
used for that pair of USRP2s.

Thanks a lot for your time.

Srinivas


Changing the window type isn't going to help much with this problem. What I
was suggesting was that the filter is too small, not the wrong type. Also,
the only way to change the offset value is to actually move the frequency. I
was just suggesting that you see what that value is to see how many bins you
are off by (i.e., calculate the bandwidth of a subcarrier and multiply that
by 10; that's you're coarse offset). You can use that to see how much bigger
to make the channel filter's bandwidth.

Tom



On Thu, Feb 18, 2010 at 9:45 AM, Tom Rondeau addr...@hidden wrote:

  On Thu, Feb 18, 2010 at 12:49 AM, Srinivas addr...@hidden wrote:
  Hi Tom, Matt
 
  replied inline:
 
  On Wed, Feb 17, 2010 at 10:26 AM, Tom Rondeau addr...@hidden
  wrote:
 
  On Tue, Feb 16, 2010 at 5:45 PM, Srinivas addr...@hidden wrote:
   Matt,
  
   Thanks for verifying the data rate calculation!
  
   I tried the other solutions that you suggested, namely,
  
   - increasing the data rate by a factor of 2 or 4
   It works.
  
   - modifying the OFDM code to widen the search range - How do I widen
 the
   search range ?
   Should I be looking in the ofdm_sync_ blocks in blks2impl folder ?
   If
   yes, which synchronizer is currently used with ofdm_examples ?
 
  You need to add an argument to gr.ofdm_frame_acquisition in
  ofdm_receiver.py (in python/gnuradio/blks2impl).
 
  In the current Git master, this is located on line 109 of
  ofdm_receiver.py. After the ks[0] argument, you can put in an
  integer. This is the maximum number of bins the receiver will search
  over for correlation. It defaults to 10.
 
  I added this extra argument and tried changing the values from 10 to 100.
 I
  also tried with int(0.5*occupied_tones)  as the argument, but it
 doesn't
  receive for lower data rates ( 1M). Only when I increase the data rate 
  1.2M, I start receiving some pkts.
 
  As mentioned before, when I compensate for the frequency offset at the
  receiver it starts receiving packets successfully too.

  For small bandwidths, it's possible that the frequency offset has
 pushed you outside of the channel filter. The filter is probably
 specified too tight and is really supposed to cover only the occupied
 tones, so if you're too far away from the center frequency, the
 filter's already hitting it and no amount of frequency correction
 after that will work.

 In ofdm_receiver.py, try making the bandwidth term (bw on line 66)
 wider and see what that does for you.

 Also, you can print out d_coarse_freq calculated on line 130 in
 gr_ofdm_frame_acquisition.cc. This is the number of bins you're off by
 that you can use to get a feel for how far away in frequency you are.

 If opening up the filter works for you, please let us know. We might
 want to either parameterize the bandwidth or just set it wider by
 default.

 Tom




-- 
Srinivas
WINLAB, Rutgers University
New Jersey
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-21 Thread Tom Rondeau

On 2/20/2010 7:43 PM, Srinivas wrote:

Hi Tom,

I tried increasing the bandwidth of the filter and also tried changing 
the window type to KAISER, but it didn't improve on the offset error. 
I am getting a constant frequency offset value -10. Currently, I am 
just compensating for the offset at the receiver or specifying a 
minimum BW to be used for that pair of USRP2s.


Thanks a lot for your time.

Srinivas


Changing the window type isn't going to help much with this problem. 
What I was suggesting was that the filter is too small, not the wrong 
type. Also, the only way to change the offset value is to actually move 
the frequency. I was just suggesting that you see what that value is to 
see how many bins you are off by (i.e., calculate the bandwidth of a 
subcarrier and multiply that by 10; that's you're coarse offset). You 
can use that to see how much bigger to make the channel filter's bandwidth.


Tom




On Thu, Feb 18, 2010 at 9:45 AM, Tom Rondeau trondeau1...@gmail.com 
mailto:trondeau1...@gmail.com wrote:


On Thu, Feb 18, 2010 at 12:49 AM, Srinivas psriniva...@gmail.com
mailto:psriniva...@gmail.com wrote:
 Hi Tom, Matt

 replied inline:

 On Wed, Feb 17, 2010 at 10:26 AM, Tom Rondeau
trondeau1...@gmail.com mailto:trondeau1...@gmail.com
 wrote:

 On Tue, Feb 16, 2010 at 5:45 PM, Srinivas
psriniva...@gmail.com mailto:psriniva...@gmail.com wrote:
  Matt,
 
  Thanks for verifying the data rate calculation!
 
  I tried the other solutions that you suggested, namely,
 
  - increasing the data rate by a factor of 2 or 4
  It works.
 
  - modifying the OFDM code to widen the search range - How do
I widen the
  search range ?
  Should I be looking in the ofdm_sync_ blocks in blks2impl
folder ?
  If
  yes, which synchronizer is currently used with ofdm_examples ?

 You need to add an argument to gr.ofdm_frame_acquisition in
 ofdm_receiver.py (in python/gnuradio/blks2impl).

 In the current Git master, this is located on line 109 of
 ofdm_receiver.py. After the ks[0] argument, you can put in an
 integer. This is the maximum number of bins the receiver will
search
 over for correlation. It defaults to 10.

 I added this extra argument and tried changing the values from
10 to 100. I
 also tried with int(0.5*occupied_tones)  as the argument, but
it doesn't
 receive for lower data rates ( 1M). Only when I increase the
data rate 
 1.2M, I start receiving some pkts.

 As mentioned before, when I compensate for the frequency offset
at the
 receiver it starts receiving packets successfully too.

For small bandwidths, it's possible that the frequency offset has
pushed you outside of the channel filter. The filter is probably
specified too tight and is really supposed to cover only the occupied
tones, so if you're too far away from the center frequency, the
filter's already hitting it and no amount of frequency correction
after that will work.

In ofdm_receiver.py, try making the bandwidth term (bw on line 66)
wider and see what that does for you.

Also, you can print out d_coarse_freq calculated on line 130 in
gr_ofdm_frame_acquisition.cc. This is the number of bins you're off by
that you can use to get a feel for how far away in frequency you are.

If opening up the filter works for you, please let us know. We might
want to either parameterize the bandwidth or just set it wider by
default.

Tom




--
Srinivas
WINLAB, Rutgers University
New Jersey


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-20 Thread Srinivas
Hi Tom,

I tried increasing the bandwidth of the filter and also tried changing the
window type to KAISER, but it didn't improve on the offset error. I am
getting a constant frequency offset value -10. Currently, I am just
compensating for the offset at the receiver or specifying a minimum BW to be
used for that pair of USRP2s.

Thanks a lot for your time.

Srinivas

On Thu, Feb 18, 2010 at 9:45 AM, Tom Rondeau trondeau1...@gmail.com wrote:

 On Thu, Feb 18, 2010 at 12:49 AM, Srinivas psriniva...@gmail.com wrote:
  Hi Tom, Matt
 
  replied inline:
 
  On Wed, Feb 17, 2010 at 10:26 AM, Tom Rondeau trondeau1...@gmail.com
  wrote:
 
  On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com
 wrote:
   Matt,
  
   Thanks for verifying the data rate calculation!
  
   I tried the other solutions that you suggested, namely,
  
   - increasing the data rate by a factor of 2 or 4
   It works.
  
   - modifying the OFDM code to widen the search range - How do I widen
 the
   search range ?
   Should I be looking in the ofdm_sync_ blocks in blks2impl folder ?
   If
   yes, which synchronizer is currently used with ofdm_examples ?
 
  You need to add an argument to gr.ofdm_frame_acquisition in
  ofdm_receiver.py (in python/gnuradio/blks2impl).
 
  In the current Git master, this is located on line 109 of
  ofdm_receiver.py. After the ks[0] argument, you can put in an
  integer. This is the maximum number of bins the receiver will search
  over for correlation. It defaults to 10.
 
  I added this extra argument and tried changing the values from 10 to 100.
 I
  also tried with int(0.5*occupied_tones)  as the argument, but it
 doesn't
  receive for lower data rates ( 1M). Only when I increase the data rate 
  1.2M, I start receiving some pkts.
 
  As mentioned before, when I compensate for the frequency offset at the
  receiver it starts receiving packets successfully too.

 For small bandwidths, it's possible that the frequency offset has
 pushed you outside of the channel filter. The filter is probably
 specified too tight and is really supposed to cover only the occupied
 tones, so if you're too far away from the center frequency, the
 filter's already hitting it and no amount of frequency correction
 after that will work.

 In ofdm_receiver.py, try making the bandwidth term (bw on line 66)
 wider and see what that does for you.

 Also, you can print out d_coarse_freq calculated on line 130 in
 gr_ofdm_frame_acquisition.cc. This is the number of bins you're off by
 that you can use to get a feel for how far away in frequency you are.

 If opening up the filter works for you, please let us know. We might
 want to either parameterize the bandwidth or just set it wider by
 default.

 Tom




-- 
Srinivas
WINLAB, Rutgers University
New Jersey
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-18 Thread Tom Rondeau
On Thu, Feb 18, 2010 at 12:49 AM, Srinivas psriniva...@gmail.com wrote:
 Hi Tom, Matt

 replied inline:

 On Wed, Feb 17, 2010 at 10:26 AM, Tom Rondeau trondeau1...@gmail.com
 wrote:

 On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com wrote:
  Matt,
 
  Thanks for verifying the data rate calculation!
 
  I tried the other solutions that you suggested, namely,
 
  - increasing the data rate by a factor of 2 or 4
  It works.
 
  - modifying the OFDM code to widen the search range - How do I widen the
  search range ?
  Should I be looking in the ofdm_sync_ blocks in blks2impl folder ?
  If
  yes, which synchronizer is currently used with ofdm_examples ?

 You need to add an argument to gr.ofdm_frame_acquisition in
 ofdm_receiver.py (in python/gnuradio/blks2impl).

 In the current Git master, this is located on line 109 of
 ofdm_receiver.py. After the ks[0] argument, you can put in an
 integer. This is the maximum number of bins the receiver will search
 over for correlation. It defaults to 10.

 I added this extra argument and tried changing the values from 10 to 100. I
 also tried with int(0.5*occupied_tones)  as the argument, but it doesn't
 receive for lower data rates ( 1M). Only when I increase the data rate 
 1.2M, I start receiving some pkts.

 As mentioned before, when I compensate for the frequency offset at the
 receiver it starts receiving packets successfully too.

For small bandwidths, it's possible that the frequency offset has
pushed you outside of the channel filter. The filter is probably
specified too tight and is really supposed to cover only the occupied
tones, so if you're too far away from the center frequency, the
filter's already hitting it and no amount of frequency correction
after that will work.

In ofdm_receiver.py, try making the bandwidth term (bw on line 66)
wider and see what that does for you.

Also, you can print out d_coarse_freq calculated on line 130 in
gr_ofdm_frame_acquisition.cc. This is the number of bins you're off by
that you can use to get a feel for how far away in frequency you are.

If opening up the filter works for you, please let us know. We might
want to either parameterize the bandwidth or just set it wider by
default.

Tom


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-17 Thread Tom Rondeau
On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com wrote:
 Matt,

 Thanks for verifying the data rate calculation!

 I tried the other solutions that you suggested, namely,

 - increasing the data rate by a factor of 2 or 4
 It works.

 - modifying the OFDM code to widen the search range - How do I widen the
 search range ?
 Should I be looking in the ofdm_sync_ blocks in blks2impl folder ? If
 yes, which synchronizer is currently used with ofdm_examples ?

You need to add an argument to gr.ofdm_frame_acquisition in
ofdm_receiver.py (in python/gnuradio/blks2impl).

In the current Git master, this is located on line 109 of
ofdm_receiver.py. After the ks[0] argument, you can put in an
integer. This is the maximum number of bins the receiver will search
over for correlation. It defaults to 10.


 - locking the usrps to a common reference
 My usrp2s are located wide apart so I guess this solution is not practical.

 Besides, this confirms that the problem is somewhere in the USRP2 board,
 right ? (as I tried swapping the daughter cards  firmware with the working
 pair)

 Thanks,
 Srinivas

Nope, this is typical of radio hardware. They are always off
frequency. If two oscillators are off frequency and then multiplied up
to another frequency, the difference will also be magnified. So a 2.4
GHz board will have a larger frequency offset than if you ran it just
through the BasicTx/Rx boards (even though the ratios should be the
same).

Tom


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-17 Thread Srinivas
Hi Tom, Matt

replied inline:

On Wed, Feb 17, 2010 at 10:26 AM, Tom Rondeau trondeau1...@gmail.comwrote:

 On Tue, Feb 16, 2010 at 5:45 PM, Srinivas psriniva...@gmail.com wrote:
  Matt,
 
  Thanks for verifying the data rate calculation!
 
  I tried the other solutions that you suggested, namely,
 
  - increasing the data rate by a factor of 2 or 4
  It works.
 
  - modifying the OFDM code to widen the search range - How do I widen the
  search range ?
  Should I be looking in the ofdm_sync_ blocks in blks2impl folder ? If
  yes, which synchronizer is currently used with ofdm_examples ?

 You need to add an argument to gr.ofdm_frame_acquisition in
 ofdm_receiver.py (in python/gnuradio/blks2impl).

 In the current Git master, this is located on line 109 of
 ofdm_receiver.py. After the ks[0] argument, you can put in an
 integer. This is the maximum number of bins the receiver will search
 over for correlation. It defaults to 10.

 I added this extra argument and tried changing the values from 10 to 100. I
also tried with int(0.5*occupied_tones)  as the argument, but it doesn't
receive for lower data rates ( 1M). Only when I increase the data rate 
1.2M, I start receiving some pkts.

As mentioned before, when I compensate for the frequency offset at the
receiver it starts receiving packets successfully too.



 - locking the usrps to a common reference
 My usrp2s are located wide apart so I guess this solution is not
practical.

 Besides, this confirms that the problem is somewhere in the USRP2 board,
 right ? (as I tried swapping the daughter cards  firmware with the
working
 pair)

 Thanks,
 Srinivas

Nope, this is typical of radio hardware. They are always off
 frequency. If two oscillators are off frequency and then multiplied up
 to another frequency, the difference will also be magnified. So a 2.4
 GHz board will have a larger frequency offset than if you ran it just
 through the BasicTx/Rx boards (even though the ratios should be the
 same).

 Tom


Thanks! I understand this now.

-- 
Srinivas
WINLAB, Rutgers University
New Jersey
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-16 Thread Srinivas
Matt,

Thanks for verifying the data rate calculation!

I tried the other solutions that you suggested, namely,

*- increasing the data rate by a factor of 2 or 4
*It works.
*
- modifying the OFDM code to widen the search range* - How do I widen the
search range ?
Should I be looking in the ofdm_sync_ blocks in blks2impl folder ? If
yes, which synchronizer is currently used with ofdm_examples ?

*- locking the usrps to a common reference
*My usrp2s are located wide apart so I guess this solution is not practical.

Besides, this confirms that the problem is somewhere in the USRP2 board,
right ? (as I tried swapping the daughter cards  firmware with the working
pair)

Thanks,
Srinivas

On Sun, Feb 14, 2010 at 3:25 AM, Matt Ettus m...@ettus.com wrote:


  That formula will give you the number of occupied tones per second. You
 need to multiply by the number of bits per tone to get bps. If you are
 using BPSK, multiply by 1. If using QPSK, you'll need to multiply by 3,
 8PSK by 3, etc.



 I meant to say:

 BPSK - multiply by 1
 QPSK - mult by 2 (not 3 like I said above)
 8PSK - mult by 3

 sorry for the confusion.

 Matt




-- 
Srinivas
WINLAB, Rutgers University
New Jersey
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-16 Thread Matt Ettus

On 02/16/2010 02:45 PM, Srinivas wrote:

Matt,

Thanks for verifying the data rate calculation!

I tried the other solutions that you suggested, namely,

*- increasing the data rate by a factor of 2 or 4
*It works.
*
- modifying the OFDM code to widen the search range* - How do I widen
the search range ?
Should I be looking in the ofdm_sync_ blocks in blks2impl folder ?
If yes, which synchronizer is currently used with ofdm_examples ?

*- locking the usrps to a common reference
*My usrp2s are located wide apart so I guess this solution is not practical.

Besides, this confirms that the problem is somewhere in the USRP2 board,
right ? (as I tried swapping the daughter cards  firmware with the
working pair)



No, this confirms that there is no problem.  Frequency offset is a 
natural part of radio systems.  The software needs to handle it properly.


Matt


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-14 Thread Matt Ettus

On 02/12/2010 03:53 PM, Srinivas wrote:

Matt,

There was a frequency offset of ~30 KHz at the Rx w.r.t Tx so I
compensated for it and it worked!.

The settings I am using is as follows:

./benchmark_ofdm_tx.py -f 2.45G --tx-amplitude 0.9 -M 8 -s 200 -m bpsk
--fft-length=512 --occupied-tones=80 -i 64 --tx-gain=10 --cp-length=128
./benchmark_ofdm_rx.py -f 2.45G -m bpsk --fft-length=512
--occupied-tones=80 -d 64 --rx-gain=20 --cp-length=128

I calculate the data-rate for OFDM as follows Data rate R = (ADC
sampling rate x Occupied Tones) / (Nfft x Decimation)
For the above setting it is 244 KHz.

Am I right with the data rate calculation ?


That formula will give you the number of occupied tones per second.  You 
need to multiply by the number of bits per tone to get bps.  If you are 
using BPSK, multiply by 1.  If using QPSK, you'll need to multiply by 3, 
8PSK by 3, etc.


Matt


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-14 Thread Matt Ettus



That formula will give you the number of occupied tones per second. You
need to multiply by the number of bits per tone to get bps. If you are
using BPSK, multiply by 1. If using QPSK, you'll need to multiply by 3,
8PSK by 3, etc.



I meant to say:

BPSK - multiply by 1
QPSK - mult by 2 (not 3 like I said above)
8PSK - mult by 3

sorry for the confusion.

Matt


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-12 Thread Srinivas
Matt,

There was a frequency offset of ~30 KHz at the Rx w.r.t Tx so I compensated
for it and it worked!.

The settings I am using is as follows:

./benchmark_ofdm_tx.py -f 2.45G --tx-amplitude 0.9 -M 8 -s 200 -m bpsk
--fft-length=512 --occupied-tones=80 -i 64 --tx-gain=10 --cp-length=128
./benchmark_ofdm_rx.py -f 2.45G -m bpsk --fft-length=512 --occupied-tones=80
-d 64 --rx-gain=20 --cp-length=128

I calculate the data-rate for OFDM as follows Data rate R = (ADC sampling
rate x Occupied Tones) / (Nfft x Decimation)
For the above setting it is 244 KHz.

Am I right with the data rate calculation ?

Thanks very much for your time,



On Thu, Feb 11, 2010 at 10:26 PM, Matt Ettus m...@ettus.com wrote:

 On 02/11/2010 04:45 PM, Srinivas wrote:

 Hi All,

 I have 2 pairs of USRP2s with GNURadio-3.2 installed on their hosts. On
 one pair I am able to successfully run OFDM (benchmark_ofdm_tx  rx)
 with almost 95+% packet success rate. However on the other pair I am not
 receiving even 1 packet!

 I am using the same host machines and scripts. I also tried swapping the
 daughtercards (XCVR2450) and the firmwares with the working pair, but
 the problem remains.

 Does any one have a clue of where the problem might be ?

 PS: The received signal spectrum (usrp2_fft.py) on one of the
 non-working USRP2s is attached herewith. Besides this I plotted the
 spectrum of the received data from usrp2_rx_cfile.py at the receiver
 using MATLAB. The spectrum is of the same shape and strength as
 usrp2_fft.py displays.



 Srinivas,

 It looks like you are using a very narrow signal.  The frequency offset of
 the USRP2s giving you trouble may be enough that you are outside of the
 search range of the OFDM receiver (which is a percentage of the bandwidth of
 the signal).

 You could try any or all of the following:

 - increasing the data rate by a factor of 2 or 4
 - modifying the OFDM code to widen the search range
 - locking the usrps to a common reference
 - measure the frequency offset of the transmitter, and run the receiver
 with the actual frequency.  For example, if the receiver sees the signal 30
 kHz high using usrp2_fft.py, call the ofdm receiver with

-f 2.450030G
 on the command line


 Matt




-- 
Srinivas
WINLAB, Rutgers University
New Jersey
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] OFDM receiver on USRP2

2010-02-11 Thread Matt Ettus

On 02/11/2010 04:45 PM, Srinivas wrote:

Hi All,

I have 2 pairs of USRP2s with GNURadio-3.2 installed on their hosts. On
one pair I am able to successfully run OFDM (benchmark_ofdm_tx  rx)
with almost 95+% packet success rate. However on the other pair I am not
receiving even 1 packet!

I am using the same host machines and scripts. I also tried swapping the
daughtercards (XCVR2450) and the firmwares with the working pair, but
the problem remains.

Does any one have a clue of where the problem might be ?

PS: The received signal spectrum (usrp2_fft.py) on one of the
non-working USRP2s is attached herewith. Besides this I plotted the
spectrum of the received data from usrp2_rx_cfile.py at the receiver
using MATLAB. The spectrum is of the same shape and strength as
usrp2_fft.py displays.



Srinivas,

It looks like you are using a very narrow signal.  The frequency offset 
of the USRP2s giving you trouble may be enough that you are outside of 
the search range of the OFDM receiver (which is a percentage of the 
bandwidth of the signal).


You could try any or all of the following:

- increasing the data rate by a factor of 2 or 4
- modifying the OFDM code to widen the search range
- locking the usrps to a common reference
- measure the frequency offset of the transmitter, and run the receiver 
with the actual frequency.  For example, if the receiver sees the signal 
30 kHz high using usrp2_fft.py, call the ofdm receiver with


-f 2.450030G
on the command line


Matt


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio