RTL-SDR FM Receiver: Difference between revisions
No edit summary |
|||
Line 59: | Line 59: | ||
==FM Demodulator== | ==FM Demodulator== | ||
An Audio Sink block is needed to play the sound of a demodulated FM radio station. Drag in an Audio Sink block and open the properties. Notice there are a couple choices for sampling rates to choose from. Select 48 kHz: | |||
[[File:RTL_SDR_FM_audio_sink_properties.png]] |
Revision as of 16:19, 18 May 2024
RTL-SDR Based FM Receiver
This tutorial describes how to receive broadcast commercial radio stations transmitting Frequency Modulated (FM) signals using the RTL-SDR receiver. The following hardware is needed for this tutorial:
- RTL-SDR Receiver
- VHF Antenna
Please connect the antenna to the RTL-SDR, and plug the RTL-SDR into the USB port on your computer.
Configure the RTL-SDR
Add the Soapy RTLSDR Source block to the flowgraph. Soapy [1] is a SDR support library which interfaces with different SDR hardware.
The receiver needs to be configured with a proper sampling rate, center frequency and gain value. The RTL-SDR supports multiple sampling rates but in this tutorial the maximum sampling rate of 2.048 MHz is chosen. Update the samp_rate variable with the value 2048000:
RTL-SDR source block still has an undefined freq. The freq variable needs to be given a frequency associated with a radio station. This tutorial uses the frequency allocations within the United State of America, therefore you will need to modify them according to the allocation for your country. Within the USA, the smallest frequency of a radio station is 87.9 MHz and the largest frequency is 107.9 MHz [2], and each channel is separated by 200 kHz.
Add the QT GUI Range block into the flowgraph. The properties need to be changed in order to incorporate the frequency allocations for broadcast FM.
Open the properties and give it the name freq and the start frequency of 87.9 MHz, the stop frequency of 107.9 MHz and a step of 200 kHz:
The freq variable within the Soapy RTLSDR Source block is now defined. The flowgraph should look like the following:
Open the Soapy RTLSDR Source block properties. Navigate to the RF Options and enter True for AGC.
Add Time & Frequency Plots
Drag in a QT GUI Time Sink and QT GUI Frequency Sink. Enable the auto-scaling in the QT GUI Time Sink block:
Open the QT GUI Frequency Sink and enter freq as the Center Frequency (Hz):
Connect the QT GUI Time Sink and QT GUI Freq Sink blocks:
Run the flowgraph. A time plot and frequency plot will be displayed. This simple flowgraph represents a basic tuner application, such that dragging the slider bar or entering a frequency manually will retune the RTL-SDR and start producing sampled data.
FM Demodulator
An Audio Sink block is needed to play the sound of a demodulated FM radio station. Drag in an Audio Sink block and open the properties. Notice there are a couple choices for sampling rates to choose from. Select 48 kHz: