Импорт контакт-листов DMRhub в OpenGD77, AnyTone и TYT

Категория: CodeplugСложность: ★★☆~8 мин

Каждый раз, когда новый участник сети заводит codeplug с нуля, он тратит десятки минут на ручной ввод одних и тех же talkgroup и позывных операторов. DMRhub предлагает готовые контакт-листы сети в кабинете (/contacts) — скачал нужный формат, импортировал в CPS, и все актуальные группы и пользователи уже в рации. На этой странице разберём, как именно это сделать для трёх самых распространённых платформ.

Что такое контакт-лист и зачем его импортировать

В терминах DMR контакт — это запись «имя + DMR ID + тип вызова». Записи бывают двух видов:

Контакт-лист — это CSV-файл с таким списком, готовый к загрузке в CPS. Его не надо путать с базой позывных (userdb / DMR ID database) — это разные вещи. База позывных содержит сотни тысяч записей и нужна только чтобы рация подписывала на дисплее входящий ID («кто звонит»). Контакт-лист — ваш рабочий список групп и абонентов, десятки или сотни строк, именно его вы задаёте вручную или импортируете из файла DMRhub.

Где взять файл Зайдите в кабинет DMRhub: /contacts. Выберите нужный формат — OpenGD77, AnyTone, TYT, generic. Файл скачивается сразу, без регистрации не нужна отдельная учётная запись для загрузки.

OpenGD77 CPS: импорт CSV

OpenGD77 CPS работает через CSV-файл. Формат строгий: первая строка — заголовок, который программа читает дословно, менять его нельзя. Порядок колонок:

#,Name,ID,Type,TS Override,DTMF ID

Типичная строка для talkgroup:

1,Локальный DMRhub,9,Group Call,None,0

Где:

Порядок действий:

  1. В OpenGD77 CPS откройте вкладку Contacts.
  2. В меню выберите File → Import CSV → Contacts.
  3. Укажите скачанный файл dmrhub_opengd77.csv.
  4. CPS предложит режим добавления или замены — выберите по ситуации. При замене старые контакты будут удалены.
  5. Проверьте список, запишите codeplug в рацию.
Разделитель зависит от Windows OpenGD77 CPS определяет разделитель колонок по региональным настройкам Windows. На русской Windows разделителем в числах является запятая, поэтому CPS ожидает точку с запятой (;) как разделитель CSV. Файл из /contacts уже учитывает это и поставляется с нужным разделителем для вашего региона. Если всё же видите «каша из колонок» — откройте файл в Notepad++ и проверьте, чем разделены поля.

AnyTone CPS: импорт Digital Contacts

AnyTone (D868UV, D878UV, D578UV и другие) хранит контакты в разделе Digital Contacts. Импорт идёт через CSV с пятью колонками:

No.,Radio ID,Name,Call Type,Call Alert

Пример строки для группы:

1,9,Локальный DMRhub,Group Call,None

Порядок действий:

  1. Откройте AnyTone CPS и загрузите текущий codeplug из рации (или создайте новый).
  2. В меню выберите Tools → Import.
  3. В открывшемся окне нажмите Digital Contacts и укажите файл dmrhub_anytone.csv.
  4. Подтвердите импорт. Существующие контакты будут дополнены или перезаписаны — уточните поведение в вашей версии CPS.
  5. Запишите codeplug обратно в рацию.
Имя не более 16 символов AnyTone CPS обрежет название молча, если оно длиннее. В файле DMRhub все имена уже приведены к лимиту, но если вы редактируете CSV вручную — следите за длиной.

TYT (MD-380, MD-390, MD-UV380): импорт контактов

TYT использует собственную CPS, формат CSV немного отличается от AnyTone. Типичный заголовок:

No,Name,Call_ID,Call_Type,Receive_Tone,Ring_Style

Пример:

1,Локальный,9,Group Call,0,None

Порядок действий:

  1. В TYT CPS откройте или создайте codeplug.
  2. Перейдите в Contacts (или Digital Contact, зависит от версии CPS).
  3. В меню File → Import или через кнопку Import CSV выберите файл dmrhub_tyt.csv.
  4. Проверьте список — в старых версиях CPS MD-380 лимит контактов в рации составляет около 1000 записей.
  5. Запишите codeplug.
Важно Некоторые версии TYT CPS для MD-380 требуют, чтобы CSV был сохранён в кодировке Windows-1251 (не UTF-8), иначе кириллица превращается в кракозябры. Откройте файл в Notepad++ → «Кодировки» → «Преобразовать в ANSI» → сохраните. Файл из /contacts поставляется в UTF-8 — выполните это преобразование перед импортом в TYT.

Разница: контакты vs база позывных (userdb)

Новички часто путают два разных файла. Важно понимать разницу:

Импортируйте контакт-лист — получаете нужные группы. Заливайте userdb — получаете подписи входящих. Одно не заменяет другое.

Типичные ошибки и диагностика

Контакты импортировались, но не видны в канале

Наличие контакта в списке не означает автоматической привязки к каналу. После импорта нужно зайти в настройки каждого канала и в поле Contact (TX Contact) выбрать нужную группу из импортированных. Аналогично обновите RX Group List, если хотите слышать эти группы на приём.

Кириллица отображается символами «?» или «□»

Проблема кодировки. Для TYT — преобразуйте в Windows-1251 (ANSI). Для OpenGD77 и AnyTone — оставьте UTF-8. Не открывайте CSV в Excel двойным кликом — Excel может неправильно определить кодировку; используйте Import from Text с явным указанием UTF-8.

CPS говорит «неверный формат» или не читает файл

Проверьте разделитель: откройте CSV блокнотом. Если видите запятые между полями — нужна запятая; если точки с запятой — точка с запятой. Разные версии CPS одной и той же рации могут ожидать разные разделители. При необходимости замените в Notepad++ через «Найти и заменить» (Ctrl+H).

Порядковые номера нарушены

В OpenGD77 CPS и TYT нумерация в первой колонке должна быть строго последовательной: 1, 2, 3… Пропуски или дубликаты дадут ошибку или молчаливое усечение списка. Если редактировали файл вручную — пересчитайте нумерацию.

Проверяйте на экспорте Золотое правило: перед массовым импортом введите 2-3 контакта вручную, экспортируйте их из CPS в CSV и сравните формат с файлом DMRhub. Так сразу увидите расхождение разделителей или колонок без риска испортить codeplug.

Контакт-лист DMRhub уже ждёт вас

Все актуальные talkgroup сети и позывные операторов — в одном файле под вашу рацию. Скачайте нужный формат в кабинете, импортируйте по инструкции выше и выходите в эфир. Нет DMR ID? Регистрация через портал выдаёт приватный номер из блока 10 000 000+ за пару минут.

Источники

  1. OpenGD77 CPS: документация CSV-функций (G4EML) — opengd77.com
  2. OpenGD77 User Guide (LibreDMR) — github.com/LibreDMR/OpenGD77_UserGuide
  3. AnyTone AT-D868UV Programming Guide v1.25 — sbarc.org
  4. Tytera MD-380: import contacts (IZ2UUF) — iz2uuf.net