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
on 2009-01-16 03:47
on 2009-01-17 00:18
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 > Discussfirstname.lastname@example.org > http://lists.gnu.org/mailman/listinfo/discuss-gnuradio > > -- View this message in context: http://www.nabble.com/ofdm-benchmark-tp21491593p21... Sent from the GnuRadio mailing list archive at Nabble.com.