В прошлом году была объявлена RFNM (RF Not Magic) — программно-определяемое радио, открытое для предзаказа. RFNM — SDR, основанный на новом 12-битном базовом чипе LA9310, и вместе с любой из плат Granita или Lime она способна на настройку в диапазоне от 10 до 7200 МГц или 5–3500 МГц соответственно. Она также способна на широкую полосу пропускания — до 153.6 МГц на хост-устройствах, таких как ПК. RFNM доступна по цене: US$299 за материнскую плату, US$179 за Lime board, и US$249 за Granita board. В настоящее время второй производственный пакет доступен для предзаказа.
Недавно мы получили наш заказ RFNM, с Granita и Lime платами. Это обзор наших первых впечатлений и тестов на устройстве. Примечание: хотя RFNM способен к передаче, в данном обзоре мы не тестировали эту возможность.
Физический обзор
Материнская плата RFNM поставляется в виде печатной платы (PCB) с большим радиатором снизу и очень тихим встроенным вентилятором. Дочерние платы подключаются к материнской плате через межплатный разъём и закрепляются семью винтами. Существует ещё одно межплатное соединение для подключения второй дочерней платы, но в этом обзоре мы его не тестировали.
На правой стороне имеется разъем питания постоянного тока 4–18 В и USB-A, USB-C, HDMI и Ethernet. Также на боковой панели есть SIM‑карта и SD‑карта. С левой стороны платы размещены MMCX‑разъёмы для внешнего эталонного тактового сигнала и вывода тактового сигнала. Также есть различные разъёмы-заголовки для PPS OUT/IN, UART, I2C, GPIO и PWM. Со стороны радиатора имеется JTAG‑разъём, перемычки для сброса прошивки и площадки для пайки OCXO.


Устройство ощущается прочным, однако на задней стороне имеются несколько открытых SMT-компонентов, которые могут отломиться при грубом обращении. Все основные разъёмы припаяны через отверстия и не сломаются легко. Во время работы радиатор остается теплым на ощупь и не перегревается. Лопасти вентилятора открыты, но должны быть безопасны для пальцев и посторонних предметов на нижней стороне.
Первоначальная загрузка прошивки
Устройство питается от 4–18 В постоянного тока через barrel-разъем и подключается к ПК через порты USB-C или USB-A. По словам разработчика, требуется источник питания мощностью 10–15 Вт. В тестах ниже мы использовали импульсный источник питания 9 В, 2000 мА, и линейный источник питания на 12 В, 3000 мА.
Устройство поставляется без прошивки, и первый шаг настройки — подключить Ethernet‑кабель к ПК, подключённому к интернету, чтобы автоматически скачать и установить последнюю прошивку. Если под рукой нет Ethernet‑кабеля, можно вставить USB‑накопитель с готовой прошивкой. Установка прошивки заняла всего пару минут и прошла гладко.
Начальные тесты с SDR++
Самый простой способ заставить RFNM работать — использовать кастомную сборку SDR++, включённую непосредственно в RFNM. При подключении RFNM она появляется на вашем ПК как диск, в котором есть папка SDR++. Начало работы не требует ничего сложного: запустите этот exe SDR++ и нажмите Play.
Сначала мы столкнулись с проблемой, что RFNM не отображался в SDR++, и не отображался как диск. Однако после замены ориентации USB-C коннектора он заработал. Эта проблема повторялась на протяжении всего теста, и иногда переключение не помогало, но устройство всегда подключалось после нескольких повторных переподключений, и как только плата была подключена, она оставалась стабильной.
Тесты Lime-дочерней платы
Сначала мы протестировали RFNM с Lime-дочерней платой. Это плата на базе чипа Lime LMS7002, того же чипа, что используется в LimeSDR. Здесь используется только IQ‑выход чипа Lime, а АЦП не задействованы.
На данный момент важно отметить, что программная поддержка RFNM всё ещё на очень ранних этапах, и SDR++ в настоящее время не имеет реализованных регуляторов усиления. SDR++ — стороннее ПО к RFNM, поэтому это не вина команды RFNM. (ПРИМЕЧАНИЕ: в последние дни после того, как мы уже написали этот обзор, было сделано несколько коммитов в SDR++ по отношению к RFNM, так что эта проблема может быть уже решена)
Однако возможно SSH‑подключение к системе Linux на RFNM и изменение настройки усиления через командную строку. Чтобы подключиться по SSH, к плате нужно подключить сетевой Ethernet‑кабель (или можно использовать UART‑порт на боковой панели платы с адаптером). После входа по SSH мы можем перейти в “/sys/kernel/rfnm_primary/rx0” и отредактировать значение в текстовом файле ‘gain’. Затем, чтобы применить изменения, просто установить значение в текстовом файле ‘apply’ равным 1. Это позволило нам оптимизировать настройки усиления для наилучшего приема.
cd /sys/kernel/rfnm_primary/rx0 echo 30 > gain && echo 1 > apply


С возможностью настройки усиления плата Lime работает отлично. Сигналы сильны в диапазонах VHF и UHF, чувствительность примерно -135 дБм, и при соответствующих настройках усиления почти отсутствуют зеркальные изображения. В диапазоне 2.4 ГГц чувствительность остаётся хорошей — около -130 дБм. Хотя заявленный максимальный диапазон частот — 3500 МГц, нам удалось принимать примерно до 3.85 ГГц с пониженной чувствительностью.
Однако на HF диапазоне плата Lime работает очень плохо. Мы начинаем видеть падение чувствительности примерно на 50 МГц, где она около -93 дБм; на 30 МГц — около -58 дБм; на 15 МГц — около -37 дБм.
Тесты Granita-дочерней платы
Во втором тесте мы сняли Lime‑плату с RFNM‑материнской платы и установили д oчернюю плату Granita. Дочерняя плата Granita основана на чипе Arctic Semiconductor «Granita», микшере RFFC2071A и нескольких предуселекторов.
К сожалению, мы очень разочарованы в работе Granita, так как наблюдается очень значительное зеркальное изображение сигналов, что стирает возможность чистого приема практически на любом диапазоне. По словам Давиде, эта проблема — аппаратная баг прошивки чипа Granita от Arctic Semiconductor, который, возможно, будет исправлен в будущем, но гарантий нет, что исправимо, поскольку исправление зависит от Arctic Semiconductor, который, похоже, не очень реагирует на проблему. Давиде (создатель RFNM) пишет:
В Lime‑плате IQ LPF работает корректно. Для granita он не работает совсем, как будто точка -3 дБ у 20 МГц LPF опции — 100 МГц и выше. Производитель RFIC постоянно говорил, что это ошибка прошивки, поэтому я дал им devkit для воспроизведения, но они так и не исправили её за последний месяц. Я не знаю, на данный момент, является ли это программной проблемой или они обнаружили, что это что-то более серьёзное.
Мы подтвердили, что настройка усиления на Granita также не помогла с проблемой изображения.

Мы также заметили, что Granita улавливает или внутренне генерирует значительные шумовые пики. Сначала мы предположили, что они идут от 9V SMPS, но даже при использовании линейного источника питания на 12В такие пики наблюдались. Такой же шум не был виден на Lime.

Чувствительность в диапазонах выше 600 МГц была хорошей, примерно -135 дБм. Ниже 600 МГц, где используется смеситель, чувствительность была немного хуже — примерно -123 дБм. Максимальная частота, которую мы могли принять, составляла около 5900 МГц, но после примерно 5 ГГц сигналы становились очень слабыми. Плата Granita заявлена как принимающая 10–6300 МГц, однако документация указывает, что текущая партия способна на настройку примерно до 5 ГГц. Указывается, что следующая партия должна достичь 6.3 ГГц.
Плата Granita смогла принимать вещательные AM, коротковолновые и любительские диапазоны с хорошей силой сигнала. На диапазоне 15–50 МГц чувствительность примерно -115 дБм.

На момент обзора мы не можем рекомендовать покупку Granita, если вы не работаете в очень контролируемой среде. Надеемся, что в ближайшем будущем проблема IQ LPF будет исправлена, чтобы сделать Granita работоспособной.
Тесты GNU Radio (Windows)
На носителе RFNM также имеется доступный драйвер Soapy. Мы скопировали файл RFNMSupport.dll с носителя RFNM в папку SoapySDR нашей установки GNU Radio radioconda по адресу C:\Users\proje\radioconda\Library\lib\SoapySDR\modules0.8. Затем мы открыли GNU Radio и файл gnuradio_example.grc. Это выводит FFT и спектропад, как в SDR++, и с доступными регуляторами усиления. При открытых регуляторах усиления сочетание Lime + RFNM работает отлично.
Дочерние платы также имеют встроенные антенны, которые можно включать или отключать через выпадающее меню в интерфейсе GNU Radio. Встроенная антенна на обеих платах — Pulse W3796, которая заявлена как диапазон 698 МГц — 2.7 ГГц. Встроенная антенна хорошо подходит для ближнего тестирования на стенде, но мы предпочли использовать внешнюю дипольную антенну на улице ради лучшего приема.
Режим пропускной способности 153.6 МГц
Можно увеличить пропускную способность RFNM, подключив к ПК два USB‑кабеля. Это позволяет получить до 153.6 МГц 12-битных данных. Включение этого режима требует редактирования переменной через терминал
echo 153 > /sys/class/i2c-dev/i2c-0/device/0-0050/rfnm_set_dcs_freq && reboot
После установки мы смогли отредактировать блок samp_rate в примере GNU Radio и установить его на 153.6 МГц. В данный момент текущий SDR++ не поддерживает скорость выборки 153.6 МГц.

Заключение
Ясно, что RFNM находится на переднем крае технологий, при этом оставаясь доступным, обладает большим потенциалом и превосходными функциями и спецификациями. Встроенный процессор, DSP и возможности GPU на RFNM могут стать изменяющими правила игры в ближайшем будущем. Однако на момент этого обзора программная поддержка всё ещё на очень ранних стадиях, документация отсутствует, и он ещё не рекомендуется для обычных пользователей, которые просто хотят подключить и начать работать с SDR для прослушивания и декодирования сигналов.
Что касается Granita‑дочерней платы, мы, вероятно, воздержимся от покупки до получения ясности по поводу исправления IQ LPF.
Если вы продвинутый пользователь SDR и уверенно работаете с GNU Radio, Linux и такими продвинутыми приложениями, как настройка и развёртывание мобильных базовых станций, тогда RFNM может быть хорошим выбором. Мы ожидаем приложений, которые будут использовать встроенные возможности DSP и GPU.
Источник:
