Project

General

Profile

Actions

Rtl-sdr » History » Revision 22

« Previous | Revision 22/198 (diff) | Next »
horiz0n, 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:

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:brbr
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 ===

=== Building the software ===
To build it, you need to have libusb1.0-0-dev installed, and can either use cmake or autotools.

Building with cmake: {{{
cd rtl-sdr/
mkdir build
cd build
cmake ../
make
}}}

Building with autotools: {{{
cd rtl-sdr/
autoreconf -i
./configure
make
}}}

The build executable (rtl_sdr) can be found in rtl-sdr/src/.

=== 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 1.8e6 -f 392e6
}}}

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
brImage(rtl2832-cfile.png)brbr
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].

Please note: for realtime operation you may use fifos (mkfifo) to forward the iq data from the capture utility to the GRC flowgraph.

What has been successfully tested so far is the reception of FM/AM radio, [http://tetra.osmocom.org/ TETRA], [http://gmr.osmocom.org/ GMR], [http://svn.berlin.ccc.de/projects/airprobe/ GSM] and [https://github.com/bistromath/gr-air-modes ADS-B].
brbr
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).

Updated by horiz0n almost 6 years ago · 22 revisions

Add picture from clipboard (Maximum size: 48.8 MB)