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.

HW:USRP-PKG/XCVR2450/VERT2450

SW:ubuntu

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
self.run():

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
rx_callback(pkton,)=struct.unpack(’!H’,payload[0:2])

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?

Jinnan

I think you could change the value of -d and -i and see. This is what I
tried.
./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
can
not receive all the packets that I send from the transmitter side. About
60%
of the packets are received. I don’t know why. You can try and see
whether
you have the same problems. If you know why, could you let me know?

Cheers,
Brook

liu jinnan wrote:

–cp-length 16

Jinnan


Discuss-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


View this message in context:
http://www.nabble.com/ofdm-benchmark-tp21491593p21510491.html
Sent from the GnuRadio mailing list archive at Nabble.com.