- Как собрать и откалибровать спектральный анализатор на базе HackRF One
- Что тебе реально нужно
- Шаг 1: Подключение и базовая настройка
- Шаг 2: Установка программного обеспечения
- Шаг 3: Почему калибровка — не «опционально», а обязательна
- Шаг 4: Как откалибровать частоту
- Шаг 5: Калибровка амплитуды — сложнее, но важнее
- Сравнение методов калибровки
- Частые ошибки
- Как лучше сделать — реальные советы
- Что выбрать в зависимости от ситуации
- Итог: что делать прямо сейчас
Как собрать и откалибровать спектральный анализатор на базе HackRF One
Если ты хочешь видеть, что происходит в радиочастотном спектре — от FM-радио до Wi-Fi, Bluetooth, спутниковых сигналов или даже неизвестных помех — HackRF One это один из немногих доступных инструментов, которые позволяют сделать это без покупки дорогого лабораторного оборудования. Но просто подключить его к компьютеру — не значит получить рабочий спектральный анализатор. Без калибровки ты будешь видеть искажённую картину: частоты сдвинуты, амплитуды — неадекватны, шумы — непонятной природы. Я расскажу, как собрать систему, которая работает, а не просто «светится».
Что тебе реально нужно
Ты не должен покупать всё подряд. Вот минимальный набор, который работает:
- HackRF One (в оригинале, не подделка — проверь номер серийный на корпусе)
- USB 3.0 кабель (не длиннее 1 метра, иначе будут обрывы связи)
- Антенна с подходящим диапазоном (например, широкополосная активная антенна для 10 МГц – 6 ГГц)
- Компьютер с Linux или Windows 10/11 (macOS не рекомендую — драйверы нестабильны)
- Программа: GNU Radio + gr-osmosdr (лучше всего) или SDR# (если на Windows)
- Калибровочный сигнал (необязательно, но сильно ускоряет процесс — см. ниже)
Не трать деньги на «усилители», «фильтры» и «экраны» на первом этапе. Сначала сделай базовую систему, которая показывает реальные частоты — и только потом думай о доработках.
Шаг 1: Подключение и базовая настройка
Подключи HackRF One к USB-порту. Не в USB-хаб — только напрямую в компьютер. Если ты видишь в системе устройство с именем HackRF One — это хорошо. Проверить можно так:
- На Linux: в терминале введи
hackrf_info. Должен появиться вывод с версией прошивки, серийным номером и статусом «HackRF One is available». - На Windows: установи Zadig, найди HackRF в списке устройств, замени драйвер на libusb-win32 (не WinUSB).
Если устройство не определяется — проблема в кабеле, драйвере или подделке. Не пытайся «починить» — замени кабель или устройство. HackRF One — это не игрушка. Если он не определяется на 100% — он не будет работать корректно даже с идеальной калибровкой.
Шаг 2: Установка программного обеспечения
Для анализа спектра я рекомендую GNU Radio Companion (GRC). Почему? Потому что он позволяет не просто «смотреть», а понимать, что происходит внутри. Но если ты не хочешь вникать в блок-схемы — используй SDR# на Windows. Он проще, но менее точен.
Установи:
- Linux:
sudo apt install gnuradio gr-osmosdr - Windows: скачай SDR# с сайта sdrsharp.com, установи HackRF драйвер через Zadig, запусти SDR# и выбери «HackRF» в списке устройств.
Запусти SDR# или GRC. Настрой частоту на 100 МГц (FM-радио). Если ты слышишь музыку — ты уже на правильном пути. Если нет — проверь антенну, кабель и уровень усиления (LNA, VGA).
Шаг 3: Почему калибровка — не «опционально», а обязательна
HackRF One — это не лабораторный прибор. Его кварцевый генератор имеет погрешность до ±2 ppm. Это значит: на частоте 1000 МГц ты можешь видеть сигнал не на 1000.000 МГц, а на 999.998 или 1000.002 МГц. Это не критично для прослушивания радио, но для анализа цифровых сигналов — смертельно. Например, LTE-сигналы имеют ширину канала 1.4–20 МГц. Если частота сдвинута на 5 кГц — ты пропустишь часть сигнала или ошибочно определишь его мощность.
Кроме того, внутренние усилители (LNA, VGA) имеют нелинейные характеристики. Сигнал на -50 дБм может отображаться как -45 или -55 дБм — в зависимости от частоты. Это делает сравнение сигналов бессмысленным без калибровки.
Шаг 4: Как откалибровать частоту
Тебе нужен стабильный источник сигнала с известной частотой. Лучший вариант — GPS-сигнал. Он есть везде, и его частота известна с точностью до 0.001 ppm.
Способ:
- Подключи к HackRF антенну, которая ловит GPS (например, активная антенна 1575.42 МГц).
- Настрой SDR# или GRC на частоту 1575.42 МГц.
- Найди пик сигнала. Он должен быть в районе 1575.42 МГц, но скорее всего ты увидишь его на 1575.418 или 1575.423.
- Запиши разницу. Например: ты видишь пик на 1575.422 МГц, а должен был на 1575.420 — значит, сдвиг +2 кГц.
- В SDR# в настройках устройства есть поле «Frequency Correction». Введи туда -2000 (в Гц). Это компенсирует сдвиг.
- Перезагрузи приложение. Проверь снова. Если пик теперь точно на 1575.420 — калибровка частоты завершена.
Если GPS-антенны нет — используй радиостанцию с известной частотой: например, погодную станцию на 162.4 МГц, или радио «Радио России» на 101.5 МГц. Главное — чтобы частота была точно известна и стабильна.
Шаг 5: Калибровка амплитуды — сложнее, но важнее
Частоту можно калибровать «на глаз». Амплитуду — нельзя. Ты не увидишь разницу между -60 дБм и -65 дБм без эталона.
Нужен калибровочный сигнал. Идеальный вариант — генератор с точной мощностью, например, Mini-Circuits ZFBT-4R2GW+ (выход 0 дБм на 1 ГГц). Но он стоит $300. Не у всех есть.
Альтернатива: сигнал от Wi-Fi роутера. Да, это не эталон, но он стабилен и часто используется в любительских измерениях.
Как сделать:
- Включи Wi-Fi роутер на 2.4 ГГц. Убедись, что он работает на одном канале (например, канал 6 — 2.437 ГГц).
- Поднеси HackRF к роутеру на расстояние 10–20 см (без преград).
- Настрой SDR# на 2.437 ГГц. Найди пик сигнала Wi-Fi.
- Запиши его амплитуду в дБм. Скорее всего, ты увидишь -30…-40 дБм.
- Теперь подключи к антенне аттенюатор 10 дБ. Повтори измерение. Сигнал должен упасть ровно на 10 дБ.
- Если упал на 8 дБ — значит, у тебя ошибка в усилении на -2 дБ на этой частоте.
- Повтори на 900 МГц, 1.8 ГГц, 2.4 ГГц, 5.8 ГГц — если антенна поддерживает.
Теперь ты знаешь, насколько твой HackRF One «завышает» или «занижает» мощность на разных частотах. Это — твоя калибровочная таблица. Её можно вручную применять в Excel или в скрипте GNU Radio.
Сравнение методов калибровки
| Метод | Точность частоты | Точность амплитуды | Сложность | Стоимость | Подходит для |
|---|---|---|---|---|---|
| GPS-сигнал | ±0.001 ppm | Нет | Низкая | $50–100 (антенна) | Калибровка частоты |
| Радиостанция (FM/AM) | ±1–5 кГц | Нет | Низкая | Бесплатно | Базовая калибровка |
| Wi-Fi роутер + аттенюатор | ±50 кГц | ±2–5 дБ | Средняя | $10 (аттенюатор) | Приблизительная амплитуда |
| Калибратор 0 дБм | ±0.0001 ppm | ±0.5 дБ | Высокая | $300+ | Профессиональная работа |
Если ты просто хочешь найти неизвестный сигнал — хватит GPS + Wi-Fi. Если ты анализируешь помехи в системе связи — тебе нужен калибратор. Если ты пишешь научную статью — без калибратора не пройдёшь.
Частые ошибки
- Используешь USB-хаб — HackRF One требует стабильный ток. Хаб = обрывы связи = артефакты на спектре.
- Пытаешься калибровать без эталона — «я просто вижу, что пик где-то тут» — это не калибровка, это гадание.
- Игнорируешь температуру — HackRF One греется. После 10 минут работы частота может сдвинуться на 1–3 кГц. Калибруй при рабочей температуре.
- Используешь пассивную антенну на высоких частотах — на 5 ГГц пассивная антенна не ловит ничего. Ты думаешь, что «нет сигнала», а на самом деле — антенна не работает.
- Думаешь, что калибровка — разовая — нет. После перезагрузки, смены кабеля, или даже смены USB-порта — нужно проверять.
Как лучше сделать — реальные советы
- Сделай постоянную калибровочную таблицу: запиши частоты и поправки в Excel. Используй её как справочник.
- Если ты часто работаешь с 2.4 ГГц — купи калибровочный джампер (сигнал от генератора через кабель в антенный разъём). Подключай его вместо антенны — это даёт точность ±1 дБ.
- Используй скрипт GNU Radio с калибровочными поправками. Можно сделать автоматический корректор — он будет применять поправки в реальном времени.
- Не калибруй на максимальном усилении. Используй LNA=0 дБ, VGA=20 дБ — это диапазон, где шум минимальный, а нелинейности — наименьшие.
- Если ты видишь «пик» на частоте, где его не должно быть — это может быть гармоника или интермодуляция. Проверь, не включены ли другие устройства рядом (USB 3.0, монитор, ноутбук).
Что выбрать в зависимости от ситуации
- Ты — студент, хочешь просто увидеть, что в воздухе — калибруй частоту по GPS, амплитуду игнорируй. Работает.
- Ты — радиолюбитель, ищешь помехи в домашней сети — калибруй частоту по FM-радио, амплитуду по Wi-Fi. Достаточно для локализации помех.
- Ты — инженер, проверяешь совместимость устройств — купи калибратор 0 дБм, калибруй на 5 точках, используй скрипт. Без этого — не пройдёшь тестирование.
- Ты — исследователь, пишешь статью — калибровка должна быть документирована: где, когда, при какой температуре, с каким эталоном. Без этого — результат не воспроизводим.
Итог: что делать прямо сейчас
Если ты дочитал до этого места — ты уже на 90% готов. Вот твой план на сегодня:
- Подключи HackRF One напрямую к USB-порту.
- Установи SDR# или GNU Radio.
- Найди GPS-сигнал или FM-радиостанцию с известной частотой.
- Измерь сдвиг частоты и введи поправку в настройки.
- Поднеси HackRF к Wi-Fi роутеру, измерь мощность, добавь аттенюатор 10 дБ — проверь, упал ли сигнал ровно на 10 дБ.
- Запиши поправки в таблицу.
- Запусти анализ — теперь ты видишь не «что-то», а реальные частоты и мощности.
Не жди идеальной калибровки. Жди достаточной. Если ты можешь отличить Wi-Fi от Bluetooth, найти источник помехи и сравнить мощность сигналов — ты уже достиг цели. Доработки придут позже. Главное — начать с правильных измерений.
Информация в этой статье носит ознакомительный характер. Работа с радиочастотными устройствами может нарушать законодательство о радиоэлектронных средствах. Перед использованием убедись, что твои действия соответствуют местным нормам и не создают помехи для лицензированных служб.
