Rtl-sdr » History » Revision 17
Revision 16 (steve-m, 02/19/2016 10:51 PM) → Revision 17/205 (steve-m, 02/19/2016 10:51 PM)
[[PageOutline]]
= rtl-sdr =
DVB-T sticks based on the Realtek RTL2832U can be used as a cheap SDR, since the chip allows transferring the raw I/Q samples to the host, which is officially used for DAB/DAB+/FM demodulation. The possibility of this has been discovered by the V4L/DVB kernel developer [http://thread.gmane.org/gmane.linux.drivers.video-input-infrastructure/44461/focus=44461 Antti Palosaari].
== Specifications ==
The RTL2832U outputs 8-bit I/Q-samples, and the highest theoretically possible sample-rate is 3.2 MS/s, however, the highest sample-rate without lost samples that has been tested so far is 2.8 MS/s. The frequency range is highly dependent of the used tuner, sticks that use the Elonics E4000 offer the best range (64 - 1700 MHz).
== Supported Hardware ==
So far, the following devices are supported:
* ezcap EzTV668 USB 2.0 DVB-T/DAB/FM stick (Elonics E4000 tuner) (sources: [http://www.aliexpress.com/product-gs/486876635-DVB-T-Digital-TV-USB-Dongle-Stick-With-FM-DAB-DAB--wholesalers.html AliExpress], [https://www.dealextreme.com/p/dvb-t-digital-tv-usb-dongle-stick-with-fm-dab-dab-44326 Dealextreme])
* ezcap EzTV666 USB 2.0 DVB-T/DAB/FM stick (Elonics E4000 tuner, [attachment:EZTV666.JPG picture])
* Hama nano DVB-T stick (Elonics E4000 tuner)
* Terratec NOXON DAB/DAB+ USB-Stick (Fitipower FC0013 tuner)
People over at reddit [http://www.reddit.com/r/RTLSDR/comments/rbqfz/rtlsdr_compatibility_list_work_in_progress_please/ are collecting a list] of other devices that are compatible.
Other sticks based on the RTL2832U might be added in the future as well.
This is the PCB of the ezcap-stick:[[br]][[br]]
[[Image(ezcap_top.jpg,50%)]][[br]]
More pictures can be found [http://www.steve-m.de/pictures/rtl-sdr/ here].
== Software ==
rtl-sdr is a commandline tool that can initialize the RTL2832, tune to a given frequency, and record the I/Q-samples to a file.
The code can be checked out with:
{{{
git clone git://git.osmocom.org/rtl-sdr.git
}}}
It can also be browsed on http://cgit.osmocom.org/cgit/rtl-sdr/
=== Progress ===
* A [http://cgit.osmocom.org/cgit/osmo-sdr/log/?h=dimitri/rtlsdr GNU Radio source block] is being created
* Current progress is happening in the [http://cgit.osmocom.org/cgit/rtl-sdr/log/?h=librtlsdr librtlsdr-branch] (Rework to a library, support for multiple devices, tuner autodetection, FC0012 support)
=== Building the software ===
To build it, simply run 'make' in the src/-directory and make sure you have libusb1.0-0-dev installed.
=== Usage ===
Example: To tune to 392.0 MHz, and set the sample-rate to 1.8 MS/s, use:
{{{
./rtl-sdr /tmp/out.bin -s 1800000 -f 392000000
}}}
If the device can't be opened, make sure you have the appropriate rights to access the device (udev-rules, or running it as root).
=== Known problems ===
* If the samples are written to a harddrive, and not a ramdisk, samples may get dropped. An improved version with proper buffering and asynchronous usage of libusb is in the works.
== Using the data ==
To convert the data to a standard cfile, following GNU Radio Block can be used:[[br]]
[[br]][[Image(rtl2832-cfile.png)]][[br]][[br]]
The GNU Radio Companion flowgraph (rtl2832-cfile.grc) is attached to this page. It is based on the FM demodulation flowgraph posted by Alistair Buxton [http://thread.gmane.org/gmane.linux.drivers.video-input-infrastructure/44461/focus=44525 on this thread].
What has been successfully tested so far is the reception of [http://tetra.osmocom.org/ TETRA], [http://gmr.osmocom.org/ GMR] and [http://svn.berlin.ccc.de/projects/airprobe/ GSM].
[[br]][[br]]
[[Image(rtl-sdr-gmr.png)]][[br]]
Multiple GMR-carriers can be seen in a spectrum view with the full 3.2 MHz bandwidth (at 3.2 MS/s).