== Realtek 2832 EZCap - A Frugal SDR == === Prereqs === === A cheap spectrum analyzer === The steps below describe how to use a cheap USB TV dongle (RTL2832 EZCap) as a spectrum analyzer. This example uses node20-6.grid.orbit-lab.org since this has an attached RTL2832 device. *) Load image ''ubuntu-14-04-64bit-sdr.ndz'' on ''node20-6.grid.orbit-lab.org'' then ssh in the node with X11 forwarding enabled. This image should have rtlsdr library already compiled. {{{ grid> omf load -i ubuntu-14-04-64bit-sdr.ndz -t node20-6.grid.orbit-lab.org grid> omf tell -a on -t node20-6.grid.orbit-lab.org grid> ssh -Y node20-6 }}} *) Install dependencies {{{ root@node20-6:~# apt-get install python python-setuptools python-wxgtk2.8 python-matplotlib python-numpy python-imaging git cmake libusb-1.0-0-dev }}} *) Verify RTL2832 device is recognized by the node. {{{ root@node20-6:~/rtl-sdr/src# lsusb | grep Realtek Bus 002 Device 003: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T }}} *) Remove default driver for RTL2832. {{{ root@node20-6:~# modprobe -r dvb_usb_rtl28xxu }}} *) Verify RTL library has access to RTL2832 {{{ root@node20-6:~# cd ~/rtl-sdr/src root@node20-6:~/rtl-sdr/src# ./rtl_test -t Found 1 device(s): 0: Realtek, RTL2838UHIDIR, SN: 00000406 Using device 0: Generic RTL2832U OEM Found Elonics E4000 tuner Supported gain values (14): -1.0 1.5 4.0 6.5 9.0 11.5 14.0 16.5 19.0 21.5 24.0 29.0 34.0 42.0 Sampling at 2048000 S/s. Benchmarking E4000 PLL... [E4K] PLL not locked for 52000000 Hz! [E4K] PLL not locked for 2234000000 Hz! [E4K] PLL not locked for 1117000000 Hz! [E4K] PLL not locked for 1249000000 Hz! E4K range: 53 to 2233 MHz E4K L-band gap: 1117 to 1249 MHz }}} *) Install pyrtlsdr library which provides a Python API for the RTL library {{{ root@node20-6:~# git clone git://github.com/roger-/pyrtlsdr.git root@node20-6:~# cd pyrtlsdr root@node20-6:~/pyrtlsdr# sudo python setup.py install root@node20-6:~/pyrtlsdr# cd .. }}} *) Export Python variable {{{ root@node20-6:~# export PYTHONPATH=$PYTHONPATH:/usr/lib/python2.7/dist-packages }}} *) Install RTLSDR-SCANNER gui. Please check here for [http://eartoearoak.com/software/rtlsdr-scanner additional information] {{{ root@node20-6:~# git clone https://github.com/EarToEarOak/RTLSDR-Scanner.git root@node20-6:~# cd RTLSDR-Scanner/src/ root@node20-6:~/RTLSDR-Scanner/src/# ./rtlsdr_scan.py & }}} || [[Image(RTLSDR-Scanner.png​, width=700px)]] ||