Inside a Hotspot
Updated 14 Oct 2026. A block by block look at a typical Pi-Star or WPSD hotspot: what the parts are, what software runs on each, and what it does. Not at the resistor level, just the building blocks.
The big picture
A hotspot is two main parts: a Raspberry Pi, which is a small computer, and a radio modem board, which plugs onto the Pi's pins. The board talks to your radio over the air. The Pi talks to the internet. Everything else is software that makes those two parts work together.
How a call travels
- You key up. Your radio sends your voice over the air as digital data.
- The modem board receives it and turns the radio signal into digital frames.
- The frames go through the pin header to MMDVMHost on the Pi.
- MMDVMHost passes them to the right gateway for that mode, for example DMRGateway for DMR.
- The gateway sends them over the internet to the network or reflector.
- Replies come back the same way in reverse, and the board transmits them to your radio.
Block 1: the Raspberry Pi
The Pi is a small, complete computer. On a hotspot its jobs are to run the software, connect to the internet, and pass audio data between the modem board and the networks.
- SD card: holds the operating system and all the hotspot software. This is the Pi's "hard drive".
- Wi-Fi or Ethernet: the link to your router and the internet.
- Pin header: the row of 40 pins the modem board plugs onto. The two talk over a serial connection on these pins.
- Models used: WPSD lists the Pi Zero 2 W, 3, 4 and 5 (the Pi 5 in its 4 GB and 8 GB versions only). The original Pi Zero W is not supported. The Zero 2 W is the common choice for small hotspots.
- Power supply: Raspberry Pi asks for 5.1 V on every model, with at least 2 A for a Zero 2 W (its official supply gives 2.5 A), 2.5 A for a Pi 3 and 3 A for a Pi 4. Raspberry Pi warns that a poor quality supply can corrupt the SD card and cause unpredictable behaviour. The Zero 2 W cannot warn you about low voltage, so a good supply matters even more there.
Block 2: the radio modem board
The board is the radio part of the hotspot. It has its own small processor and its own software, separate from the Pi.
- Microcontroller (usually an STM32F103): a tiny processor that runs the firmware. It turns the radio signal into digital frames for the Pi, and the other way round.
- Radio chip (ADF7021): does the actual receiving and transmitting. A duplex board has two of them, one to receive and one to transmit. Duplex needs the receive and transmit frequencies well apart, about 5 MHz or more on 70 cm.
- TCXO: a temperature controlled crystal that keeps the radio chip on frequency. It is 14.7456 MHz on most boards (12.288 MHz on a few). The dashboard has offset settings to fine-tune the frequency. A wrong offset gives a high bit error rate.
- Antenna: a small antenna for very short range, usually indoors. Power is about 10 to 20 milliwatts.
The software, layer by layer
On the modem board
| Software | What it does |
|---|---|
| Firmware (MMDVM_HS) | Runs on the board's microcontroller. Handles the radio chip, turns the signal into digital frames, and sends them to the Pi. Written by CA6JAU, based on G4KLX's MMDVM. It stays on the board, not on the SD card, so changing SD cards does not change it. |
| Flashing tool | Loads new firmware onto the board, from the Pi. Pi-Star uses pistar-modemupgrade, also on the dashboard's Expert, Modem FW Upgrade page. WPSD has the same tool as wpsd-modemupgrade. Older Pi-Star versions used pistar-mmdvmhshatflash. The firmware must match the board type and its crystal. |
On the Raspberry Pi
| Software | What it does |
|---|---|
| Operating system | A version of Raspberry Pi OS (Debian Linux). It runs everything else. Pi-Star 4.3 is built on the Bookworm release. Current WPSD images use the newer Trixie release, and Bookworm installs are still supported. |
| MMDVMHost | The core program, by Jonathan Naylor G4KLX. Talks to the modem board, decodes what your radio sends, and hands it to the right gateway. |
| Gateways | One program per network type: DMRGateway, YSFGateway, P25Gateway, NXDNGateway, M17Gateway and ircDDBGateway (D-STAR). Each one connects to its kind of network or reflector and handles linking. |
| Dashboard | The web page you open in a browser to set up and watch the hotspot. On Pi-Star it is a set of PHP pages served by a web server called nginx. |
| Host and ID lists | Files listing every reflector, talkgroup and user ID, so the hotspot knows where to connect and whose callsign to show. On Pi-Star a nightly job runs a script called HostFilesUpdate.sh to refresh them. WPSD checks for new lists every hour. |
| Watchdog | On Pi-Star, pistar-watchdog checks that MMDVMHost and the gateways (DMR, YSF, P25, NXDN, M17, D-STAR and DAPNET) are running, and restarts any that have stopped. It also trims the log files when they fill up. |
Pi-Star and WPSD side by side
Both run the same core programs (MMDVMHost and the gateways) on the same hardware. The differences are in the dashboard, the operating system setup and how updates arrive.
| Pi-Star | WPSD | |
|---|---|---|
| Made by | Andy Taylor, MW0MWZ | W0CHP and the WPSD team. Started as a new dashboard for Pi-Star and grew into its own system. |
| Base operating system | 4.3 is on Bookworm. The older 4.1 and 4.2 lines are on Buster and Bullseye. | Trixie for current images; Bookworm still supported |
| File system | Read-only by default, to protect the SD card, including in 4.3. It switches to read-write only while saving changes. To edit files yourself, type rpi-rw first. | Not read-only |
| Updates | Released from time to time. Latest seen: 4.3.9. Older 4.1 and 4.2 lines are still updated too. | Rolling updates, automatically overnight, or on demand from Admin, Update. |
| Core programs | Same in both: MMDVMHost and the G4KLX gateways | |
| Modem firmware | Same in both. It lives on the board, not the SD card. | |
Other kinds of hotspots
- Duplex boards: the same idea with two radio chips, so the hotspot can receive and transmit at the same time, like a small repeater.
- USB hotspots: the modem plugs into a USB port instead of the pin header (for example the ZUMspot USB or a DVMEGA). It still needs a Pi or a PC to run the software.
- All-in-one units: boxes such as the SharkRF openSPOT have their own built-in computer. There is no Pi and no SD card, so most of this page does not apply.
Sources
- MMDVM_HS firmware README, juribeparada on GitHub (chips, TCXO, duplex, flashing)
- Pi-Star system scripts, Pi-Star_Binaries_sbin (nginx, read-only switching, HostFilesUpdate, watchdog)
- Pi-Star downloads and beta pages, pistar.uk (versions, Buster to Bullseye to Bookworm)
- The WPSD Project, wpsd.w0chp.net (makers, hardware, updates)
- W0CHP articles: WPSD Bookworm released, and No Read-Only File-System in WPSD
- dmrhub.ru: What is MMDVM, and WPSD vs Pi-Star (chips, same MMDVMHost stack)
- g4klx source code on GitHub (MMDVMHost and gateway names)
- Pi-Star forum (forum.pistar.uk): read-only advice for 4.3, nginx, daily list updates, flashing tools
- WPSD FAQs and articles, w0chp.radio (supported Pi models, Trixie images, automatic updates)
- hamradio.my, papasys.com, passion-radio.com, robrobinette.com, M17 Project wiki, George Smart, BARC hotspot setup guide (chips, power, call path)
- Raspberry Pi power: Raspberry Pi documentation (power supplies), The Pi Hut, dmrhub.ru, element14
- Pi-Star code on GitHub (Pi-Star_Binaries_sbin, Pi-Star_DV_Dash): read-only notice, pistar-modemupgrade, nightly job, watchdog
- SharkRF openSPOT4 product page; satsignal.eu, jumbospot.de, k0pir.us, n3tdm hotspot notes