Недавно появилась в хозяйстве крайне интересная вещь как широкополосный радиоприемник/сканер из свистка для приема цифрового телевидения DVB-T на чипах RTL2832U и R820T2.
В этом кратком мануале я расскажу как запустить сервер rtl_tcp чтобы удаленно слушать эфир.
RTL-SDR — это целое семейство дешевых ТВ-тюнеров, способных выполнять функцию SDR-приемника. У этих игрушек разные названия и бренды, но объединяет их одно — все они построены на чипсете RTL2832. Это микросхема, содержащая два 8-битных АЦП с частотой дискретизации до 3,2 МГц (однако выше 2,8 МГц могут быть потери данных), и интерфейс USB для связи с компьютером. Эта микросхема на входе принимает I- и Q-потоки, которые должны быть получены другой микросхемой.
R820T и E4000 — это две наиболее удобные для SDR микросхемы, реализующие радиочастотную часть SDR: усилитель антенны, перестраиваемый фильтр и квадратурный демодулятор с синтезатором частоты. Разница между ними следующая: E4000 работает в диапазоне ~52–2200 МГц и имеет немного большую чувствительность на частотах менее 160 МГц. Из-за того что производитель E4000 обанкротился и микросхема снята с производства, остающиеся тюнеры покупать все труднее, и цены на них растут.
R820T работает в диапазоне 24–1766 МГц, однако диапазон перестройки внутренних фильтров сильно затрудняет работу R820T выше 1200 МГц (что делает невозможным, например, прием GPS). На данный момент тюнеры на этой микросхеме легко купить, и стоят они около 10–11 долларов.
Копипаста отсюда
Сейчас производитель Rafael Micro уже давно выпускает новую версию чипа R820T - R820T2. В сети уже есть результаты сравнения R820T и R820T2, в которых последний чип лучше старого.
Плата свистка на чипе R820T с установленным диодом (защита от статики)
R820T2
И так, приступим.
- sudo apt-get update
- sudo apt-get install cmake build-essential python-pip libusb-1.0-0-dev libusb-1.0 python-numpy git
- cd ~
- git clone git://git.osmocom.org/rtl-sdr.git
- cd rtl-sdr
- mkdir build
- cd build
- cmake ../ -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON
- make
- sudo make install
- sudo ldconfig
Проверим что свисток работает
- rtl_test
- pi@raspberrypi:~$ rtl_test
Found 1 device(s):
0: Realtek, RTL2832U, SN: 00001302
Using device 0: Generic RTL2832U
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6
[R82XX] PLL not locked!
Sampling at 2048000 S/s.
Info: This tool will continuously read from the device, and report if
samples get lost. If you observe no further output, everything is fine.
Reading samples in async mode...
lost at least 68 bytes
Далее, чтобы корректно работал rtl_tcp (при переподключении rtl_tcp намертво зависал или выключался) нужно установить более свежую версию libusb.
Для этого редактируем список источников
- sudo nano /etc/apt/sources.list
Добавляем строку, сохраняем и выходим из nano
- deb http://archive.raspbian.org/raspbian jessie main
Обновляем информацию о пакетах
- sudo apt-get update
Устанавливаем свежую версию libusb
- sudo apt-get install libusb-1.0
Редактируем список источников до первоначального состояния
- sudo nano /etc/apt/sources.list
- #deb http://archive.raspbian.org/raspbian jessie main
- sudo reboot
- rtl_tcp -a 192.168.1.129 -p 1234
- 192.168.1.129:1234
Теперь при переподключении к Raspberry Pi - rtl_tcp не будет сам выключаться или зависать.
Инструкция супер, спасибо!
ВідповістиВидалитиЗапустил на Raspberry Pi 2. Работает супер. Спасибо!!!
ВідповістиВидалитиВот бы еще инструкцию, как сделать, чтобы при подаче питания на малину rtl_tcp автоматом запускался.
ВідповістиВидалитиДобавить строку запуска в крон или в автозапуск.
ВидалитиА не затруднит вас написать более подробно для чайников, как добавить в автозапуск?
ВідповістиВидалитиАлексей, спасибо. Присматриваюсь к этому проекту, но я- полный чайник и иду малыми шагами. А будет это работать с wheezy и на фото не видно какой монитор используете?
ВідповістиВидалитиУ меня на малине wheezy. На скриншоте изображен SDR Touch (программа для ОС Android), на Linux есть неплохая программа GQRX, для Windows это SDR# (SDR Sharp)
ВідповістиВидалитиТут малина выступает в качестве сервера, это для того, чтобы не тянуть радио кабель (он намного дороже обычной витой пары)
Пытаюсь запустить в sdr# пишет что хост неизвестен
ВидалитиПытаюсь запустить в sdr# пишет что хост неизвестен
ВидалитиСпасибо. Не понял насчет радиокабеля- он же только от антенны? Или от аудиовыхода малины? Я понимаю, что по TCP- на любой комп и дальше на любую прогу по звуку, а как можно выход просто на встроенный аудио сделать для обычных наушников или колонок? Меня интересует просто приемник на базе малины. Есть сама малина, тач-скрин 3.5 дюйма Тонтек и Донгл.
ВідповістиВидалитиРадиокабель - для соединения антенны и свистка. Например вы живете на 1-м этаже, дом 9 этажей. Тянуть с крыши кабель RG-58(50Ом) очень дорого, протянуть витую пару и кинуть малинку на крыше - значительно дешевле.
ВидалитиЯ малину в качестве приемника для прослушивания не использую. Только как сервер.
Спасибо. Понял. Будем искать дальше. :)
ВидалитиЗдравствуйте, а эта программа работает только как сервер? Нельзя выводить звук напрямую с малины, видеть водопад и управлять приемником в целом?
ВідповістиВидалитиМожет быть есть какая-то программа для этих целей, и мануал по установке для чайника!?
https://github.com/LomTuby/rtl-sdr
Видалитиа я ваще ничё не магу . интересно - видно , но ! молодцы . аткуда только чё берут в голову
ВідповістиВидалитиА как сделать чтобы сервер поддерживал девайс airspy usb?
ВідповістиВидалитиПрисоединяюсь к вопросу - очень актуально.
ВидалитиУ меня нет Airspy чтобы проверить))
ВидалитиСпасибо хорошая инструкция!
ВідповістиВидалитиа можно ли сконфигурировать Raspberry Pi 3 с двумя свистками.
ВідповістиВидалити1 используется для снятия данных ADS-B
2 хочу использовать для SDR.
Если да, то подскажите как правильно сконфигурировать чтобы "конфликта небыло"
Делается легко. Нужно читать мануал от rtl-sdr. Подсказка
Видалитиrtl_tcp -a 127.0.0.1 -p 1234 -d 1 &
rtl_tcp -a 127.0.0.1 -p 1235 -d 0 &
-d это девайс
Тоже интересно. Есть ли более подробная информация? Кто-нибудь воплотил уже?
ВидалитиНастроил по Вашей инструкции , sdrsharp-ом подключаюсь ни каких ошибок не выскакивает , но и сигнала нет даже шумов нету, просто ровный одноцветный водопад. В чем может быть проблема, донгл рабочий через USB работает нормально
ВідповістиВидалитиНе устанавливется libusb-1.0. Пишет, что установлена более новая версия. При подключении сеть малины виснет.
ВідповістиВидалитиЧто можно сделать?
Подскажите где взять иcходники модернизированного драйвера USB jakub 07.02.2017 for direct sampling tcp support для использования со свистком RTL SRD V3 ! ?
ВідповістиВидалитиПри котором появляется дополнительный параметр -i direct sampling
https://github.com/keenerd/rtl-sdr
ВидалитиУ него есть ключ -D для rtl_sdr
Здравствуйте,А если использовать hack rf one например,не получится как я понял
ВідповістиВидалитиСколько Пользователей могут одновременно слушать сервер?
ВідповістиВидалитиВсе сделано по пунктам. Внимательно и без ошибок. Ничего не работает. Статья видимо настолько устарела что можно ее удалять...
ВідповістиВидалитиА как именно не работает? На RPI 2 c raspbian 8 просто собрал исходники, libusb не обновлял - все нормально работает
Видалитида, все пашет. libusb не обязательно ставить.
ВідповістиВидалитиА может кто подсказать как подкл к RTL-SDR серверу с внешнего ip? По локалке все работает отлично, а вот с инету не могу получить доступ(((
ВідповістиВидалитиip стакика, проброс портов сделан!