Implementation of a Simple FM Receiver in GNU Radio

From Ettus Knowledge Base
Revision as of 11:49, 1 May 2016 by Ettus (Talk | contribs) (Revision History)

Jump to: navigation, search

Application Note Number

AN-5501

Revision History

Date Author Details
2016-05-01 Neel Pandeya Initial creation

Abstract

This AN shows a quick and simple implementation of an FM receiver for the USRP using GNU Radio. The goal is to easily demonstrate a practical application, and to verify that the USRP is functioning properly.

Overview

In this application note, a Universal Software Radio Peripheral (USRP™) N200/N210 and a WBX daughterboard is used with GNU Radio to build a simple FM receiver. The intent of this example is to:

  • Teach some basic DSP and RF concepts including: filtering, demodulation, and sample rate conversion.
  • Show how to build graphical applications with GNU Radio Companion
  • Illustrate the simplicity of the software tools that can be used with the USRP product family.

Requirements

  • USRP with compatible daughterboard to receive 88-108 MHz
  • GNU Radio
  • UHD

Blocks

UHD Source Block

  • Configures USRP
  • Receives data stream from USRP

FFT Sink

  • Display Fast Fourier Transform of data stream

Low Pass Filter

  • Apply low pass filter to data stream
  • Optional: Decimation or Interpolation

WBFM Receive

  • Demodulates Wide Band Frequency Modulated signal from data stream

Rational Resampler

  • Decimate or Interpolate data stream to desired sample rate

Audio Sink

  • Audio hardware interface
  • Optional: Decimate Audio Rate

Wav File Sink

  • Save data stream as WAV file type

WX Widgets

  • Textbox - Input field
  • Slider - Adjustable slider
  • Notebook - Assign Widgets/GUI Sinks to tabs within flowgraph

Variable

  • Creates variable within flowgraph

Video

https://www.youtube.com/watch?v=KWeY2yqwVA0

You can download the sample GRC file here: http://files.ettus.com/app_notes/fm_rcvr/fm_example.grc