Powering a DMR hotspot: clean PSU, fighting voltage drops and battery backup

Category: PowerDifficulty: ~8 minutes

Nine out of ten "mysterious hotspot glitches" are not the firmware, not the modem and not BrandMeister. It is the power. A Raspberry Pi with an MMDVM module is a delicate device: it needs a steady 5 volts, and the moment that sags by a fraction of a volt while writing to the SD card or when the transmitter fires up, you get reboots, a corrupted file system and a drifting BER on the air. The good news: it is fixed with a few cheap parts — the right PSU, a thick cable and five minutes of diagnostics. Let's go through it in order.

Why the "lightning bolt" is not a minor thing

If a yellow lightning-bolt icon appears in the corner of the screen (or in the logs), that is an undervoltage warning. The Pi's power controller raises it when the voltage on the board drops below ~4.63 V. If the hotspot runs headless without a monitor, you won't see the bolt at all — you'll only see the consequences: spontaneous reboots, a frozen Pi-Star/RadioStar, Wi-Fi dropping out at boot, a distorted TX spectrum.

The nastiest part is SD-card degradation. When power sags during a write (and the Pi writes to logs and the database constantly), the write is cut off mid-way, the file-system metadata is left inconsistent, and the card slowly "dies". In the journal this shows up as paired messages: alongside under-voltage detected you get mmcblk0 errors. That is an almost certain sign that the power, not a "bad card", is to blame.

A multimeter will fool youA measurement with a tester will show a nice "5.0 V", because an ordinary multimeter doesn't catch the brief dips (fractions of a millisecond) at the peak load — for example, when the modem keys up. Only an oscilloscope or the Pi's own detector sees these dips. So trust the vcgencmd command, not the tester.

How to catch a voltage drop in the logs

Don't guess — ask the Pi itself. Two commands settle everything.

The first shows the throttling status register:

vcgencmd get_throttled

The answer is a hexadecimal number where each bit means something. throttled=0x0 is perfect — no problems. If a bit is set, the power has been failing:

BitValue (hex)What it means
00x1Undervoltage right now
10x2Frequency capping active right now
20x4Throttling happening right now
30x8Temperature limit reached right now
160x10000Undervoltage has occurred since boot
170x20000Frequency capping has occurred since boot
180x40000Throttling has occurred since boot
190x80000Overheating has occurred since boot

So 0x50000 means "there was undervoltage and there was throttling since power-on" — meaning the supply doesn't hold up under load. The second command pulls the events out of the kernel log:

dmesg | grep -i voltage

Every line like hwmon ... under-voltage detected! is a recorded dip. If there are many of them and they come in bursts during operation, the diagnosis is obvious.

A one-minute checkStart the hotspot, run it for ten minutes or so with a couple of transmissions — then run both commands. A clean 0x0 and an empty dmesg for voltage means the power is fine, and you can dig further into calibration and the modem.

The right power supply

The baseline requirement for a Pi-based hotspot (Zero, 3, 4) is 5 V and at least 3 A. Smaller 2–2.5 A units "sort of work", but it is precisely at the peak (TX + Wi-Fi + a write) that they sag. For the Raspberry Pi 4 get the official 5.1 V / 3.0 A supply (15 W, USB-C) — it outputs 5.1 V for a reason, with headroom to compensate for the drop across the cable. It has built-in short-circuit, overload and overheat protection, and it is certified.

  • Don't power the hotspot from a laptop's USB — the port delivers a maximum of 0.5–0.9 A, which isn't enough even at idle.
  • Don't hang it off a cheap hub and don't split a single PSU across several devices — every consumer pulls the voltage down.
  • Power goes into the Pi, not into the MMDVM modem. The modem takes 5 V from the Pi's own GPIO rail.
  • "5 V 3 A" chargers from a no-name box often lie in practice: under load they sag to 4.5 V. Buy a trusted brand.
The 220 V side — no compromisesA power supply is a device plugged into the mains. Use only sound, certified PSUs (CE/EAC, a proper enclosure, a stated input range of 100–240 V). A cheap no-name adapter with a thin transformer and no galvanic isolation is a fire and electric-shock risk, not "saving a few dollars". A damaged lead, a cracked case, a smell of burning — into the bin immediately.

The cable matters as much as the PSU

The most common and most galling cause of the "lightning bolt" with a good PSU is the cable. Most of the USB cables lying around the house are "charging" leads: thin power conductors (28 AWG) rated for a phone's charge current, with noticeable resistance. On such a cable at 2–3 A you lose half a volt, and what reaches the Pi is no longer 5 V but 4.5–4.6 V — hello, undervoltage.

ParameterBad ("charging")Good
Power conductor gauge28 AWG, thin20 AWG and thicker
Length1.5–2 m and longeras short as possible
Typecharge onlydata cable (full)
Drop at 3 A0.4–0.6 V<0.15 V

Get a short, thick data cable (the official Pi PSU's cable is, by the way, captive — 1.5 m, 18 AWG — and that is part of its reliability). The rule is simple: the shorter and thicker the wire, the smaller the losses. If you have no choice — a short "charging" lead beats a long one.

Interference and grounding

A switching PSU is a source of RF junk that can creep into the hotspot's receive path and raise the noise floor on 433 MHz. A few tricks to cut the dirt:

  • A ferrite ring on the power cable near the Pi's connector (a couple of turns) suppresses common-mode interference along the lead.
  • Keep the power supply and the modem/antenna well apart — don't pile them into one heap.
  • A good (read: not the cheapest) switcher is itself "quieter" in terms of interference: it has a proper input filter.
  • If the hotspot sits next to an outdoor antenna, read up separately on grounding and lightning protection: lightning protection of the antenna/feeder run isn't about the PSU, but it is critical for the life of the equipment and people.
Grounding without fanaticismDon't "ground" the hotspot to a heating radiator or to the neutral of a socket. Proper protective grounding is a dedicated bus/standard PE terminal. A makeshift "ground" is more dangerous than none at all.

Power backup: surviving outages

A hotspot that reboots at every flicker of the lights breaks your presence on the network and again risks the SD card on a hard cut. A backup isn't a luxury, it's protection for the hardware. Options in increasing order of tidiness:

  • A power bank with pass-through (UPS mode) is the cheapest route. The bank charges from the mains and powers the Pi at the same time; when 220 V drops, the output isn't interrupted. The key phrase when buying is "pass-through / charging while discharging": not all banks can do this — many have their output cut off during the switchover, and that is no longer a UPS.
  • A UPS HAT (Waveshare UPS HAT, Geekworm X728/X1207, PiJuice) sits on the GPIO, holds a Li-ion battery, delivers a steady 5 V and, crucially, can tell the system over I2C/GPIO that the mains has dropped and initiate a clean shutdown before the battery is exhausted. That saves the file system.
  • A PoE HAT / PoE splitter — if you want to move the hotspot up high, right next to the antenna (shorter coax — fewer losses). Power and network run over a single twisted-pair cable from a PoE switch (the 802.3af/at standard). Combined solutions such as the Geekworm X1207 give you PoE + UPS on a single board at once.
Li-ion = cautionAny UPS HAT and any power bank is a lithium battery. Swelling, heat, smell, deformation — take it out of service immediately. Don't leave cheap unprotected packs charging unattended, don't put a bank near heat sources, and don't seal it in an airtight box without ventilation. A punctured or overcharged lithium cell burns fiercely and is hard to put out. For outdoor placement, keep in mind that Li-ion handles frost poorly.

Checklist

  1. PSU: 5 V / ≥3 A, branded; for Pi 4 the official 5.1 V/3 A. The 220 V side — certified only.
  2. Cable: a short, thick data cable, not a "charger" lead.
  3. Power into the Pi, not the modem. Not from a laptop, not through a hub.
  4. Check: vcgencmd get_throttled = 0x0 and an empty dmesg | grep -i voltage after a load.
  5. Ferrite on the lead, keep the PSU and antenna apart.
  6. Backup: a pass-through power bank or a UPS HAT with a proper shutdown.

Stable power = a stable node on the network

A hotspot on clean power doesn't drop out of RadioStar and holds a steady TX with no BER surprises. Build your own image for our master — and connect to the DMRhub network reliably, with no "lightning bolts".

Sources

  1. Raspberry Pi 15W USB-C Power Supply (5.1V/3A) — raspberrypi.com
  2. How to fix the "Undervoltage Detected" warnings (get_throttled, dmesg) — pimylifeup.com
  3. Lightning Bolt (Under-Voltage Warning) and the ~4.63 V threshold — scribles.net
  4. UPS solutions and pass-through for the Raspberry Pi — sunfounder.com
On the DMRhub network

Radio configured? Get on the air: our own master, hotspots and an app with DMR right in your phone.

Sign in