Difference between revisions of "RTL-SDR"
m (→dump1090) |
m (→ADS-B) |
||
Line 156: | Line 156: | ||
git clone https://github.com/MalcolmRobb/dump1090 |
git clone https://github.com/MalcolmRobb/dump1090 |
||
make |
make |
||
+ | |||
+ | ===Antenna=== |
||
+ | I decided to construct my own 1090MHz antenna and I chose a [https://en.wikipedia.org/wiki/File:Dipolehalfwavebalun.png folded dipole to coax 4:1 balun] because the folded dipole makes it more rigid than 2 wires dandling in opposite directions and the balun is very easy to do out of coax cable. |
||
+ | <br>Instructions: half wavelength is ~137mm, so is the dipole length and the length of the coax balun. That's it. See [https://en.wikipedia.org/wiki/File:Dipolehalfwavebalun.png pic] for wiring. |
||
==DVB-T== |
==DVB-T== |
Revision as of 23:56, 10 November 2013
Resources
- http://sdr.osmocom.org/trac/wiki/rtl-sdr (with list of apps)
- http://rtlsdr.org/
- http://www.rtl-sdr.com/ (blog)
- http://superkuh.com/rtlsdr.html (with list of apps)
Trekstor DVB-T Stick Terres 2.0
It contains hopefully the RTL2832U, together with Elonics E4000 tuner
Seen by lsusb as 1f4d:c803 G-Tek Electronics Group, which matches Lifeview LV5TDeluxe according to osmocom
/var/log/syslog
New USB device found, idVendor=1f4d, idProduct=c803 New USB device strings: Mfr=1, Product=2, SerialNumber=3 Product: RTL2838UHIDIR Manufacturer: Realtek SerialNumber: 00000001
$ rtl_test -t Found 1 device(s): 0: Lifeview LV5TDeluxe Using device 0: Lifeview LV5TDeluxe 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 Benchmarking E4000 PLL... [...] E4K range: 52 to 2212 MHz E4K L-band gap: 1107 to 1241 MHz
rtl-sdr
sudo apt-get install rtl-sdr rtl_test -t
Play radio, 96.3MHz:
rtl_fm -f 96.3e6 -W -s 200000 -r 48000 - | aplay -r 48k -f S16_LE
If needed, from sources:
git clone git://git.osmocom.org/rtl-sdr.git cd rtl-sdr mkdir build cd build cmake ../ make cd ../build/src ./rtl_test -t
Sources contain one additional tool:
./rtl_power -f 88M:108M:125k -1 fm_stations.csv ./rtl_power -f 100M:1G:1M -i 5m -1 survey.csv
To analyze the result:
wget -O heatmap.py http://kmkeen.com/tmp/heatmap.py.txt python heatmap.py survey.csv survey.png python heatmap.py fm_stations.csv fm_stations.png
pyrtlsdr
Python wrapper for rtl-sdr
git clone https://github.com/roger-/pyrtlsdr
waterfall
git clone https://github.com/keenerd/rtlsdr-waterfall cd rtlsdr-waterfall ln -s ../pyrtlsdr/rtlsdr sudo apt-get install python-pyglet ./waterfall.py use: waterfall.py <lower freq> <upper freq> frequencies in hertz example: waterfall.py 929e6 930e6 arrow keys pan and zoom (shift for bigger steps) brackets to adjust gain click and drag to select A for autocorrelation C for constellation esc to quit ./waterfall.py 92e6 93e6
Quite detailed waterfall
Select with mouse -> constellation (C) or autocorrelation (A)
rtlizer
git clone https://github.com/csete/rtlizer ./build ./rtlizer 640x360+0+0
Quite fast to scan quickly with arrow keys
gqrx
Get latest and check for missing libs
ldd|grep found apt-get install libzeroc-ice34 ./gqrx
SDR#
sudo apt-get install mono-complete monodevelop sudo apt-get install libportaudio2 svn co https://subversion.assembla.com/svn/sdrsharp/trunk sdrsharp.svn cd sdrsharp.svn/ monodevelop
Open file .sdl
If opened as text, modify version 12 -> 11 and open again
Switch to Release; Build All; Exit
cd Release/
Edit SDRSharp.exe.config
=> enable RTLSDR
ln -s /usr/lib/x86_64-linux-gnu/libportaudio.so.2 libportaudio.so ln -s /usr/lib/x86_64-linux-gnu/librtlsdr.so.0 librtlsdr.so mono SDRSharp.exe
GNURadio
TODO
ADS-B
rtl_adsb
rtl-sdr contains already a basic decoder:
Use: rtl_adsb [-R] [-g gain] [-p ppm] [output file] [-d device_index (default: 0)] [-V verbove output (default: off)] [-S show short frames (default: off)] [-Q quality (0: no sanity checks, 0.5: half bit, 1: one bit (default), 2: two bits)] [-e allowed_errors (default: 5)] [-g tuner_gain (default: automatic)] [-p ppm_error (default: 0)] filename (a '-' dumps samples to stdout) (omitting the filename also uses stdout)
Example:
./rtl_adsb -V [...] *c5d3eaddaba63b95b36305a632a0; DF=24 CA=5 ICAO Address=d3eadd PI=0xa632a0 Type Code=21 S.Type/Ant.=3 -------------- *835d53aa49b5aca233339449a21c; DF=16 CA=3 ICAO Address=5d53aa PI=0x49a21c Type Code=9 S.Type/Ant.=1 -------------- *85ca7ba3ce33a2af6159b5aed168; DF=16 CA=5 ICAO Address=ca7ba3 PI=0xaed168 Type Code=25 S.Type/Ant.=6 --------------
dump1090
Dumping ADS-B aeronautic data from 1090MHz
sudo apt-get install librtlsdr-dev git clone https://github.com/antirez/dump1090.git make
Usage:
./dump1090 ./dump1090 --help ./dump1090 --interactive --net --enable-agc --metric
With "--net" go to http://127.0.0.1:8080
Actually this fork is much more advanced:
git clone https://github.com/MalcolmRobb/dump1090 make
Antenna
I decided to construct my own 1090MHz antenna and I chose a folded dipole to coax 4:1 balun because the folded dipole makes it more rigid than 2 wires dandling in opposite directions and the balun is very easy to do out of coax cable.
Instructions: half wavelength is ~137mm, so is the dipole length and the length of the coax balun. That's it. See pic for wiring.
DVB-T
After all it's initially a DVB-T receiver, isn't it?
TODO