如何测试 USRP

准备:

  1. 安装操作系统: 需选择 OS
  2. 安装 GNU Radio: 创建指导
  3. (可选) 阅读硬件平台文档: USRP2 介绍
    背景阅读: Blossom Research, LLC
    全部 Datasheets 下载:
  4. (可选) 阅读驱动(driver)代码
    the source codes related to USRP:
    /usrp
    firmware: for 8051 in USB controller, mostly writen as .c and .a51
    FPGA: for FPGA, mostly writen as .v (it seems fpga only has SRAM inside, so it need to download software for fpga every time)
    host: for PC, mostly writen as .cc
    /gr-usrp
    driver for dauther board: mostly writen as .py and .cc
    /gnuradio-example/python/usrp
    example for single usrp board: all writen in .py
    /gnuradio-example/python/multi-usrp
    example for multi usrp boards: all writen in .py

开始测试:

  1. 如何上电开始:
    step1. before plug in USB cable, open two terminal.
    step2. to see a real time display of all log messages: tail -f /var/log/messages (to check the usb driver is correctly installed)
    如何停止及断电:
    step1. stop the program.
    step2. disconnect USB connection and power off
  2. test a script for usrp first without daughter board, which file I need to test?
    --http://www.comsec.com/wiki?UsrpInstall
    gnuradio\gnuradio-examples\python\usrp\usrp_siggen.py & usrp_fft.py
  3. how to test the transmitter and receiver for daughter board?
    The antenna should be connect by Tx/Rx SMA but NOT Rx2! there is a switch for Rx2 and the switch is off in default!
    The Tx and Rx can NOT be connected directly by cable! need a attenuator about 40-50 dB!!
    • /gnuradio-examples/python/usrp/usrp_siggen.py and usrp_fft.py to observe signal
    • /gnuradio-examples/python/digital/benchmark_tx.py and benchmark_rx.py to test data transmission.
    The boards need to be at least 3m apart. --/home/james/gnuradio/gnuradio-examples/python/digital/README
    • use tx_voice.py and rx_voice.py to test voice transmission.
    • some also said to test /gnuradio-examples/python/usrp/usrp_nbfm_ptt.py to test full duplex voice call, but I can't make it works.

测试声音:

  1. gnuradio-examples\python\audio\dial_tone.py as tutorial
  2. gnuradio-examples\python\audio\audio_copy.py
    gnuradio-examples\python\audio\audio_to_file.py
    gnuradio-examples\python\audio\audio_play.py
  3. gnuradio-examples\python\digital_voice\encdec.py to test by one USRP
  4. gnuradio-examples\python\digital\tx_voice.py
    gnuradio-examples\python\digital\rx_voice.py to test by two USRP

测试数据:

  • gnuradio-examples\python\digital\benchmark_tx.py
    • gnuradio-examples\python\digital\benchmark_rx.py to test by two USRP

其它:

  1. http://www.nabble.com/High-packet-error-and-reception-problems-with-RFX-2400-t3522095.html
    ./benchmark_tx.py -f 2412M --bitrate 500k -v --tx-amplitude=30000
    usrp_siggen.py and usrp_oscope.py
    ./benchmark_rx.py -f 2412M --bitrate 100k -v --rx-gain=75
    --in digital folder
  2. http://staff.washington.edu/jon/gr-osx/gr-osx-usrp.html#using
    benchmark_usb.py Estimate throughput of USB
    usrp_siggen.py Signal generator
    usrp_oscope.py Oscilloscope (screenshot)
    usrp_fft.py Spectrum analyzer (screenshot)


(以上整理仅供参考!