Step 1: What's RTL-SDR?
RTL-SDR is the cheapest method to get into the world of SDR (Software Defined Radio) - method of receiving (RTL-SDR have no capability to transmit) and processing radio transmission using your PC. Using it you can receive everything that is transmitted between about 20~2000 MHz depending on second chip on the device.
In brief it can hear i.e.:
- ordinary FM radio stations
- police radio transmissions
- plane and ship tracking informations
- small radio devices like car keys
- probably GPS satellites (as of now there is no confirmed method to do this)
- International Space Station and other space equipment that transmits below 2 GHz
- every other device that you know transmits on these frequencies
Step 2: How to Get It?
The most reasonable choice is R820T chip and that tutorial is based on its capabilities. The other good chip is Elonics E4000 but they are actually more expensive ones.
Step 3: What You Will Need?
Step 4: Connecting the Hardware and Installing Software
$ dmesg | tail
Here I had some troubles with default driver of the dongle that was hanging OS when I unplugged it so I had to disable that driver by creating new .conf file in /etc/modprobe.d that contains one line:
add that file to initrd by inserting its path to FILES variable in /etc/mkinitcpio.conf:
and generate new image by mkinitcpio -p linux
Now after system restart the problem was solved.
(on other systems the procedure will probably be completely different)
After fixing driver problem you can install packages needed to use RTL-SDR.
Here we will install 'rtl-sdr', 'sdrsharp-svn', 'gnuradio' and 'gr-osmosdr-git'.
rtl-sdr is the main driver and can be installed on Arch from community repo:
# pacman -S rtl-sdr
or its git version available on AUR as rtl-sdr-git
SDR# is the program that offers basic capability to decode FM and AM radio and have easy to learn GUI so using it is the best for beginners. It is available on AUR as sdrsharp-svn.
The most capable software for RTL-SDR is GNU Radio and its graphical tool: GNU Radio Companion. It is also available on AUR (name: gnuradio). It is also required to install package gr-osmosdr-git from AUR that is needed to use RTL-SDR dongle as source in GRC.
(and again on different operating system whole process is different, maybe simpler maybe harder, not tested myself but on Ubuntu rtl-sdr should be available from apt-get and on Fedora it should also be on default repositories, gnuradio has good installation instruction here: http://gnuradio.org/redmine/projects/gnuradio/wiki/InstallingGR)
SDR# could now be used also to find station which signal is strong enough to be received without any disruptions. If you found one after making the program you can check if it's working on that station as good as on SDR#.
Step 5: FM Radio - Theoretical Introduction
- signal source - in our case it would be RTL-SDR dongle
- low pass filter
- WBFM demodulator
- audio output - your PC's sound card
There can be few other elements depending on input and output sample rate, if it will be possible to match them using only above elements there won't be any other.
Step 6: RTL-SDR Source
Step 7: Low Pass Filter
Step 8: WBFM Receive
Step 9: Matching to Audio Output and Volume Regulation
Step 10: Audio Sink
Step 11: Final Remarks
Finally one more note: during the tests of this schematic I realized that decimation to 500k should not been made on the filter block but before it so I modified it and now demodulated audio is much better than before.