Ofdm benchmark

Hi everyone,

I want to do some work in OFDM system on usrp.So I tested
benchmark_ofdm_tx.py and benchmark_ofdm_rx.py.



Gnuradio: svn trunk

First, I run benchmark_ofdm_tx.py on one computer and observe ofdm
spectrum by usrp_fft.py on another computer.

Two usrps are 1 feet away.

./benchmark_ofdm_tx.py ¨Cf 2.4G --fft-length 64 --occupied ¨Ctones 52
–cp-length 16 ¨Ctx-amplitude 200

./ursp_fft.py ¨Cf 2.4G

But the spectrum is not flat in transmit bandwidth, one spike always
appears around the center frequency. (changing center freq don’t work)

When I set the --tx-amplitude 3000, the spike almost have as the same
power as other carriers.

When the usrp transmission finished ,only ground noise in spectrum and
no obvious high power noise in the center frequency.

Anyone know the problem is?

Second, I run benchmark_ofdm_tx.py on one computer and
benchmark_ofdm_rx.py on another computer

./benchmark_ofdm_tx.py ¨Cf 2.4G --fft-length 64 --occupied ¨Ctones 52
–cp-length 16 ¨Ctx-amplitude 200

./benchmark_ofdm_rx.py ¨Cf 2.4G --fft-length 64 --occupied ¨Ctones 52
–cp-length 16

After initialization, sometimes nothing will be printed on the screen
at receiver.( As I expect,

“ok: right pktno: 1 n_rcvd: 1 n_right:1” or something alike will be
printed.) When the transmiter is stoped,“timeout” will be on the
receiver’s screen.

Third, if I fixed --fft-length 64 --cp-length 16, some --occupied-tones
parameters will bring one expcetion .

Exception in thread Tread-1:

Traceback(most recent call last)

File "/usr/lib/python2.5/threading.py, line 486,in _bootstrap_inner

File "/usr/lib/python2.5/site-packages/gnuradio/blks2impl/ofdm.py, 

line 294, in run self.callback(ok,payload)

File “./benchmark_ofdm_rx.py”,line 168, in line

File "/usr/lib/python2.5/struct.py,line 87,in unpack return.o.unpack(s)

errror:unpack requuires a string argument of length 2

I check the payload[0:2] value, almost ’ ’ in that case. Is there
something wrong in receiver part?


I think you could change the value of -d and -i and see. This is what I
./benchmark_ofdm_tx.py -f 440M -T A --tx-amplitude 5000 -v -i 128
–fft-length 128 --occupied-tones 80 --cp-length 32
./benchmark_ofdm_rx.py -f 440M -R A -v -d 64 --fft-length 128
–occupied-tones 80 --cp-length 32

At the receiver side, I could receive the pkt, as you expect. However, I
not receive all the packets that I send from the transmitter side. About
of the packets are received. I don’t know why. You can try and see
you have the same problems. If you know why, could you let me know?


liu jinnan wrote:

–cp-length 16


Discuss-gnuradio mailing list
[email protected]

View this message in context:
Sent from the GnuRadio mailing list archive at Nabble.com.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs