RTL-SDR сервер на Raspberry Pi
Недавно написал о первоначальном старте Raspbery Pi и упомянул о том, что он будет использоваться для SDR-сервера. Как выяснилось эта идея нравится довольно большому числу людей. Честно говоря, мне не нравится передача несжатого потока. В этом плане WEB-SDR куда более лояльнее к каналу чем прямое подключение к донглу. Конечно, можно использовать узкую полосу и не запускать SDR на всю поддерживаемую ширину канала, но тогда водопад будет не так информативен. Для коротковолновиков, конечно, сие не является проблемой, а вот посмотреть тот же LPD-диапазон будет не так легко. Особенно если ты создаешь систему для мониторинга сразу большой территории, где требуется установить около десятка принимающих устройств и пересылающих данные по VPN. Но перейдём к настройке Raspberry Pi в качестве сервера RTL-SDR.
Для полноценной работы нам потребуется USB-донгл на основе RTL2832 и Raspberry Pi (желательно выше второй версии). У меня используется вот такой догл:
И вот такая плата Raspberry Pi 3 Model B:
Подключаем всю эту систему к монитору и сети. У меня роутер автоматически выдаёт IP-адреса, а для малины он привязан статически. Так, что при перезагрузке он получит нужный адрес. USB-догл подключать не обязательно. Устанавливаем операционную систему Raspbian.
Подключаемся к терминалу или открываем командную строчку на рабочем столе. Начинаем последовательно вводить команды:
pi@raspberrypi:~ $ sudo apt-get update pi@raspberrypi:~ $ sudo apt-get install cmake build-essential python-pip libusb-1.0-0-dev libusb-1.0 python-numpy git pi@raspberrypi:~ $ cd ~ pi@raspberrypi:~ $ git clone git://git.osmocom.org/rtl-sdr.git pi@raspberrypi:~ $ cd rtl-sdr pi@raspberrypi:~ $ mkdir build pi@raspberrypi:~ $ cd build pi@raspberrypi:~ $ cmake ../ -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON pi@raspberrypi:~ $ make pi@raspberrypi:~ $ sudo make install pi@raspberrypi:~ $ sudo ldconfig
Далее необходимо отредактировать один текстовый файлик. Вводим команду:
pi@raspberrypi:~ $ sudo nano /etc/apt/sources.list
Надо закоментировать всё, что не закоментировано. И дописать одну строчку.
deb http://archive.raspbian.org/raspbian jessie main
Далее продолжаем работать в командной строке:
pi@raspberrypi:~ $ sudo apt-get update pi@raspberrypi:~ $ sudo apt-get install libusb-1.0
После обновления возвращаем файл /etc/apt/sources.list к исходному виду. Можно раскоментировать закоментированное и закоментировать добавленную нами строчку, это на ваше усмотрение. Теперь можно выключить устройство, подключить к нему usb-донгл, запустить всю эту гирлянду и после загрузки пробовать запускать получившийся сервер.
Для запуска трансляции надо дать команду:
pi@raspberrypi:~ $ rtl_tcp -a 0.0.0.0 -p 1234
Теперь можно запустить SDR# на своём компьютере и подключиться к серверу вещающему поток.
Если присмотреться, то видно, что при канале 2.048 MSPS процессор занят всего на 30%. А в канал шириной два мегагерца можно уместить радиолюбительский диапазон на двойку от 144 МГц до 146 МГц.
Файлы использованные для данной статьи:
Отредактировано:2020-09-07 06:53:51
Корпус какой-то собираетесь делать?