patch-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Patch-gnuradio] Fixes for example/utility programs


From: Sam Bretheim
Subject: [Patch-gnuradio] Fixes for example/utility programs
Date: Tue, 13 Dec 2011 22:40:37 -0800
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.23) Gecko/20110921 Thunderbird/3.1.15

I've attached patch files that fix a number of GNU Radio programs that
were broken, at least on my machine.  Please let me know if any of these
patches is incorrect!

By the way, I found my FSF copyright assignment form for GNU Radio
crumpled in a drawer yesterday, and mailed a replacement today.



Description of changes:

The primary change I've made moves subdevice and antenna selection to
happen immediately after the creation of a UHD/SHD source/sinkin various
Python example/utility programs, which fixes a bug that prevented some
of those programs from working with certain hardware configurations,
described below.

An additional issue that prevented QAing this fix was also fixed: the
obsolete import line "from usrpm import usrp_dbid" was removed wherever
present.

Finally, two minor, unrelated issues discovered during QA were fixed:

    * gr-uhd/apps/uhd_rx_nogui.py: Corrected help text that listed
available modulation options as "AM,FM" to read "AM,FM,WFM".
    
    * gr-uhd/apps/uhd_rx_nogui.py: Changed the --gain option to be of
type "eng_float" (which appears correct and is used by all other
applications) rather than "int".



Rationale:

1) Bug fix: In a USRP1 containing two daughterboards, one of which
supports the FM or TV frequency range and one of which does not
[specifically, in my test case, a WBX in slot A and a DBSRX in slot B],
a number of sample applications were dying with "Radio does not support
required frequency range" errors.  This turned out to be because the
calls to check the available frequency and gain ranges were happening
before the correct daughterboard was selected.  The affected
applications were:

gr-uhd/examples/usrp_tv_rcv.py
gr-uhd/examples/usrp_wfm_rcv.py
gr-uhd/examples/usrp_wfm_rcv_fmdet.py
gr-uhd/examples/usrp_wfm_rcv_nogui.py
gr-uhd/examples/usrp_wfm_rcv_pll.py
gr-uhd/examples/usrp_wfm_rcv_sca.py
gr-uhd/examples/usrp_wxapt_rcv.py

2) Consistency and reasonableness: A number of other applications were
structured very similarly to the affected applications.  While they
didn't trigger the same fatal error, maintaining code consistency with
the patched applications seemed important, and setting frequency and
gain after choosing the correct daughterboard seemed like the right
thing to do.  Applications modified for consistency were:

gr-digital/examples/narrowband/uhd_interface.py
gr-digital/examples/ofdm/uhd_interface.py
gr-qtgui/apps/uhd_display.py
gr-shd/apps/shd_fft.py
gr-uhd/apps/uhd_fft.py
gr-uhd/apps/uhd_rx_cfile.py
gr-uhd/apps/uhd_rx_nogui.py
gr-uhd/examples/fm_tx4.py
gr-uhd/examples/usrp_am_mw_rcv.py
gr-uhd/examples/usrp_nbfm_ptt.py
gr-uhd/examples/usrp_nbfm_rcv.py
gr-uhd/examples/usrp_spectrum_sense.py
gr-uhd/examples/usrp_tv_rcv_nogui.py

3) usrpm import removal: Fixes fatal ImportErrors on UHD-only
installations.  Applications affected:

gr-uhd/examples/fm_tx4.py
gr-uhd/examples/usrp_am_mw_rcv.py
gr-uhd/examples/usrp_nbfm_ptt.py
gr-uhd/examples/usrp_wfm_rcv2_nogui.py



QA:

* These formerly broken apps now work:
gr-uhd/examples/usrp_tv_rcv.py
gr-uhd/examples/usrp_wfm_rcv.py
gr-uhd/examples/usrp_wfm_rcv_nogui.py
gr-uhd/examples/usrp_wfm_rcv_pll.py
gr-uhd/examples/usrp_wfm_rcv_sca.py
gr-uhd/examples/usrp_wxapt_rcv.py

* These formerly working apps still work:
gr-uhd/apps/uhd_fft.py
gr-uhd/apps/uhd_rx_cfile.py
gr-uhd/apps/uhd_rx_nogui.py
gr-uhd/examples/fm_tx4.py
gr-uhd/examples/usrp_am_mw_rcv.py
gr-uhd/examples/usrp_nbfm_rcv.py
gr-uhd/examples/usrp_tv_rcv_nogui.py
gr-uhd/examples/usrp_wfm_rcv2_nogui.py

* These formerly broken apps are still broken for other reasons:
gr-uhd/examples/usrp_nbfm_ptt.py (throws TypeError)
gr-uhd/examples/usrp_spectrum_sense.py (segfaults)
gr-uhd/examples/usrp_wfm_rcv_fmdet.py (segfaults)

* I was unable to test these due to lack of appropriate hardware:
gr-digital/examples/narrowband/uhd_interface.py
gr-digital/examples/ofdm/uhd_interface.py
gr-qtgui/apps/uhd_display.py
gr-shd/apps/shd_fft.py

Attachment: 0001-Moved-subdev-and-antenna-selection-to-happen-immedia.patch
Description: Text Data

Attachment: 0002-Removed-obsolete-usrpm-import.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]