Хотспот не выходит в сеть DMR: системная диагностика

Категория: ХотспотыСложность: ~10 минут

Хотспот — штука капризная только на первый взгляд. Когда он «не выходит в сеть», за этим почти всегда стоит одна из десятка вполне конкретных причин, и почти каждую можно поймать за пять минут, если идти по порядку, а не дёргать всё подряд. Эта статья — системная диагностика: мы спускаемся от «железа» (питание, модем) через настройки (частота, Color Code) к сети (NAT, проброс портов) и заканчиваем эфиром (рация не слышит хотспот). Прошлись по списку сверху вниз — и проблема нашлась.

Сразу договоримся о словаре. Хотспот — это маленький мост: одноплатник (Raspberry Pi, Orange Pi) или ESP-плата плюс радиомодуль MMDVM, который слушает вашу рацию в эфире и тащит голос в интернет, на мастер-сервер сети. «Не выходит в сеть» может означать три разные беды: хотспот не видит модем, хотспот не залогинился на мастер, или хотспот залогинился, но рация его «не слышит». Это три разных диагноза — и лечатся они по-разному.

Воронка корочеЕсли вы на образе RadioStar, половину этой диагностики делает агент: он сам находит модем, определяет тип платы и шлёт статус прямо в кабинет DMRhub. Тогда вы не гадаете «а видит ли система модем» — это написано в личном кабинете чёрным по белому.

Шаг 0. Сначала локализуем: где именно обрыв

Прежде чем чинить, определите, на каком из трёх рубежей застрял сигнал. Это экономит час времени.

  • Светодиоды на плате MMDVM. На большинстве плат есть PWR (питание) и индикатор активности модема. Если горит только питание, а «жизни» нет — проблема на уровне железа или прошивки модема.
  • Статус в кабинете / Last Heard. Хотспот появился в списке устройств и «онлайн»? Значит, до мастера он достучался — ищем проблему уже в эфире (частота, CC, рассинхрон). Не появился — проблема между хотспотом и мастером (логин, NAT, порты).
  • Рация молчит при приёме, но вы себя слышите на других. Классический рассинхрон TX/RX или неверный Color Code на стороне рации.

Запомните это разделение: «не вижу модем» → железо, «не онлайн в кабинете» → сеть, «онлайн, но эфир глухой» → частота/CC/калибровка. Дальше разбираем каждый блок.

1. Питание и просадка — причина №1, о которой думают в последнюю очередь

Девять из десяти «мистических» проблем с хотспотом — это питание. Одноплатник под нагрузкой плюс радиомодуль на передаче — это короткие, но злые пики тока. Дешёвый блок питания или тонкий microUSB-кабель не держат пик, напряжение проседает ниже 4.8–5.0 В, и начинается цирк: модем «отваливается», Wi-Fi рвётся, система перезагружается на ровном месте.

Как проверить и починить:

  • Блок питания. Для Raspberry Pi берите честный 5 В / 3 А (а не «зарядку от старого телефона на 1 А»). Для Pi Zero хватит 2.5 А, но не меньше.
  • Кабель — главный вредитель. Тонкий или длинный USB-кабель роняет напряжение на собственном сопротивлении. Поменяйте кабель на короткий и толстый раньше, чем будете грешить на софт.
  • Симптом просадки в Pi-Star/Linux. На Raspberry Pi признак недокорма — «иконка молнии» и сообщения under-voltage detected в системном журнале. Увидели — меняйте БП, дальше можно не диагностировать.
  • USB-хаб и периферия. Если в одноплатник воткнут ещё и USB-модем 4G или диск — питайте их отдельно, иначе они отъедают ток у MMDVM на передаче.
Правило большого пальцаПрежде чем переустанавливать образ или менять настройки — поставьте заведомо хороший БП и короткий кабель. Очень часто на этом диагностика и заканчивается.

2. Модем не определился — хотспот не видит свою «радиочасть»

Хотспот — это две половины: компьютер (одноплатник) и радиомодем (MMDVM). Если компьютер не видит модем, в сеть выходить нечем. Симптомы: в логах MMDVM крутится бесконечное «Opening» / «Modem not responding», нет версии прошивки модема при старте.

Как проверить и починить:

  • Тип подключения. HAT-платы садятся на GPIO и общаются через UART (порт вида /dev/ttyAMA0 или /dev/serial0). USB-донглы — через /dev/ttyUSB0 или /dev/ttyACM0. Указали не тот порт в настройках — модем «не определился», хотя физически работает.
  • Конфликт UART с консолью. На Raspberry Pi serial-консоль и Bluetooth любят занимать тот самый UART, который нужен HAT. Если ставите систему руками — отключите serial-console и переназначьте Bluetooth, иначе модем будет «занят».
  • Контакт и посадка. Плата плохо села на гребёнку GPIO, погнулась ножка — модем «то есть, то нет». Снимите и посадите заново до упора.
  • Драйвер USB-чипа. Дешёвые донглы на CH340/CP2102 иногда требуют, чтобы чип опознался в системе. Проверьте, что устройство вообще появилось в списке USB-устройств.
ВоронкаНа образе RadioStar определение модема — забота агента: он сам перебирает порты, опознаёт тип платы и отдаёт результат в кабинет. Если там написано «модем найден, прошивка такая-то» — пункт 2 можно пропустить. Если «модем не найден» — копайте порт и питание. Подробнее про сборку и типы плат — в статье MMDVM-хотспот.

3. Неверная частота — хотспот в сети, но в чужом «коридоре»

Хотспот залогинился, в кабинете «онлайн», а эфира нет. Первый подозреваемый — частота. Симплекс-хотспот работает на одной частоте и на приём, и на передачу, и рация должна стоять ровно на ней. Разъехались на десяток килогерц — и связь либо рвётся, либо её нет вовсе.

  • Симплекс vs дуплекс. Большинство любительских хотспотов — симплексные: одна частота. В рации RX и TX этого канала должны совпадать с частотой хотспота. Если у вас дуплексная плата (две частоты, разнос), частоты RX/TX в рации зеркальны частотам хотспота.
  • Сетка и диапазон. Убедитесь, что частота лежит в любительском диапазоне, который тянет ваша рация (UHF/VHF), и не пересекается с репитерами рядом.
  • Реальная частота кварца. Дешёвые модемы «врут» на несколько кГц из-за разброса кварца — об этом отдельный пункт ниже про калибровку. Если всё настроено правильно, а связь на грани — почти наверняка дело в смещении частоты модема.

4. Color Code — «пароль таймслота», без которого рация молчит

Color Code (CC) в DMR — это идентификатор от 0 до 15, который должен совпасть у хотспота и у рации, иначе приёмник просто игнорирует чужой сигнал (по смыслу — как субтон у аналоговых раций: не совпало — не открылось). Частота верная, хотспот онлайн, а приёма нет — проверьте CC первым делом.

  • Совпадение CC. Color Code в настройках хотспота и в канале рации (codeplug) должны быть идентичны. По умолчанию во многих хотспотах это CC1 — проверьте, что в рации стоит то же.
  • Где смотреть в рации. CC задаётся в каждом цифровом канале отдельно. Скопировали канал, забыли поправить — будет «глухой» канал среди рабочих.
  • Таймслот. На симплекс-хотспоте обычно используется один слот (часто TS2). Если в codeplug стоит другой — рация и хотспот разговаривают «в разные двери».
Где это правильно прописатьЧастота, Color Code и таймслот живут в codeplug рации. Если вы только собираете прошивку — у нас есть готовый разбор Codeplug под DMRhub с правильными значениями, чтобы не угадывать.

5. Рассинхрон TX/RX — слышу других, а меня нет (или наоборот)

Самый коварный случай: связь вроде есть, но односторонняя. Вы принимаете чужой голос, а ваш TX никто не слышит — или наоборот. Это рассинхрон TX/RX, и причин у него две большие группы.

  • Смещение частоты на передаче и приёме. У дешёвых модемов TX и RX могут «уезжать» по-разному. Лечится раздельной подстройкой TX/RX offset — об этом ниже, в калибровке.
  • Уровни модуляции (TX/RX level). Слишком высокий или низкий уровень DAC/ADC на модеме искажает сигнал: рация ловит «кашу» вместо данных. Это типовая правка уровней в настройках MMDVM.
  • Инверсия / полярность. Некоторые платы требуют инверсии TX или RX. Если эфир «есть, но не декодируется» — попробуйте переключить инверсию.
  • Перегрев и дрейф. Модем прогрелся за час работы — частота уехала. Если связь «работала и пропала через 20 минут», думайте про тепловой дрейф и компенсируйте калибровкой.

Ключевая мысль: рассинхрон почти всегда лечится не заменой железа, а аккуратной подстройкой смещения и уровней. Это и есть калибровка.

Отдельная статьяПодстройка частоты по BER-свипу и автокалибровка — большая тема. Мы разобрали её отдельно: Калибровка частоты хотспота. Если «эфир на грани» или TX/RX разъезжаются — вам туда.

6. Нет логина в мастер — хотспот «не онлайн» в кабинете

Хотспот не появляется в списке устройств, в логах нет успешного «logged in». Это рубеж «хотспот ↔ мастер-сервер», и здесь набор причин чисто сетевой.

  • Нет интернета у самого хотспота. Банально, но проверьте: Wi-Fi подключился, IP получен, DNS резолвится. Пинг до мастера проходит? Половина «не логинюсь» — это «нет сети вообще».
  • Неверный адрес мастера или порт. Опечатка в имени сервера, лишний пробел, не тот порт. Сверьте параметры подключения с тем, что выдал кабинет DMRhub.
  • Неверный пароль/ID. Хотспот логинится под вашим DMR ID. Не зарегистрирован ID или неверный пароль подключения — мастер вежливо отказывает. Если ID ещё нет — это первый шаг, см. регистрацию DMR ID.
  • Время на устройстве. Сильно убежавшие часы на одноплатнике ломают TLS-рукопожатия и авторизацию. Проверьте, что NTP синхронизировал время.
  • Файрвол со стороны провайдера. Некоторые мобильные операторы режут нестандартные порты. Если на домашнем Wi-Fi логинится, а с 4G — нет, причина в операторе.

7. NAT и проброс портов — когда мастер не может «дозвониться» обратно

Голосовой трафик DMR ходит по UDP, и тут вступает в дело NAT — то, как ваш домашний роутер прячет хотспот за одним внешним адресом. Симптом классический: хотспот залогинился (исходящее соединение прошло), но голос идёт только в одну сторону или рвётся — потому что обратные UDP-пакеты от мастера не находят дорогу к хотспоту за NAT.

  • UDP keep-alive. Современные сети-мастера держат «дырку» в NAT регулярными пакетами. Если хотспот сидит тихо — NAT закрывает порт, и обратный трафик теряется. Обычно лечится тем, что хотспот сам шлёт keep-alive, но при агрессивном NAT помогает проброс.
  • Проброс портов (port forwarding). На роутере пробросьте UDP-порт сети на внутренний IP хотспота. Внутренний IP лучше закрепить за устройством статикой (DHCP-резервация), иначе после перезагрузки роутера он «уедет» и проброс перестанет работать.
  • Двойной NAT / CGNAT. Если провайдер выдаёт «серый» IP (CGNAT), проброс на вашем роутере бессилен — вы за чужим NAT. Признак: внешний IP в роутере не совпадает с тем, что показывают сайты «мой IP». Решения — заказать у провайдера белый IP или поднять туннель.
  • UPnP. Иногда достаточно включить UPnP на роутере, и проброс настроится автоматически — но на это нельзя полагаться, ручной проброс надёжнее.
Большая отдельная темаNAT, CGNAT, проброс и туннели мы разобрали подробно, с примерами для домашних роутеров: Хотспот за NAT. Если вы за «серым» IP или эфир «однобокий» — начните оттуда.

8. Watchdog — хотспот сам себя перезагружает по кругу

Watchdog («сторожевой таймер») — механизм, который перезапускает сервис или всю систему, если та «зависла». Полезная штука, но в сломанной конфигурации она превращается в качели: хотспот стартует, что-то идёт не так, watchdog его убивает, он стартует снова — и так по кругу, в сеть он толком не выходит.

  • Симптом. Устройство то появляется, то пропадает в кабинете каждые 1–2 минуты; в логах — повторяющиеся старты сервиса MMDVM.
  • Первопричина почти всегда ниже. Watchdog — не болезнь, а симптом. Чаще всего его «дёргают» питание (просадка, пункт 1) или отвалившийся модем (пункт 2). Лечите первопричину — качели прекратятся.
  • Перегрев. На передаче плата греется; в закрытом корпусе без вентиляции одноплатник троттлит и зависает — watchdog снова в деле. Дайте проветривание или радиатор.
  • Битая SD-карта. Дешёвые/изношенные microSD отдают ошибки чтения, система ловит сбой, watchdog перезагружает. Если перезагрузки хаотичные — перепишите образ на хорошую карту.

9. Рация не слышит хотспот — последний метр до эфира

Хотспот онлайн, в кабинете зелёный, голос соседей вы даже видите в Last Heard — а рация всё равно глухая. Значит, проблема на самом последнем метре, между антенной хотспота и антенной рации.

  • Частота и CC ещё раз. 90% «глухих» раций — это пункты 3 и 4: разъехалась частота или не тот Color Code в канале. Перепроверьте конкретный канал, на котором стоите.
  • Слишком слабый сигнал / далеко. Симплекс-хотспот — это милливатты. Уйдите в соседнюю комнату через две стены — приёма не будет. Поднесите рацию ближе для проверки.
  • Антенна хотспота. Забыли прикрутить антенну или стоит «обрезок» не на тот диапазон — дальность падает до метра. Проверьте, что антенна на месте и под ваш диапазон.
  • Калибровка частоты модема. Если рядом связь есть, а на пару метров уже рвётся — модем смещён по частоте. Это снова калибровка.
  • Не тот таймслот / групповой вызов. Рация настроена слушать не ту группу или слот — она физически слышит хотспот, но «фильтрует» трафик. Проверьте RX-группу и talkgroup в codeplug.
Проверка «в лоб»Сделайте короткий тестовый вызов на хотспот и посмотрите Last Heard в кабинете. Появился ваш позывной — хотспот вас слышит, проблема только в приёме рацией (частота/CC/слот). Не появился — рация не достучалась до хотспота (частота/уровни/антенна).

Чек-лист на холодильник

Если коротко, прогоните хотспот по этому списку сверху вниз — и в 95% случаев найдёте причину:

  • Питание — честный БП 5 В / 3 А, короткий толстый кабель, нет under-voltage.
  • Модем — определился, виден в логах с версией прошивки, верный порт.
  • Логин на мастер — есть интернет, верный адрес/порт/ID, синхронное время.
  • NAT/порты — не CGNAT, проброс UDP на статический внутренний IP.
  • Частота и Color Code — совпадают у хотспота и рации в конкретном канале.
  • TX/RX — нет рассинхрона, уровни и offset откалиброваны.
  • Watchdog — не перезагружается по кругу (а если да — ищите питание/модем/перегрев).
  • Эфир — антенна на месте, рация рядом, верный слот и RX-группа.

Хотите, чтобы половину этой диагностики делали за вас?

DMRhub — частная DMR-сеть с приватными вызовами по DMR ID, DMR-SMS и Last Heard. Образ хотспота RadioStar сам находит модем, опознаёт плату и шлёт статус прямо в кабинет — вам остаётся только смотреть, а не гадать.

Источники

  1. Pi-Star — настройка и диагностика MMDVM-хотспота — pistar.uk
  2. MMDVMHost — параметры модема, уровни и инверсия — github.com/g4klx/MMDVMHost
  3. Raspberry Pi — диагностика под-вольтажа (under-voltage) и требования к питанию — raspberrypi.com
В сети DMRhub

Настроили рацию — заходите в эфир: свой мастер, хотспоты и приложение с DMR прямо в телефоне.

Войти в портал