Project

General

Profile

Rtl-sdr » History » Version 44

horiz0n, 02/19/2016 10:51 PM

1 1 steve-m
[[PageOutline]]
2
= rtl-sdr =
3
4 30 horiz0n
DVB-T dongles 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].
5 1 steve-m
6
== Specifications ==
7
8 30 horiz0n
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, '''dongles that use the Elonics E4000 offer the widest possible range (64 - 1700 MHz)'''.
9 1 steve-m
10
== Supported Hardware ==
11
12 39 Hoernchen
The following devices are currently supported:
13 1 steve-m
14 43 steve-m
||'''VID'''||'''PID'''||'''tuner'''||'''device name'''||
15 42 Hoernchen
||0x0bda||0x2832||all of them||Generic RTL2832U (e.g. hama nano)||
16
||0x0bda||0x2838||E4000||ezcap USB 2.0 DVB-T/DAB/FM dongle||
17
||0x0ccd||0x00a9||FC0012||Terratec Cinergy T Stick Black (rev 1)||
18
||0x0ccd||0x00b3||FC0012||Terratec NOXON DAB/DAB+ USB dongle (rev 1)||
19
||0x0ccd||0x00d3||E4000||Terratec Cinergy T Stick RC (Rev.3)||
20
||0x0ccd||0x00e0||E4000||Terratec NOXON DAB/DAB+ USB dongle (rev 2)||
21
||0x185b||0x0620||E4000||Compro Videomate U620F||
22
||0x185b||0x0650||E4000||Compro Videomate U650F||
23
||0x1f4d||0xb803||FC0012||GTek T803||
24
||0x1f4d||0xc803||FC0012||Lifeview LV5TDeluxe||
25
||0x1b80||0xd3a4||FC0013||Twintech UT-40||
26
||0x1d19||0x1101||FC2580||Dexatek DK DVB-T Dongle (Logilink VG0002A)||
27
||0x1d19||0x1102||?||Dexatek DK DVB-T Dongle (MSI DigiVox mini II V3.0)||
28
||0x1d19||0x1103||FC2580||Dexatek Technology Ltd. DK 5217 DVB-T Dongle||
29
||0x0458||0x707f||?||Genius TVGo DVB-T03 USB dongle (Ver. B)||
30
||0x1b80||0xd393||FC0012||GIGABYTE GT-U7300||
31
||0x1b80||0xd394||?||DIKOM USB-DVBT HD||
32
||0x1b80||0xd395||FC0012||Peak 102569AGPK||
33
||0x1b80||0xd39d||FC0012||SVEON STV20 DVB-T USB & FM||
34 14 steve-m
35 40 horiz0n
If you don't know where to buy one or if you are just looking for a trustworthy source, try http://shop.sysmocom.de/products/eztv666-bulk
36 38 Hoernchen
37 31 horiz0n
People over at reddit [http://www.reddit.com/r/RTLSDR/comments/s6ddo/rtlsdr_compatibility_list_v2_work_in_progress/ are collecting a list (v2)] of other devices that are compatible.
38 2 steve-m
39 30 horiz0n
Other dongles based on the RTL2832U might be added in the future as well.
40 5 steve-m
41
This is the PCB of the ezcap-stick:[[br]][[br]]
42
[[Image(ezcap_top.jpg,50%)]][[br]]
43
More pictures can be found [http://www.steve-m.de/pictures/rtl-sdr/ here].
44 2 steve-m
45
== Software ==
46
47
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.
48
49
The code can be checked out with:
50
{{{
51
git clone git://git.osmocom.org/rtl-sdr.git
52
}}}
53 35 horiz0n
54 19 steve-m
It can also be browsed on http://cgit.osmocom.org/cgit/rtl-sdr/
55 1 steve-m
56 44 horiz0n
A [http://cgit.osmocom.org/cgit/gr-osmosdr/ GNU Radio source block] for [http://sdr.osmocom.org/trac/ OsmoSDR] '''and rtlsdr''' is being created. '''Please install a recent gnuradio (>= v3.5.3) in order to be able to use it.''' 
57 41 horiz0n
58 1 steve-m
=== Building the software ===
59
60 27 horiz0n
==== rtlsdr library & capture tool ====
61 1 steve-m
62 29 horiz0n
'''You have to install development packages for libusb1.0''' and can either use cmake or autotools to build the software.
63 27 horiz0n
64
Please note: prior pulling a new version from git and compiling it, please do a "make uninstall" first to properly remove the previous version.
65
66 19 steve-m
Building with cmake:
67
{{{
68 1 steve-m
cd rtl-sdr/
69 20 horiz0n
mkdir build
70
cd build
71
cmake ../
72 19 steve-m
make
73 33 steve-m
sudo make install
74 19 steve-m
}}}
75
76
Building with autotools:
77
{{{
78
cd rtl-sdr/
79
autoreconf -i
80
./configure
81
make
82 33 steve-m
sudo make install
83 19 steve-m
}}}
84
85 1 steve-m
The build executable (rtl_sdr) can be found in rtl-sdr/src/.
86 27 horiz0n
87 37 Hoernchen
[attachment:RelWithDebInfo.zip pre-built Windows version] using libusb-pbatard and pthreads-win32 cvs
88 36 Hoernchen
89 1 steve-m
==== Gnuradio Source ====
90 27 horiz0n
91 29 horiz0n
'''The gnuradio source requires the rtl-sdr package and a recent gnuradio (>= v3.5.3) to be installed.'''
92 27 horiz0n
93
Please note: prior pulling a new version from git and compiling it, please do a "make uninstall" first to properly remove the previous version.
94
95
Building with cmake:
96
{{{
97
git clone git://git.osmocom.org/gr-osmosdr
98
cd gr-osmosdr/
99
mkdir build
100
cd build/
101
cmake ../
102
make
103 34 steve-m
sudo make install
104
sudo ldconfig
105 1 steve-m
}}}
106 44 horiz0n
107
NOTE: The source will appear under 'OsmoSDR' category in GRC menu.
108 27 horiz0n
109
==== Automated installation ====
110
111 28 horiz0n
Marcus D. Leech has kindly integrated the forementioned build steps into his gnuradio installation script at [http://www.sbrac.org/files/build-gnuradio]. This is the most user-friendly option so far.
112 2 steve-m
113
=== Usage ===
114
115 1 steve-m
Example: To tune to 392.0 MHz, and set the sample-rate to 1.8 MS/s, use:
116 2 steve-m
117
{{{
118 20 horiz0n
./rtl-sdr /tmp/out.bin -s 1.8e6 -f 392e6
119 2 steve-m
}}}
120
121
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).
122
123
=== Known problems ===
124
125
 * 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.
126
127
== Using the data ==
128
129 3 steve-m
To convert the data to a standard cfile, following GNU Radio Block can be used:[[br]]
130
[[br]][[Image(rtl2832-cfile.png)]][[br]][[br]]
131 2 steve-m
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].
132 6 steve-m
133 22 horiz0n
Please note: for realtime operation you may use fifos (mkfifo) to forward the iq data from the capture utility to the GRC flowgraph.
134
135 24 horiz0n
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], [https://github.com/bistromath/gr-air-modes ADS-B] and [https://github.com/smunaut/osmo-pocsag POCSAG].
136 32 horiz0n
137
Tell us your success story with other wireless protocols in ##rtlsdr channel on freenode IRC network.
138
139 6 steve-m
[[br]][[br]]
140
[[Image(rtl-sdr-gmr.png)]][[br]]
141
Multiple GMR-carriers can be seen in a spectrum view with the full 3.2 MHz bandwidth (at 3.2 MS/s).
Add picture from clipboard (Maximum size: 48.8 MB)