Питание DMR-хотспота: чистый БП, борьба с просадками и бесперебойник
Девять из десяти «непонятных глюков» хотспота — это не прошивка, не модем и не BrandMeister. Это питание. Raspberry Pi с модулем MMDVM — устройство нежное: ему нужны стабильные 5 вольт, и стоит им просесть на доли вольта в момент записи на флешку или в момент включения передатчика — и вы ловите перезагрузки, рассыпавшуюся файловую систему и плавающий BER в эфире. Хорошая новость: лечится это копеечным набором — правильным блоком, толстым кабелем и пятиминутной диагностикой. Разберём по порядку.
Почему «молния» — это не мелочь
Если в углу экрана (или в логах) появляется значок жёлтой молнии — это сигнал undervoltage. Контроллер питания Pi поднимает его, когда напряжение на плате падает ниже ~4.63 В. Если хотспот работает «головой» без монитора, вы молнию не увидите вовсе — будут только последствия: спонтанные ребуты, зависший Pi-Star/RadioStar, отвал Wi-Fi на старте, кривой TX-спектр.
Самое неприятное — деградация SD-карты. Когда питание проседает во время записи (а Pi пишет в логи и БД постоянно), запись обрывается на середине, метаданные файловой системы остаются несогласованными, и карта медленно «умирает». В журнале это видно как пары сообщений: рядом с under-voltage detected идут ошибки mmcblk0. Это почти стопроцентный признак того, что виновато питание, а не «плохая карта».
Как поймать просадку в логах
Не гадайте — спросите сам Pi. Две команды решают всё.
Первая показывает статус-регистр троттлинга:
vcgencmd get_throttled
Ответ — шестнадцатеричное число, где каждый бит что-то значит. throttled=0x0 — идеально, проблем нет. Если бит выставлен — питание подводило:
| Бит | Значение (hex) | Что означает |
|---|---|---|
| 0 | 0x1 | Просадка напряжения прямо сейчас |
| 1 | 0x2 | Сейчас активирован лимит частоты (capping) |
| 2 | 0x4 | Сейчас идёт троттлинг |
| 3 | 0x8 | Сейчас достигнут лимит температуры |
| 16 | 0x10000 | Просадка была с момента загрузки |
| 17 | 0x20000 | Лимит частоты случался с загрузки |
| 18 | 0x40000 | Троттлинг случался с загрузки |
| 19 | 0x80000 | Перегрев случался с загрузки |
То есть 0x50000 означает «была просадка и был троттлинг с момента включения» — значит, под нагрузкой питание не держит. Вторая команда вытаскивает события из журнала ядра:
dmesg | grep -i voltage
Каждая строка вида hwmon ... under-voltage detected! — это зафиксированный провал. Если их много и они идут пачками во время работы — диагноз очевиден.
Правильный блок питания
Базовое требование для хотспота на Pi (Zero, 3, 4) — 5 В и минимум 3 А. Меньшие 2–2.5 А «вроде работают», но именно на пике (TX + Wi-Fi + запись) и проседают. Для Raspberry Pi 4 берите официальный блок 5.1 В / 3.0 А (15 Вт, USB-C) — он не случайно выдаёт 5.1 В, а с запасом, чтобы компенсировать падение на кабеле. У него встроены защиты от КЗ, перегрузки и перегрева, и есть сертификация.
- Не питайте хотспот от USB ноутбука — порт отдаёт максимум 0.5–0.9 А, этого мало даже на холостом ходу.
- Не вешайте на дешёвый хаб и не делите один блок на несколько устройств — каждый потребитель тянет напряжение вниз.
- Питание подаётся в Pi, а не в модем MMDVM. Модем берёт 5 В с GPIO-шины самого Pi.
- Зарядки «на 5 В 3 А» из ноунейм-коробки часто врут по факту: под нагрузкой проседают до 4.5 В. Берите проверенный бренд.
Кабель решает не меньше блока
Самая частая и самая обидная причина «молнии» при хорошем блоке — это кабель. Большинство USB-проводов, что валяются дома, — «зарядные»: тонкие жилы питания (28 AWG), рассчитанные на ток заряда телефона, с заметным сопротивлением. На таком кабеле при 2–3 А теряется полвольта, и до Pi доезжает уже не 5 В, а 4.5–4.6 В — привет, undervoltage.
| Параметр | Плохой («зарядный») | Хороший |
|---|---|---|
| Сечение жил питания | 28 AWG, тонкие | 20 AWG и толще |
| Длина | 1.5–2 м и больше | как можно короче |
| Тип | только заряд | дата-кабель (полный) |
| Падение под 3 А | 0.4–0.6 В | <0.15 В |
Берите короткий толстый дата-кабель (у официального БП Pi он, кстати, несъёмный — 1.5 м, 18 AWG — и это часть его надёжности). Правило простое: чем короче и толще провод, тем меньше потери. Если выбора нет — лучше короткий «зарядный», чем длинный.
Помехи и заземление
Импульсный БП — источник ВЧ-мусора, который может лезть в приёмный тракт хотспота и поднимать шум на 433 МГц. Несколько приёмов снизить грязь:
- Ферритовое кольцо на кабель питания у разъёма Pi (пара витков) гасит синфазную помеху по шнуру.
- Разносите блок питания и модем/антенну подальше друг от друга — не складывайте в одну кучу.
- Качественный (читай — не самый дешёвый) импульсник сам по себе «тише» по помехам: в нём есть нормальный входной фильтр.
- Если хотспот стоит у наружной антенны — про заземление и грозозащиту читайте отдельно: молниезащита антенно-фидерного тракта это не про БП, но это критично для жизни оборудования и людей.
Резерв питания: переживаем отключения
Хотспот, который ребутится при каждом моргании света, рвёт ваше присутствие в сети и снова рискует SD-картой при жёстком обрыве. Резерв — это не роскошь, а защита железа. Варианты по возрастанию аккуратности:
- Повербанк с pass-through (UPS-режим) — самый бюджетный путь. Банк одновременно заряжается от сети и питает Pi; при пропадании 220 В отдача не прерывается. Ключевое слово при покупке — «pass-through / зарядка во время разряда»: не все банки так умеют, у многих выход отключается на момент переключения, и это уже не UPS.
- UPS-HAT (Waveshare UPS HAT, Geekworm X728/X1207, PiJuice) — плата садится на GPIO, держит Li-ion аккумулятор, отдаёт стабильные 5 В и, главное, умеет по I2C/GPIO сообщить системе о пропадании сети и инициировать корректное выключение до разряда батареи. Это спасает файловую систему.
- PoE-HAT / PoE-сплиттер — если хотите вынести хотспот наверх, прямо к антенне (короче коаксиал — меньше потерь). Питание и сеть идут одним витопарным кабелем от PoE-коммутатора (стандарт 802.3af/at). Совмещённые решения вроде Geekworm X1207 дают сразу PoE + UPS на одной плате.
Контрольный список
- Блок: 5 В / ≥3 А, бренд, для Pi 4 — официальный 5.1 В/3 А. Сторона 220 В — только сертифицированный.
- Кабель: короткий толстый дата-кабель, не «зарядник».
- Питание — в Pi, не в модем. Не от ноутбука, не через хаб.
- Проверка: vcgencmd get_throttled = 0x0 и пустой dmesg | grep -i voltage после нагрузки.
- Феррит на шнур, разнесли БП и антенну.
- Резерв: повербанк pass-through или UPS-HAT с корректным шатдауном.
Стабильное питание = стабильный узел в сети
Хотспот на чистом питании не отваливается из RadioStar и держит ровный TX без BER-сюрпризов. Соберите свой образ под наш мастер — и подключайтесь к сети DMRhub надёжно, без «молний».
Источники
- Raspberry Pi 15W USB-C Power Supply (5.1V/3A) — raspberrypi.com
- Как починить предупреждения «Undervoltage Detected» (get_throttled, dmesg) — pimylifeup.com
- Lightning Bolt (Under-Voltage Warning) и порог ~4.63 В — scribles.net
- UPS-решения и pass-through для Raspberry Pi — sunfounder.com