Difference between revisions of "User:Duggabe"

From GNU Radio
Jump to: navigation, search
(third revision)
(70 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= DRAFT 3rd REVISION Guided_Tutorial_Hardware_Considerations =
+
Barry Duggan is a graduate of Georgia Tech in Electrical Engineering and is a career computer programmer specializing in real-time control, data communication systems, and email security. He has been an amateur radio operator since 1953, and now devotes most of his time to the GNU Radio project. He is a member of the GNU Radio General Assembly, the GRCon21 Organizing Committee, and is currently the Documentation Lead for GNURadio.
<!-- "Using GNU Radio with Hardware" -->
 
<!-- 16 May 2020 -->
 
== Introduction ==
 
 
 
One of the more basic (and also incredibly useful) things you can do in GNU Radio with a receiver is to create a software radio spectrum analyzer. This is also a great first step because it will verify that your hardware is working correctly.
 
 
 
== Prerequisites ==
 
 
 
* Tutorials:
 
** [[Guided_Tutorial_Introduction|'''A brief introduction to GNU Radio, SDR, and DSP''']]
 
** [[Guided_Tutorial_GRC|'''Intro to GR usage: GRC and flowgraphs''']]
 
** [[Sample_Rate_Tutorial|'''Understanding sample rate''']]
 
 
 
== What Will I Need? ==
 
 
 
There is a large and growing number of vendors who provide hardware with GNU Radio drivers.They span from very cheap ($20) receivers to very high-performance tens-of-thousands-of-dollars systems. Parameters for four of the most popular devices are presented below. Other devices are listed in [[Hardware]].
 
 
 
== Creating a Software Radio Spectrum Analyzer ==
 
 
 
This example uses an [https://kb.ettus.com/B200/B210/B200mini/B205mini Ettus Research USRP B200] and the [https://github.com/EttusResearch/uhd USRP Hardware Driver (UHD)]. The B200 provides a fully integrated platform with continuous frequency coverage from 70 MHz to 6 GHz.
 
 
 
In order to use UHD blocks, you must have UHD installed. See [https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux Installing the USRP].
 
 
 
Using gnuradio-companion (GRC) and the following Block descriptions, build this flowgraph.<br>
 
 
 
[[File:HW_tutorial_fg.png]]
 
 
 
The parameters are set as shown:
 
 
 
[[File:HW_tutorial_p1.png|400px]] &nbsp;&nbsp;&nbsp;&nbsp; [[File:HW_tutorial_p2.png|400px]]
 
 
 
=== Tuning and Using the Spectrum Analyzer ===
 
 
 
Set the following parameters in the [[QT_GUI_Sink|QT GUI Sink block]]:
 
* Center Frequency (Hz): tuning
 
* Bandwidth (Hz): samp_rate
 
* Show RF Freq: Yes
 
 
 
The analyzer can be tuned with the Frequency control widget. If you check the "Display RF Frequencies" box in the run-time GUI window, then the scale on the 'Frequency Display' and 'Waterfall Display' tabs will show the actual frequencies with the tuned frequency in the center.
 
 
 
You can adjust the Sample Rate to see the effects on the received spectrum.
 
 
 
[[File:HW_tutorial_freq.png|800px]]
 
 
 
== Hardware Considerations ==
 
 
 
Setting the sample rate has several factors to consider.
 
* The various hardware devices have limits on what sample rates they can deliver. Some, such as the FunCube Pro+, have a fixed sample rate of 192kHz. Setting the flowgraph sample rate must be within the limitations of the device.
 
* The computer hardware and operating system you are using will set limitations on the data throughput, such as:
 
** USB2 vs USB3
 
** processor speed
 
** number of CPU cores
 
* Data overruns are indicated by the letter 'O' displayed on the terminal screen. These are because the input data stream is producing data faster than the flowgraph can consume it. Adjusting the sample rate and/or the input buffer size (where available) should alleviate the problem.
 
 
 
== Building an FM Receiver ==
 
 
 
Now that you have a tested input device, you can build an FM Receiver with it. See the following examples and use your hardware.
 
 
 
* [[WBFM_Receive|Wide Band FM Receive Block]]
 
* [[NBFM_Receive|Narrow Band FM Receive Block]]
 

Revision as of 19:10, 22 July 2021

Barry Duggan is a graduate of Georgia Tech in Electrical Engineering and is a career computer programmer specializing in real-time control, data communication systems, and email security. He has been an amateur radio operator since 1953, and now devotes most of his time to the GNU Radio project. He is a member of the GNU Radio General Assembly, the GRCon21 Organizing Committee, and is currently the Documentation Lead for GNURadio.