RTL-SDR. Смотрим и слушаем укв диапазон.
И так, у нас есть RTL-SDR устройство и персональный компьютер под управлением Ubuntu. Надо заставить все это работать вместе под линуксом.
Пойдем по пути наименьшего сопротивления. Ищем в Яндексе по ключевой фразе "Ubuntu RTL-SDR". Находим проект Gqrx.
Скриншот , gqrx.dk
Gqrx - это свободно программное обеспечение с открытым кодом, выпущенное под GNU General Public license. Оно поддерживает большое количество SDR устройств, включая Airspy, Funcube Dongles, rtl-sdr, HackRF и USRP устройства. Далее и до конца статьи - вольные переводы с английского мои.
Gqrx позволяет:
Обнаруживать совместимые SDR устройства, подключенные к компьютеру;
Обрабатывать I/Q потоки данных от устройств;
Изменять частоту, усиление и другие параметры подключенного устройства;
Позволяет демодулировать AM, SSB, CW, FM-N и FM-W (mono и stereo) сигналы;
работать с сигналами FM NOAA APT (от себя - нечто вроде NFM с полосой около 25-50 кГц. Используется для передачи карт погоды в реальном времени со спутников NOAA в диапазоне 136-137 мГц).
Управляемый полосовой фильтр демодулятора;
AGC, шумоподавитель;
Программа отображает FFT и "водопад";
Программа позволяет записывать демодулированный сигнал в WAV файл;
Записывать и воспроизводить I/Q данные;
Отображать спектр сигнала без его демодуляции;
Возможно удаленное управление по TCP соединению;
Возможен стриминг демодулированного адио потока посредством UDP;
(Вольный перевод с сайта Gqrx.dk мой)
Пакет доступен в официальном репозитории Ubuntu и может быть установлен посредством центра приложений или средствами командной строки.
Устанавливаем его.
Я делаю это прямо сейчас, по ходу написания статьи. Пакет нормально установился. Версия пакета, правда, несколько меньше, чем билд официального релиза, но и не на много.
Обычно этого хватает. После запуска все должно работать.
Что делать, если установка пакета не возможна?
Эта ситуация может возникнуть в момент обновления версии ОС, т.е. ОС обновлена, но поддержка всех пакетов еще не готова.
В таком случае смотрим на скриншот выше.
С недавних пор существует версия Gqrx в формате Appimage. Она доступна к скачиванию на официальном сайте программы или на гитхабе.
А у них есть AppImage!
Скачиваем приложение в формате Appimage, так или иначе даем ему права на исполнение и запускаем.
Даем разрешение на выполнение.
Пока я вижу только одну проблему для подобной установки ПО - обновлять программное обеспечение надо вручную, тогда как установленные пакеты будут обновляться автоматически.
Есть и другая проблема. На компьютере должно быть установлено GNU-radio. Из репозитория UBUNTA вполне подойдет.
Еще возможна компиляция из исходников и установка из командной строки посредством PPA . Все описано тут.
Все. В реальности это занимает минуты времени.
На форуме radioscanner.ru есть огромная тема по работе устройств rtl-sdr под линуксом. Ссылку давать не хочу, так как при ее открытии возникает собщение об угрозе. Такие ссылки могут быть негативно восприняты Дзеном.
Коллеги! При на сайт https://www.radioscanner.ru/ может возникнуть сообщение об угрозе. На этом сайте есть проблемы с сертификатом.
Закреплю скриншот с него тут. Обратите внимание на дату первых постов. 2012 год.
И так, у нас есть компьютер с установленной GQRX, RTL-SDR v 3 приемник и автомобильная СБ антенна на балконе. Посмотрим, что мы можем увидеть и услышать.
Видеть вы будете картинки, а слышать буду я. Для контроля.
Антенна - автомобильный метровый штырь СБ, установлен на перилах балкона под углом 45 градусов к горизонту. Территориально г.Москва, Измайлово.
Оканчивается антенный кабель разъемом PL 259.
Переходник SMA-PL259.
Запускаем GQRX , получаем такое окошко.
Окно конфигурации устройств.Наше устройство найдено. Впоследствии мы выясним, как через поле "Device string" можно передать драйверу устройства некие команды, специфичные для устройства. Но сейчас просто жмем ок.
Наше SDR устройство благополучно найдено, опознано и готово к работе. Никаких дополнительных действий от нас не требуется.
Жмем "OK", в меню "File" выбираем пункт "Start DSP". На экране появляется линия, отображающая спектр сигнала и "водопад". Устанавливаем частоту FM диапазона.
Работа с интерфейсами программы интуитивно понятна, дальше особых комментариев по элементам управления не будет. Хотя, за время написания статьи я нашел для себя новую особенность. Если навести курсор на шкалу часто выше водопада, колесиком мыши можно менять масштаб шкалы. Удобно при тонкой настройке на станцию.
Растягиваем шкалу частот.
Выбираем частоту FM диапазона, там всегда есть мощные станции и видим характерные "столбы" на "водопаде и плавные пики на спектре сигнала. Настраиваемся на нужную радиостанцию вводом частоты или просто кликаем мышкой в нужное место на "водопаде" или спектре.
Теперь надо услышать звук.
Сигналы в FM диапазоне.
В настройках программы выбираем WFM модуляцию, одновременно отмечаем изменение ширины полосового фильтра детектора. Приходит понимание, что красный цвет на водопаде соответствует сильному сигналу, синий - отсутствию сигнала.
В окне Audio в реальном времени отображается спектр де модулированного сигнала. Иногда это полезно.
Перестраиваемся на27МГц.
СБ диапазон, вероятно, продукты интермодуляции.
Модуляция - АМ. Хотя, на вид спектра и водопада выбор модуляции не влияет. Виден регулярный "забор" из тонких линий и слабый спектр радиосигналов.
Идем выше по частоте, фиксируем все непонятно и интересное.
Артефакты на Low Band.
Видны "хвосты" вещательных станций. То, что это вещалки можно понять из ширины столба на водопаде и полосы пропускания фильтра детектора.
Откуда они здесь берутся? Диапазон 32 мГц. совсем не вещательный. Можно, конечно предположить что это побочные излучения радиостанций, но это маловероятно. Скорее всего это продукты интермодуляци нашего приемника.
Мы хотели дешевое устройство, и получили дешевое устройство. На входе данного приемника нет абсолютно никаких фильтров, и он обрабатывает все, что получает от антенны. При большом уровне сигналов или большом усилении происходит интермодуляция, что вызывает появление на спектре и водопаде фантомных сигналов. В реальном эфире их нет. Издержки нашего оборудования.
Как с этим бороться? Очень сложно и очень просто. На входе приемника надо устанавливать фильтры нужного диапазона или уменьшать усиление приемника. О фильтрах мы поговорим отдельно. Или применять резонансные антенны (что в какой-то мере эквивалентно установке фильтров).
При уменьшении усиления полезный сигнал будет уменьшатся линейно, а сигналы побочных преобразований квадратично. Возможно, удастся найти усиление, когда уровень полезного сигнала будет еще достаточен, а продукты интермодуляции и побочных преобразований уйдут ниже уровня шума.
Фильтров у нас сейчас нет, так что только уменьшаем усиление.
Регулируем усиление.
Уменьшили усиление. Смотрим на водопад. Понимаем, что есть ползунок "Gain" - фактически громкость,а ползунок "LNA" - усиление приемника. В реальном профессиональном оборудовании таких регуляторов может быть может быть больше.
Советский ЧМ диапазон. На водопаде и спектре сигнала видны следы поднесущей. Станция работает в стерео с пилот тоном. Это старый советский стандарт стерео вещания. Подробности тут.
Спектр станции с пилот тоном.
Стандарт советских времен. Тогда у нас было хоть что-то свое. Хотя бы стандарты.
Странный сигнал на частоте 125 мГц.
Пораженная частота.
Возможно, это тоже фантом. Так называемая пораженная частота. Скорее всего мы видим пятую гармонику опорного генератора 25 мгц., установленного в самом приемнике или в компьютере. Издержки оборудования.
Всегда надо очень подозрительно относится к "узким" сигналам на круглых частотах. 144 мгц. тоже круглая частота (144=12*12).
Gqrx как сканер.
GQRX является наиболее распространенной и удобной программой для работы с RTL-SDR устройствами в мире Linux.
Экран GQRX.
Функционал у программы богатый, но кое-какого ненавязчивого сервиса ему явно не хватает. Например, очень не хватает простого сканера частот.
Механизма плагинов, как в SDR Sharp у нас нет, но зато у GQRX есть протокол удаленного управления по TCP. Протокол открытый и опубликован тут. В качестве примера, рассматривается управление программой в ручном режиме, посредством telnet соединения.
В процессе дальнейших поисков на Гитхабе был обнаружен репозиторий neural75/gqrx-scanner содержащий программу для удаленного управления GQRX в режиме сканера частот. Программа выпущена по лицензии MIT.
Это очень хорошо. Это значит, что нам не нужно искать кряки, ломалки и серийники. Мы же не под Windows работаем.
Забираем исходники. Я не клонирую Git, а просто скачиваю архив с сайта.
Распаковываем архив в домашнем каталоге, папка Temp и пытаемся компилировать.
Установили cmake.
Нужен cmake. По умолчанию он не устанавливается в Ubunta 21.04 Все подсказки по установке есть на экране. Установили.
Скомпилировали и построили.
Скомпилировали.
Читать и смотреть картинки несколько дольше, чем просто взять и сделать.
Установили gqrx-scanner.
Установили.
На актуальной 21.04 Ubunta все проходит гладко и без ошибок. Получили бинарник.
Декларируются следующие особенности модуля gqrx-scanner:
Поддержка закладок Gqrx;
Быстрое последовательное сканирование с адаптивным мониторингом наиболее активных станций;
Сканирование в ограниченном диапазоне частот (закладок);
Поддержка множественных тегов в режиме сканирования по закладкам.
Автоматический захват частот в режиме сканирования;
Интерактивное управление сканированием, пропуск частот, занесение частот "в черный список" или ручной пропуск частот.
Опции командной строки
Использование:
gqrx-scanner [-h|--host <host>] [-p|--port <port>] [-m|--mode <sweep|bookmark>]
[-f <central frequency>] [-b|--min <from freq>] [-e|--max <to freq>]
[-d|--delay <lingering time in milliseconds>]
[-t|--tags <"tag1|tag2|...">]
[-v|--verbose]
-h, --host <host> Имя хоста для управления. Default: localhost
-p, --port <port> Номер порта. Default: 7356
-m, --mode <mode> Режим сканирования. Default: sweep
Возможные значения: sweep, bookmark
-f, --freq <freq> Центральная частота сканирования.
Сканируется частота, установленная в GQRX + 1 мГц. Опция не совместима с ключами -b, -e
-b, --min <freq> Начальная частота сканирования в Гц.
-e, --max <freq> Конечная частота сканирования в Гц.
-d, --delay <time> Время задержки в миллисекундах до повторной активации сканера. по умолчанию 2000.
-x, --speed <time> Задержка в режиме сканирования по закладкам.
-y --date Формат даты и времени, default is 0.
0 = mm-dd-yy
1 = dd-mm-yy
2 = yy-mm-dd
This feature has not been implemented yet.
-t, --tags <"tags"> Задание тегов частот. Теги заключаются в кавычки, разделяются вертикальной линией. Пример: "Tag1|Tag2". Теги не чувствительны к регистру. Возможен поиск по подстроке. Работает только в -m режиме сканирования.
-v, --verbose Вывод дополнительной информации при сканировани.
--help Оригинальный текст со списком команд. Естественно, на английском.
Интерактивные команды в процессе сканирования:
[space] OR [enter] : Пропуск частоты и переход к следующей;
'b' : Занесение частоты в черный список;
'c' : Очистка "Черного списка";
'p' : Пауза и возобновление сканирования.
Примеры использования
Выполняем сканирование в частотном режиме +- 1мГц относительно частоты демодуляции Gqrx:
gqrx-scanner
Поиск по частотам всех закладок в интервале +- 1 Mhz относительно частоты настройки Gqrx:
gqrx-scanner -m bookmark
Сканирование по частоте, с центральной частотой 144.000 MHz в интервале 143.000-145.000 MHz:
gqrx-scanner -f 144000000
Выполняем сканирование по закладкам Gqrx частот, помеченных тегами "DMR" или "Radio Links" в интервале частот 430MHz-431MHz:
gqrx-scanner -m bookmark --min 430000000 --max 431000000 --tags "DMR|Radio Links"
Выполняем сканирование по частоте от 430MHz до 431MHz, с задержкой на частоте 3 сек. после потери сигнала станции:
./gqrx-scanner --min 430000000 --max 431000000 -d 3000
Сканируем.
Запускаем GQRX, в меню "Tools" разрешаем удаленное управление. Говорим "Start DSP". Устанавливаем в DQRX необходимую частоту, выставляем требуемое усиление приемника, на вкладке "Receiver Options" кнопкой "R" сбрасываем настройки шумоподавителя, кнопкой "A" выставляем уровень шума. При необходимости корректируем его руками.
Включаем Noise blanker.
ВАЖНО.
Добавляем в закладки любую станцию или частоту. Без этого действа запуск сканера вызовет ошибку.
Открываем новую консоль в Ubuntu и запускаем в ней . У меня окно консоли просто расположено поверх окна Gqrx.
Даем команду сканирования из перечисленных выше. Запускается сканирование, в окне консоли набегают сообщения о ходе процесса.
Видны и минусы данной технологии. Мы осуществляем последовательное сканирование, короткие сигналы вне полосы демодуляциии могут быть пропущены. И пропускаются. Просто на водопаде это наглядно видно.
Был рад, если рассказал что-то новое. Лично для меня новое было. Я научился пользоваться GQRX как сканером.
Сканирование по тегам мы с вами проверим при рассмотрении связки Gqex + DSD+.
В процессе работы я записал несколько красивых роликов сканирования, но Дзен, по каким-то причинам, не дает возможность загрузить это видео. Возможно, он принимает его за дублированный контент.
Работаем с закладками внешними средствами.
Если мы дальше будем использовать эту программу (а мы будем, так как другого выбора вроде как и нет), то уже в качестве инструмента, которым мы просто пользуемся.
Меню закладок.
Мы создали ряд закладок... Подписали их, и хотим их поправить.
Править можно через панель закладок, вызывается из меню View, а можно и внешним образом. Вдруг вам нужен какой-то массовый экспорт или импорт закладок?
Меню закладок
Если вы дружите с консолью, то просто говорим:
gedit ~/.config/gqrx/bookmarks.csv
Если вы не дружите с консолью, это превращается в целый квест. Запускаем файловый менеджер Ubuntu, нажимаем в нем комбинацию клавиш "Ctrl + L" и смотрим на строку адреса. Она изменилась. Вводим там ~/.con. Начиная с этого момента, менеджер будет выводить подсказки в строке адреса. Ваша цель ввести там ~/.config/gqrx/
Мы сделали это!!!
Хранить настройки программы в скрытом каталоге домашней папке с именем . config это конечно гениально. Куда там реестру виндоуз.
Надо отредактировать файл.
Я люблю сервис. но не такой.
Мне заботливо предлагают открыть файл в LibreOffice. Потом я еще буду полчаса его сохранять.
Выбираем и открываем.
В терминале это делается за единицы секунд.
Обыкновенный файл CVS формата, разделитель полей - символ ";", решетка - признак комментариев. В верхних строках список тегов, ниже - частоты с комментариями. Единственный нам подарок от Gqrx - частоты отсортированы по возрастанию. Синие цифры на скриншоте- это подарок Gedit, просто редактор выделяет цветом числовые поля.
Не ломая структуры документа, его можно править, сохранять, кспортировать в гуглодокуенты и так далее. После такой правки закладок Gqrx придется перезапустить. Т.е. это, скорее всего, станет инструментом для массовых и поточных операций.
Наш линуксовый инструментарий.
Еще один очевидный и полезный совет. Сделать на этот файл символическую ссылку с более понятным именем. Собственно говоря, что и показано на скриншоте. Жалко, то что dropbox плохо понимает такие приемы. Обычно DropBox не следует по символическим ссылкам.