Showing posts with label fm scan. Show all posts
Showing posts with label fm scan. Show all posts

Thursday, March 27, 2014

Using FFT to scan for FM channels with RTL_SDR

Recently, my brother got selected for the "Beagle Bone radio challenge" road test by element14. As part of this challenge, the selected individuals had to build a working radio using the components provided by element 14. I've decided to help my brother a little with a feature called "scan". This post is going to be how we got the "scan" feature to work. This feature scans the available FM channels.

Analysis:
Tools used for analysis:
  • Python 2.7
  • matplot
  • scipy
  • dvb t dongle
  • rtl_fm program
The first thing to do is analyze few samples that the rtl_fm program outputs. The rtl_fm is the program that can be used to tune into FM channels. Below is a typical command that can be invoked to tune into any FM channel.

          rtl_fm -f 91.1e6 -s 200000 -r 48000 - | aplay -r 48k -f S16_LE


Options:

-f         Specify the frequency, which is 91.1Mhz in the above line
-s         The sampling rate used (Sampling rate for the audio data decoded by RTL sdr)
-r         The output sapling rate (The sampling rate that the "rtl_fm" is going to use to output audio)