YWD//HOTSPOT
DMR SIMPLEX / DUPLEX BRANDMEISTER PI ZERO FIRST RX MONITOR PLUGINS OPEN SOURCE
PROJECT STATUS · RC3 PUBLISHED

0.2.0-rc3 is the current physically tested factory-image release candidate.

The exact RC3 source and exact compressed factory image passed fresh-flash acceptance on the reference Raspberry Pi Zero W + MMDVM hotspot. RC3 is a substantial feature and hardening release: the DMR RX Monitor streaming path is now physically proven, runtime/plugin behavior is tighter, and the final WebUI integration work is in the published image.

SOFTWARERC3
0.2.0-rc3

Immutable release tag at source commit 3823140b9fd4…f62f5e. RC3 is published as a GitHub prerelease with the exact tested image and audit artifacts.

FACTORY IMAGEACCEPTED
Fresh-flash proven

The published ywd-hotspot-0.2.0-rc3.img.xz passed setup AP, Wi-Fi handoff, OLED setup, dashboard auth, RF/SSH factory policy, BrandMeister, duplex Parrot, reboot persistence and zero-failed-unit checks.

RX MONITORPROVEN
Streamed DMR audio path

Persistent trusted audio streaming, AMBE49/FEC recovery, batched vocoder transport and a sandbox boundary that delivers PCM only. The optional external vocoder remains separately installed.

RUNTIME + UPDATEHARDENED
RC2 → RC3 accepted

Demand-gated YWD Extended voice capability, current/legacy runtime classification, plugin feature-runtime reconciliation, settings-restore fixes and the normal RC2 → RC3 updater path were physically exercised.

RC2 BASELINEpublished + updater proven
RC3 INTEGRATION209 commits ahead
UPDATER TESTRC2 → RC3 accepted
IMAGE TESTfresh flash accepted
RC3 PUBLISHEDv0.2.0-rc3
0.2.0-RC3 · RELEASES + DOWNLOADS

Flash the tested appliance or grab the exact tagged source.

RC3 is the current published prerelease. The image below is the exact compressed factory artifact that passed fresh-flash acceptance; the source links point at the immutable tag used to build it.

TAGGED SOURCEv0.2.0-rc3

Exact RC3 source archive

Immutable source at commit 3823140b9fd4d6e73fe9066af4b2280628f62f5e, including the RC3 dashboard, streamed RX path, runtime hardening, updater, plugin framework, image builder and documentation.

REF v0.2.0-rc3FORMAT ZIP / TAR.GZ
RELEASE + AUDIT INFORC3

What changed in RC3?

Physically proven DMR RX Monitor streaming, external vocoder boundary, demand-gated voice capability, current/legacy MMDVM runtime handling, plugin/runtime hardening, telemetry and restore fixes, software channels, MODEM inventory, and final WebUI polish.

IMAGE FRESH-FLASH ACCEPTEDRUNTIME API 2
RX MONITOR ADD-ONS

DMR RX Monitor plugin + external vocoder backend

The separately distributed RX Monitor package and mbelib backend deployment archive live in the site's dedicated downloads area, along with a short install walkthrough.

OPEN ADD-ON DOWNLOADS
CURRENT 0.2.0-RC3 FEATURE SET

Small Pi. Serious hotspot. Much sharper runtime boundaries.

RC3 keeps MMDVM-Host as the sole modem/RF owner while adding a physically proven receive-audio path, tighter demand-driven runtime behavior, better restore/update reconciliation, and a more complete dashboard without turning the Zero into a general-purpose server.

RF + DMR

Simplex or duplex

Separate duplex RX/TX frequencies, TS1/TS2-aware routing, live RX/TX state, Last Heard, BER context and modem-reported RSSI only when the HAT supplies a usable value.

BRANDMEISTER
NETWORKSUPPORTED
TALKGROUPSSTATIC + DYNAMIC
ROUTINGTS1 / TS2

Static/dynamic talkgroup management, duplex-aware slot routing, Drop QSO controls and saved talkgroup sets, with RC3 acceptance covering real duplex Parrot operation.

DMR RX MONITOR
TRANSPORTSTREAMED PCM
RECOVERYAMBE49 / FEC
BATCHING10 FRAMES / 200 MS

Live receive audio now uses a persistent trusted local stream instead of repeated per-chunk HTTP decode requests. The sandboxed browser plugin receives PCM only.

EXTERNAL VOCODER
PROTOCOLYWD VOCODER V1
BACKENDSEPARATE INSTALL
RF DEPENDENCYNONE

The optional decoder backend is deliberately outside the hotspot/plugin package. mbelib/libmbe is not bundled, and normal DMR operation does not depend on the vocoder.

MMDVM RUNTIME
DEFAULTYWD EXTENDED
EXT API2
VOICE TAPDEMAND-GATED

RC3 distinguishes current vs legacy YWD Extended identities and only enables the voice tap while an installed+enabled plugin actually demands read:dmr-voice.

WEBUI + SYSTEM
STARTUPBRANDED OVERLAY
SETTINGSBLOCKING TXN UI
INVENTORYMODEM / MMDVM

RC3 adds the RF-style startup treatment, stage-aware Save / Save & Apply feedback, responsive toggles, software-channel management and a read-only modem/runtime inventory card.

FACTORY APPLIANCE
FIRST BOOTSETUP AP + OLED CODE
RF / SSHOFF BY DEFAULT
RESTOREPROGRESS + RECONCILE

The public image contains no operator secrets. RC3 improves first-boot .ywdsettings upload/verify/apply feedback and restores uploaded plugin registration plus trusted feature runtime state.

SSH + SFTP
FACTORY STATEDISABLED
AUTHPUBLIC KEY ONLY
CONTROLSYSTEM → SSH ACCESS

Optional dashboard-managed system access with unique server host keys on enable, no default SSH password, and no root/password SSH login.

UPDATES + PLUGINS
UPDATESSTAGED + VALIDATED
PLUGINSSIGNED + SANDBOXED
CHANNELSMAIN / DEV / PLUGINS

Protected backups, rollback-aware deployment, safer feature-runtime reconciliation, preserved plugin intent and guarded software-channel switching without giving plugins RF TX or modem ownership.

WEB DASHBOARD

The hotspot UI, without the beige appliance energy.

This website intentionally carries the same dark RF-console language as the hotspot dashboard: deep blue-black panels, cyan telemetry, magenta accents, tight monospace typography, and status-first cards.

YWD//HOTSPOTWEBUI STYLE PREVIEW
READ-ONLY DEMO
RF BM WIFITEMP 39°C
STATUSCONTROLSETTINGSCALIBRATEDIAGNOSTICS
LIVE DMR RF ACTIVITY
TX
KJ6YWD TG 3196104 · TS2
BRANDMEISTER
StateCONNECTED
Master3103
Dynamic3196104
ModeDUPLEX
LAST HEARD
NOWRF → NETKJ6YWDTG 3196104BER 0.8% 2mNET → RFKE0CGBTG 3196104TS2
DESIGN TARGET

Pi Zero first, not Pi Zero eventually.

The original Raspberry Pi Zero W remains the performance target. Browser presentation stays client-side; RC3 keeps bounded trusted stream/recovery work local while optional speech decoding remains isolated behind the external vocoder boundary.

Raspberry Pi Zero WRaspberry Pi OS LiteMMDVM_HS / JumboSpotSSD1306 OLEDBrandMeister DMR
YWD-Hotspot logo
HARDWARE SUPPORT · RC3

Still built around cheap hardware that actually does the job.

RC3 was fresh-flash accepted on the reference original Pi Zero W + MMDVM appliance. The hardware baseline stays intentionally narrow even as the receive-audio and runtime layers get more capable.

PRIMARY COMPUTE TARGET

Raspberry Pi Zero W / Zero WH

The original Zero W remains the public-image and performance target. RC3's exact factory artifact was physically exercised on this class of hardware before publication.

PRIMARYARMHFWI-FI
MODEM HAT

MMDVM_HS / JumboSpot style

Simplex and duplex configurations are supported with separate RX/TX frequencies and TS1/TS2 routing. RC3 acceptance included duplex TS1 and TS2 BrandMeister Parrot operation.

SIMPLEXDUPLEXTS1 / TS2
MMDVM SOFTWARE VARIANT

Current Extended or stock

YWD Extended remains the recommended/default runtime. RC3 adds exact current-versus-legacy classification and demand-gates the passive voice tap; Stock Upstream remains supported without extension-dependent capabilities.

YWD EXTENDEDUPSTREAMAPI 2
OPTIONAL DISPLAY

SSD1306-compatible OLED

128×64 I²C OLED support remains optional and carries boot/network/setup/runtime presentation. The RC3 fresh-image acceptance included the OLED setup-code flow.

128×64I²C0x3C DEFAULT
COMPATIBILITY AT A GLANCE
HARDWARE / SERVICESTATUSNOTES
Raspberry Pi Zero W / Zero WHPRIMARYRC3 factory image and acceptance target
Other Raspberry Pi modelsMAY WORKSource installs may work; not the factory-image acceptance baseline
Raspberry Pi OS Lite 32-bit / Raspbian 13PRIMARYCurrent appliance/base OS target
MMDVM_HS / JumboSpot simplexSUPPORTEDSingle-frequency hotspot operation
MMDVM_HS / JumboSpot duplexSUPPORTEDSeparate RX/TX + TS1/TS2 routing; RC3 Parrot accepted
YWD Extended MMDVM runtimeDEFAULTCurrent demand-gated passive voice capability
Legacy RC1/RC2 YWD Extended runtimeRECOGNIZEDNot silently rebuilt; explicit refresh is available when current voice capability is needed
Stock Upstream MMDVM runtimeSUPPORTEDNo YWD extension-dependent plugin capabilities
External YWD Vocoder Protocol v1 backendOPTIONALSeparately installed; not bundled; normal RF remains independent
SSD1306 128×64 OLEDOPTIONALBoot/setup/runtime display
BrandMeister DMRSUPPORTEDPrimary DMR network integration
Modem RSSI / dBm reportingFIRMWARE DEPENDENTShown only when the HAT supplies a usable value
SSH / SFTPOPTIONALFactory OFF; dashboard-enabled, public-key-only
INSTALL + UPDATE · 0.2.0-RC3

Factory image first. Exact tagged source when you need it.

The exact RC3 image has already passed fresh-flash acceptance on the reference appliance. Source installation remains supported, and the normal RC2 → RC3 application updater path was also physically accepted.

FLASH THE RC3 FACTORY IMAGE
1. Download ywd-hotspot-0.2.0-rc3.img.xz
2. Flash it directly with Raspberry Pi Imager
3. Do NOT apply Pi Imager OS customization
4. Boot with the MMDVM HAT installed
5. Join YWD-Hotspot-XXXX
6. Open http://10.42.0.1/ and configure Wi-Fi
7. Reconnect to your normal LAN
8. Read the six-digit OLED setup code
9. Open https://<LAN-IP>:8443/ and finish setup
10. RF and SSH remain OFF until explicitly enabled
EXACT 0.2.0-RC3 SOURCE INSTALL
sudo apt update
sudo apt install -y git
cd ~
git clone https://github.com/merberg-ai/ywd-hotspot.git
cd ywd-hotspot
git checkout v0.2.0-rc3
sudo ./INSTALL.sh
RC2 → RC3 MANAGED UPDATE
ywd-hotspotctl version
ywd-hotspotctl source

sudo ywd-hotspotctl update --check
sudo ywd-hotspotctl update --dry-run
sudo ywd-hotspotctl update

systemctl --failed --no-pager
FACTORY / RUNTIME NOTES
  • No Wi-Fi credentials, callsign, DMR ID, BrandMeister credentials/API key, dashboard password or imported settings are embedded in the public image.
  • RF and SSH are OFF in factory state; there is no default SSH password.
  • Optional SSH/SFTP is enabled from SYSTEM → SSH ACCESS and remains public-key-only with root/password SSH disabled.
  • RC3 recognizes the older RC1/RC2 YWD Extended runtime rather than silently recompiling MMDVM-Host. If you need the current demand-gated RX voice capability on an upgraded legacy runtime, follow the explicit refresh path in the upgrading guide.
  • RX Monitor speech needs a separately installed YWD Vocoder Protocol v1 backend. The vocoder/mbelib backend is not bundled and normal RF/DMR operation does not depend on it.
  • Keep the normal hotspot dashboard on a trusted LAN; do not forward its plain-HTTP control interface directly to the Internet.
YWD-HOTSPOT

Connect. Communicate. Anywhere.

RC3 image, tagged source, checksums, release notes, documentation, issues and ongoing development live on GitHub.