Утилита Osmo-fl2k превращает адаптер с USB на VGA за 15 долларов в SDR-передатчик, который позволяет вещать в диапазонах FM-радио и телевидения DTV, подделывать сигнал GPS или симулировать базовую станцию UMTS. Неплохая штука для дружеских розыгрышей и других интересных применений. В этой статье мы поговорим о том, как такое вообще возможно, и разберем необходимые шаги.

INFO

В статье использованы материалы презентации автора утилиты Стива Маркграфа, которую он представил на OsmoDevCon 2018, статьи в вики Osmocom и заметки Томаса Си в блоге Hackernoon. Адаптировал и перевел Андрей Письменный.

SDR-приемники в последнее время заметно упали в цене, да и SDR с возможностями передатчика тоже дешевеют, но все еще могут обойтись в сотни долларов, как, например, Hack-RF. Проект Osmo-fl2k позволяет использовать переходник USB 3.0 на VGA, основанный на чипе Fresco Logic FL2000 в качестве ЦАП общего назначения и SDR-передатчика. Стоят такие переходники примерно по 5 долларов за штуку. Благодаря Osmo-FL2K можно генерировать непрерывный поток семплов и избегать интервалов горизонтальной и вертикальной синхронизации.

Несмотря на то что выходной сигнал слаб, его более чем достаточно для того, чтобы захватить частоту FM на расстоянии нескольких метров или изобразить сигнал спутника GPS, который обычно проходит сотни тысяч километров.

WARNING

Использовать передатчик с FL2000 с незафильтрованным выходом ЦАП и присоединенной антенной за пределами экранированного помещения незаконно без лицензии. Вся ответственность за неосторожное использование описанного устройства будет лежать на тебе. Подробнее о предосторожностях — в конце статьи.

 

Предыстория

За идеей использовать адаптер VGA в качестве передатчика — длинная история.

  • В 2001 году Эрик Тьель выпустил программу Tempest for Eliza, которая передает сигнал в диапазоне AM.
  • В 2005 году Фабрис Беллар использовал видеокарту ATI Radeon 9200SE, чтобы передавать видеосигналы DVB-T, PAL и NTSC.
  • Позже, в 2009 году, Бартек Каниа опубликовал VGASIG — программу, которая позволяет передавать FM-радио в режиме реального времени при помощи SDL и обычной видеокарты.
  • В 2013 году siro использовал все три выхода ЦАП карты VGA и присоединенного модулятора ввода-вывода, чтобы передавать любые сигналы.

Главный недостаток при использовании обычной видеокарты в том, что сигнал, который генерирует RAMDAC, не до конца подконтролен пользователю. Вызывается это тем, что VGA использует горизонтальное и вертикальное запирание, которое прерывает сигнал. В отличие от конкурентов, производящих устройства DisplayLink, которые скорее напоминают обычные видеокарты с интерфейсом USB 2.0/3.0, во Fresco Logic избрали другой подход и, кстати, запатентовали его.

Вместо того чтобы встраивать фреймбуфер для ЦАП VGA в само устройство, они использовали память компьютера и непрерывно посылают данные по USB. Это делает адаптеры особенно дешевыми, поскольку они состоят из единственного чипа без памяти под фреймбуфер. Главный недостаток, конечно, в том, что на это тратятся ресурсы процессора и шина USB оказывается забитой. Это приводит к пропуску кадров и миганию экрана.

Разреверсив USB-протокол FL2000 в 2016 году, Стив Маркграф экспериментальным путем обнаружил, что возможно использовать FL2000 таким образом, чтобы горизонтальная и вертикальная синхронизация отключалась. Это дает возможность слать непрерывный поток семплов. Эта работа и стала основой для Osmo-fl2k, которая позволяет передавать слабосильные сигналы FM, DAB, DVB-T, GSM, UMTS и GPS.

 

Поддерживаемое железо

Для наших экспериментов, как ты понимаешь, подходит далеко не любой конвертер. Пройдемся по вариантам.

 

Донглы USB 3.0 на VGA

Поддерживаются только устройства с чипом Fresco Logic FL2000. Обычно они маркируются как адаптеры USB 3.0 на VGA с поддержкой разрешения 1920 × 1080 по USB 3.0 и 800 × 600 по USB 2.0. Иногда бывает написано, что максимальное разрешение — 1920 × 1200, но этот режим работает только с некоторыми контроллерами xHCI при включенной компрессии RLE.

Если на коробке написано, что максимальное разрешение 2048 × 1152, и заявлена поддержка macOS либо только интерфейс USB 2.0, то внутри будет чип DisplayLink, который несовместим с Osmo-fl2k.

Цены на адаптеры с FL2000 варьируются в пределах 5–15 долларов, а девайсы с DisplayLink стоят 25 долларов и более. Также заметь, что в устройствах с коннектором USB-C другой чипсет (например, Realtek RTD2166) и это всего лишь конвертеры с DisplayPort на VGA.

Найти нужный адаптер можно на AliExpress, eBay или Amazon. Устройства бывают разных размеров, иногда заодно поддерживают DVI или HDMI. Ниже — два наиболее типичных вида устройств.



 

Донглы USB 3.0 на HDMI

Если тебе удалось раздобыть только адаптер VGA с USB 3.0 и HDMI, а внутри у него FL2000-1Q0-DX (тот же чип в более крупном корпусе с 88 ножками и параллельным выводом RGB) и ты не постесняешься припаять контакты к блокам QFN с планарными выводами, то тебе пригодится распиновка ЦАП VGA, приведенная ниже.


Во всех адаптерах с USB 3.0 на HDMI, основанных на FL2000, стоит регулятор напряжения на 1,2 В, и он, похоже, используется не только чтобы задавать опорное напряжение для ЦАП.


Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.


  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    3 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии