Have someone experience or other knowledge about the "usrp_sounder.py" CIR-channel sounder, FPGA-based tool ? It should be a very valuable and usable Gnu-Radio communications tool if it works !?!?
I appreciate any comments or ideas to my issues with it as described below. / Rickard On Sat, May 28, 2011 at 2:09 AM, Rickard Radio <rickardra...@gmail.com>wrote: > Dear all, > > I have been trying using the usrp_sounder.py script for measuring the > channel impulse response (CIR), but without success. > > Q: - Have anyone succeeded? Does the FPGA-based script work as advertised? > > Here is what I got: > Firstly, making a "loopback" test worked great > > usrp_sounder.py -g 50 -f 2.45e9 -d 12 -t -r -l -v -F loopback.log > > followed by plotting the recorded CIR-values in Matlab: > >> loopback = read_complex_binary('loopback.log',inf); > >> plot(abs(loopback)) > > This results in a nice looking "impulse-train", i.e., one strong impulse > followed by near zero correlation values until the next PN-sequence frame > (4095 values per 12-bit PN-period). > So far, so good! > > However, when I try to send from one USRP with RFX2400 and receive with > another (same setup) I do not get a representative output (I believe!). > Distance between USRPs is about 10m, and placed in different rooms (with > wooden walls). > Rx> usrp_sounder.py -g 50 -f 2.45e9 -r -v -F CIRtest.log > Tx> usrp_sounder.py -f 2.45e9 -t -v > > In this case I only see when plotting a continuous almost "random" sequence > with relatively low but uniform max-amplitude, but no distinctive strong > correlation peaks at all ?!? > I do not understand why!? Although the USRP to USRP distance is relatively > short (~10m) I would then expect a similar CIR-response as in the loopback > test. That is, my expectation was not just one but a few relatively strong > impulses, the rest of the long PN-period filled with much weaker background > correlation noise. But I don't get any strong correlation-peaks at all ! > Not a single one that is well above the uniform bg correlation noise. > Q: - Can anyone explain this result?? > > It can not depend on a too weak received signal, since I tested to monitor > it using the "ursp_fft.py" with the same UHDgain (= 50). In this case I can > clearly see the broadband PN-signal in the frequency domain, well above the > noise-floor (some 15-20 dB). Furthermore, by turning on and off the > PN-sequence transmitter during CIR-recording, I can also clearly notice a > corresponding variation in the received signal strength when plotting in > Matlab afterwards - but not a single distinctive peak at all !?!? Again just > the uniform background correlation noise! Hmmm, why this then?! > > Q: - Have anyone had success with the "usrp_sounder.py" script? > Q: - Does it work as advertised, or what can my problem be? > > I know it doesn't contain synchronization, so the CIR's should "roll" > between PN-periods, but that is not the problem here, since I get no peaks?! > > Help me get nice strong peaks, please! > > Glad for any advice! > > / Rickard > > > Below a summary of how I used the "ursp_sounder.py" script: > > Loopback: > > usrp_sounder.py -g 50 -f 2.45e9 -d 12 -t -r -l -v -F loopback.log > Using PN code degree of 12 length 4095 > Logging impulse records to file: loopback.log > Using smoothing alpha of 1.0 > Setting PN code degree to 12 > Enabling digital loopback. > Enabling transmitter. > gr_buffer::allocate_buffer: warning: tried to allocate > 4 items of size 32760. Due to alignment requirements > 512 were allocated. If this isn't OK, consider padding > your structure to a power-of-two bytes. > On this platform, our allocation granularity is 4096 bytes. > gr_buffer::allocate_buffer: warning: tried to allocate > 4 items of size 32760. Due to alignment requirements > 512 were allocated. If this isn't OK, consider padding > your structure to a power-of-two bytes. > On this platform, our allocation granularity is 4096 bytes. > Enter CTRL-C to stop. > > Q: -- Is it normal behaviour with the buffer-allocation warning above (I > get it all the time when receiving, depending on the PN code length) ? > > Receiver: > Rx > usrp_sounder.py -g 50 -f 2.45e9 -r -v -F CIRtest.log > Using PN code degree of 12 length 4095 > Sounding frequency range is 2.434G to 2.466G > Logging impulse records to file: CIRtest.log > Using Flex 2400 Rx MIMO B for sounder receiver. > Setting receiver gain to 50.0 > Using smoothing alpha of 1.0 > Setting receiver frequency to 2.45G > Setting PN code degree to 12 > Disabling digital loopback. > gr_buffer::allocate_buffer: warning: tried to allocate > 4 items of size 32760. Due to alignment requirements > 512 were allocated. If this isn't OK, consider padding > your structure to a power-of-two bytes. > On this platform, our allocation granularity is 4096 bytes. > gr_buffer::allocate_buffer: warning: tried to allocate > 4 items of size 32760. Due to alignment requirements > 512 were allocated. If this isn't OK, consider padding > your structure to a power-of-two bytes. > On this platform, our allocation granularity is 4096 bytes. > Enter CTRL-C to stop. > > Transmitter: > Tx > usrp_sounder.py -f 2.45e9 -t -v > Using PN code degree of 12 length 4095 > Sounding frequency range is 2.434G to 2.466G > Using Flex 2400 Tx MIMO B for sounder transmitter. > Setting transmitter frequency to 2.45G > Setting PN code degree to 12 > Disabling digital loopback. > Enabling transmitter. > Press return to exit. > > followed by plotting the recorded data in Matlab as shown above. >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio