Fast, minimal terminal-based amateur radio logger
CQOps — радиолюбительский журнал с управлением с клавиатуры для домашней, выездной и клубной работы, а также несложной работы в соревнованиях. QSO сначала сохраняются на компьютере; интернет-сервисы необязательны. Начните с ручного ввода, затем при необходимости добавьте управление трансивером и онлайн-сервисы.
Названия меню и полей приведены по английскому интерфейсу. Сочетания клавиш зависят от активного экрана: проверяйте нижнюю строку подсказок или нажмите ?.
Загрузите CQOps со страницы выпусков. Размер терминала — не менее 75 × 24 символов; удобнее 80 × 43 и больше.
| Система | Установка |
|---|---|
| Windows | Загрузите cqops-setup.exe либо распакуйте cqops-windows-portable.zip для работы без установки. Рекомендуется Windows Terminal. |
| Debian, Ubuntu, Linux Mint, Pop!_OS | Выберите .deb: amd64 для большинства ПК Intel/AMD, arm64 для 64-битного ARM, armhf для 32-битной Raspberry Pi OS. Откройте установщиком пакетов. |
| Fedora, RHEL, Rocky, AlmaLinux | Используйте команды подключения репозитория ниже. |
| Arch, Manjaro, CachyOS | Установите пакет AUR через paru -S cqops-bin или yay -S cqops-bin. |
| Другие системы Linux | Загрузите и распакуйте Linux-архив .tar.gz для своего процессора. |
| macOS | Загрузите cqops-darwin-arm64 для Apple Silicon или cqops-darwin-amd64 для Intel. Используйте команды ниже. |
В системах на базе Debian можно установить из репозитория:
curl -1sLf 'https://dl.cloudsmith.io/public/szporwolik/cqops/setup.deb.sh' | sudo -E bash
sudo apt update
sudo apt install cqops
В системах на базе Fedora:
curl -1sLf 'https://dl.cloudsmith.io/public/szporwolik/cqops/setup.rpm.sh' | sudo -E bash
sudo dnf install cqops
В macOS выполните команды в папке загрузки, заменив FILE точным именем загруженного файла:
chmod +x FILE
sudo mv FILE /usr/local/bin/cqops
Запустите cqops или распакованную переносимую программу. cqops --offline запускает автономный режим, cqops --version показывает версию, cqops --help — параметры запуска. Перед обновлением экспортируйте журналы.
Мастер первого запуска запрашивает название журнала, позывной станции, локатор Maidenhead и континент. Позывной станции используется в эфире; профиль оператора обозначает человека за трансивером.
Ctrl+A открывает необязательные референции станции и зоны CQ/ITU. Собственная референция SOTA/POTA/WWFF указывается в настройках станции/журнала; референции в форме QSO относятся к корреспонденту. Регион IARU задайте позже в F9 → Logbooks.
Создайте профиль трансивера с названием, антенной и мощностью. Выберите None для ручного ввода частоты и вида работы, flrig или Hamlib. Необязательные подключения настраивайте после проверки обычного ведения журнала.
Tab / Shift+Tab переключает поля, Space меняет параметры выбора, Save & Next продолжает настройку. Esc возвращает назад, F10 завершает программу. Проверьте итог и сохраните. CQOps определяет часовой пояс компьютера; даты и время QSO записываются в UTC. Перед работой проверьте часы компьютера.
Если DUPE! требует подтверждения, повторное Enter всё равно сохраняет связь, а Esc отменяет подтверждение. Предупреждение предлагает проверить QSO, а не обязательно отказаться от записи.
| Клавиша | Экран | Назначение |
|---|---|---|
| F1 | QSO | Ввод связей и последние QSO |
| F2 | Partner | Данные корреспондента, карта, статистика, фото |
| F3 | APRS | Ближайшие станции |
| F4 | DX Cluster | Споты и фильтры |
| F5 | PSK Reporter | Отчёты о приёме цифровых сигналов |
| F6 | References | Поиск SOTA, POTA, WWFF, IOTA |
| F7 | Band Plan | Частоты и готовые настройки |
| F8 | Logbook | Правка, импорт, экспорт, синхронизация |
| F9 | Configuration | Настройки станции и сервисов |
| F10 | Quit | Выход из CQOps |
Верхняя строка показывает активные настройки станции, местное время (L) и UTC (Z). Белый обычно означает активность, жёлтый — отключение/подключение/ожидание, красный — ошибку. WSJT выделяется во время передачи. WL! предупреждает о неподдерживаемом старом ключе Wavelog.
Tab / Shift+Tab перемещает между полями, PgUp / PgDn меняет диапазон, вид работы или подрежим. Shift+Backspace очищает текущее поле; Del — всю форму. При разнесённых частотах проверьте Freq RX.
Keep сохраняет комментарий после записи. Retain сохраняет всю форму: перед следующим QSO проверьте позывной, время, рапорты и референции. Поля обмена появляются только при активном соревновании. SIG / SIG Info предназначены для других сведений о группах по интересам.
Если известны оба локатора, CQOps показывает расстояние и азимут. Справочник может содержать домашний адрес, а не текущее место выездной работы; проверьте его. Метки нового позывного, нового DXCC и повтора помогают оценить связь.
F6 ищет референции по названию или обозначению и может заполнить референцию корреспондента. F7 показывает частотные планы и может перестроить подключённый трансивер. Это справочная помощь, а не разрешение на передачу: учитывайте свои права и местный частотный план.
Три общие ячейки избранного хранят частоту, вид работы и диапазон:
| Ячейка | Вызвать | Сохранить текущие значения |
|---|---|---|
| 1 | Alt+Ins | Alt+Shift+Ins |
| 2 | Alt+Home | Alt+Shift+Home |
| 3 | Alt+PgUp | Alt+Shift+PgUp |
Создавайте журналы, операторов, трансиверы и соревнования в соответствующих меню F9; Ins добавляет запись. На экране QSO:
| Сочетание | Переключение |
|---|---|
| Ctrl+L | Журнал |
| Ctrl+O | Оператор |
| Ctrl+R | Трансивер |
| Ctrl+C | Соревнование |
Журналы имеют отдельные данные станции и настройки Wavelog/APRS. Профиль оператора определяет человека за трансивером; позывной записывается в ADIF OPERATOR. Профиль трансивера хранит оборудование, мощность, управление радио/ротором и WSJT-X. Проверяйте строку состояния после каждого переключения, особенно при автоматическом цифровом логировании.
Другие меню F9 отвечают за отображение, единицы, часовой пояс, справочники, интеграции и звуковые уведомления.
В F8 выберите QSO и нажмите Enter или e для правки. Сохраните через Enter и подтвердите. Delete удаляет выбранную связь. Перед массовыми изменениями сделайте копию; Ctrl+P удаляет все QSO, это не поиск.
| Сочетание в F8 | Действие |
|---|---|
| Ctrl+I | Импорт ADIF, проверка записей и пропуск повторов |
| Ctrl+E | Экспорт всех связей или выборки по соревнованию |
| Ctrl+W | Отправка ещё не загруженных связей в Wavelog |
| Alt+W | Загрузка из Wavelog |
Проверьте итоги импорта и выборку экспорта. Импортированные связи впоследствии могут быть отправлены в Wavelog. CQOps поддерживает ADIF 3.1.7 и сохраняет идентификаторы соревнований и обмены. Храните отдельные копии каждого журнала, желательно на другом устройстве. ADIF сохраняет связи, но не все настройки и учётные данные.
Конфигурация находится в ~/.config/cqops/config.yaml на Linux/macOS и %APPDATA%\cqops\config.yaml на Windows. Учётные данные хранятся отдельно в secrets.enc; при переносе на другой компьютер введите их заново. Не начинайте устранение неполадок с удаления конфигурации.
В F9 → Rigs выберите flrig или Hamlib и согласуйте параметры подключения. Сначала запустите flrig или rigctld. flrig обычно использует localhost:12345. Доступность частоты, вида работы, split и мощности зависит от трансивера. При None вводите их вручную.
Используйте WSJT-X 2.6 или новее. Согласуйте Settings → Reporting → UDP Server с UDP-параметрами активного профиля CQOps. Запишите завершённое пробное QSO в WSJT-X и убедитесь, что оно появилось в CQOps.
Полученные QSO используют активный журнал и соревнование; повторы пропускаются. Перед сеансом проверьте оператора и WSJT. CQOps предупреждает о несовпадении операторов. При настройке возможна последующая отправка в Wavelog. Выбирайте правильные Mode/Submode: FT8 экспортируется как FT8, FT4/FT2 — как MFSK с соответствующим подрежимом.
Управление через Hamlib rotctld экспериментальное. Проверьте направление и механические пределы. Обеспечьте безопасную остановку: неверные настройки могут повредить антенну, ротор или фидер.
| Сочетание | Действие |
|---|---|
| Alt+, / Alt+. | Азимут −5° / +5° |
| Alt+’ / Alt+; | Угол места −5° / +5° |
| Alt+\ | Поворот на рассчитанный азимут |
| Alt+/ | Остановка движения |
Настройте провайдеров и приоритет в F9 → Callbook, затем нажмите Ins в форме QSO. CQOps опрашивает включённых провайдеров по очереди. Поиск базового позывного может отбросить выездные префиксы/суффиксы; проверьте полученное местоположение.
| Провайдер | Доступ |
|---|---|
| QRZ.com | XML-подписка и учётные данные |
| HamQTH | Бесплатная учётная запись |
| QRZ.RU | Вход API отдельно от входа на сайт |
| Callook.info | Позывные США; без учётной записи |
F2 показывает корреспондента. Фото зависит от провайдера и терминала; экспериментальный Kitty Graphics в General требует совместимый терминал, например Kitty, Ghostty или WezTerm.
Для каждого журнала задайте URL, токен API v2 (wl2_…) и профиль станции. Старые ключи v1 не принимаются. Выбор станции Wavelog может заполнить локальные данные: перед сохранением проверьте позывной, локатор и референции.
QSO сначала сохраняются локально. Неудачную отправку повторите через F8 → Ctrl+W; Alt+W загружает связи. При открытии связанного QSO для правки CQOps может обновить его из Wavelog. Онлайн-правки и удаления затрагивают и удалённую копию. Читайте подтверждение, особенно без сети; локальное изменение не обязательно передано в Wavelog.
Клубные станции: используйте ключ wl2_ владельца вместе с опцией Общая клубная станция в форме журнала. Синхронизированные связи становятся доступными только для чтения — правки и удаления выполняются на стороне Wavelog, а CQOps никогда не отправляет для них PATCH или DELETE. Новые связи загружаются как обычно и приписываются активному оператору (при его отсутствии — позывному станции). Ключ API хранится в зашифрованном виде и при включённой опции после сохранения больше не отображается — оставьте поле пустым, чтобы сохранить его, или введите новый для замены.
Настройте DX Cluster в Integrations и откройте F4. b / c / m / t фильтруют диапазон, континент отправителя спота, вид работы и давность. Backspace очищает фильтры. Enter заполняет QSO, перестраивает трансивер и возвращает к F1; Space перестраивает без выхода из кластера.
На F1 Ctrl+S открывает окно спота, а Ctrl+P берёт позывной из ближайшего показанного спота. Проверьте его перед отправкой. F5 показывает отчёты PSK Reporter, а не гарантирует текущее прохождение. Solar показывает условия HamQSL; сохранённые значения могут устареть. F5 выключено по умолчанию — включите PSK Reporter в Integrations.
Настройте последовательный GPS-приёмник или GPSD в Integrations. Включите Grid from GPS в настройках станции/журнала для использования локатора в QSO, азимутах, APRS и панели. Красный GPS означает ошибку, жёлтый — отсутствие координат, белый — определённую позицию. Проверьте локатор перед работой. Выберите 6, 8 или 10 символов; больше символов не гарантирует более точный приёмник.
| Сервис | Подключение |
|---|---|
| APRS-IS | APRS-сервер в интернете |
| KISS | Аппаратный TNC по последовательному порту и радио |
| KISS Server | TCP-TNC, например Dire Wolf; может работать локально |
Выберите сервис в F9 → Integrations → APRS. Позывной/SSID, символ, комментарий, дальность и интервал задайте в F9 → Logbooks → [active logbook] → APRS. Включайте APRS TX и Send beacons только для намеренной передачи. Только приём обозначается APRS-RX. Маяки раскрывают ваше местоположение: проверьте его и учитывайте круг получателей.
Минимальный автоматический интервал — пять минут. F3 показывает недавно услышанные станции: стрелки выбирают, Enter заполняет QSO, d / t / s фильтруют расстояние/давность/тип, Backspace сбрасывает фильтры, b сразу передаёт настроенный маяк. Маяки GPS требуют Grid from GPS и действительной позиции.
Параметр Fixed grid (opt) для логбука закрепляет центр APRS и маяки на указанном локаторе, переопределяя GPS и сетку станции (приоритет: fixed > GPS > сетка станции). Локатор, сохраняемый в QSO, не меняется. На панели точка станции следует реально передаваемой позиции, а карточка станции показывает строку APRS, если она отличается от локатора журнала.
Перед выездом выберите выездной журнал; проверьте позывной, локатор, референцию активации, трансивер, антенну и мощность. Испытайте всю станцию и запустите CQOps онлайн для обновления референций и префиксов. Убедитесь, что F6 находит нужные референции. Экспортируйте резервную копию.
Локальное ведение журнала работает без интернета. cqops --offline пропускает сетевые функции; не рассчитывайте на текущие запросы и синхронизацию. До выезда проверьте оборудование локальной сети в выбранном режиме запуска. Кэшированные данные могут устареть.
После работы проверьте число QSO и референции, экспортируйте ADIF, сохраните копию и отправьте ожидающие связи в Wavelog, если используете его. Уточните формат каждой дипломной программы и при необходимости преобразуйте экспорт.
CQOps поддерживает несложную работу в соревнованиях, обмены, порядковые номера и темп QSO. Это не полноценная система подсчёта очков и отправки отчётов. Для сложной работы используйте специализированный журнал.
В F9 → Contests нажмите Ins и задайте название, дату, идентификатор ADIF, начальный номер и шаблоны передаваемого/принимаемого обмена.
| Маркер | Значение |
|---|---|
@rst |
Переданный или принятый рапорт |
@serial |
Порядковый номер |
@cqz / @mycqz |
Зона CQ корреспондента / ваша |
@itu / @myitu |
Зона ITU корреспондента / ваша |
@grid / @mygrid |
Локатор корреспондента / ваш |
На F1 сочетание Ctrl+C переключает соревнования. Проверьте обмен и следующий номер перед передачей. Строка состояния показывает количество, следующий номер и время; широкие окна показывают больше статистики темпа. После окончания вернитесь к работе без активного соревнования.
Для экспорта откройте F8, выберите фильтр соревнования через Ctrl+C, затем Ctrl+E и проверьте выборку. Результат — ADIF, не Cabrillo. Соблюдайте требования организатора к формату и подаче отчёта.
Включите F9 → Integrations → HTTP Server и сохраните кнопкой [ Save & Back ] (Enter/Space). На компьютере CQOps откройте http://localhost:8073.
Адрес по умолчанию 0.0.0.0 допускает доступ из локальной сети с учётом межсетевого экрана. На другом устройстве используйте IP компьютера CQOps и порт 8073. 127.0.0.1 ограничивает доступ самим компьютером CQOps. Используйте доверенную сеть; не пробрасывайте порт в интернет.
Панель автоматически обновляет текущий контакт, карты QSO, последние связи, темп, операторов, APRS и доступные сведения о прохождении/погоде. Интернет-слои могут отсутствовать без сети. Header 1, Header 2, Logo URL и Event Start оформляют экран мероприятия; начальная дата фильтрует статистику и списки QSO.
| Экран | Клавиши | Действие |
|---|---|---|
| Общие | ? / Esc / F10 | Справка / назад / выход |
| QSO | Tab / Shift+Tab | Следующее / предыдущее поле |
| QSO | Enter / Ins | Сохранить / запрос |
| QSO | Shift+Backspace / Del | Очистить поле / форму |
| QSO | Ctrl+L / Ctrl+O / Ctrl+R / Ctrl+C | Журнал / оператор / трансивер / соревнование |
| Журнал | ↑ / ↓, PgUp / PgDn, Home / End | Выбор, страница, первая / последняя строка |
| Журнал | Enter или e / Delete | Правка / удаление выбранного QSO |
| Журнал | Ctrl+I / Ctrl+E | Импорт / экспорт ADIF |
| Журнал | Ctrl+W / Alt+W | Отправка / загрузка Wavelog |
| Журнал | Ctrl+C / Backspace | Фильтр соревнования / очистка поиска |
Клавиши зависят от экрана: Ctrl+C не завершает CQOps. На ноутбуках функциональным клавишам может требоваться Fn. Если терминал перехватывает сочетание, проверьте его настройки и строку помощи CQOps.
| Проблема | Сначала проверить |
|---|---|
| Запуск или неполный экран | Размер терминала, Windows Terminal в Windows, пробный cqops --offline |
| Нет связи с трансивером | Активный профиль, работа flrig/rigctld, модель, последовательный порт, скорость, адрес/порт, занят ли порт другой программой |
| Нет QSO из WSJT-X | Совпадение UDP, индикатор WSJT, QSO действительно записано в WSJT-X, активный журнал |
| Ошибка Wavelog | URL, токен wl2_, профиль станции, интернет; локальные QSO сохраняются |
| Нет позиции GPS | Порт/скорость или адрес GPSD, обзор неба, действительная позиция, Grid from GPS |
| APRS не передаёт маяки | Журнал, APRS TX и Send beacons, позывной/SSID, TNC/радио или интернет |
| Панель недоступна | Сервер включён, правильные IP/порт, межсетевой экран; localhost относится к устройству с браузером |
При проблемах настроек сначала используйте F9, а не правку файлов. Заново введите учётные данные при ошибке хранилища секретов или переносе на другой компьютер.
При необходимости включите F9 → General → Debug, безопасно повторите проблему и сохраните нужный диагностический лог; затем отключите отладку.
| Система | Диагностические логи |
|---|---|
| Linux | ~/.local/share/cqops/logs/ |
| macOS | ~/Library/Application Support/cqops/logs/ |
| Windows | %APPDATA%\cqops\logs\ |
Сообщайте о проблемах в GitHub Issues. Укажите версию CQOps, систему, терминал, действия и нужный лог. Удалите пароли, токены API и частные сведения перед публикацией.