GopherTrunk v0.3.1
Pre-releaseInstall
Windows 11 (x64): download gophertrunk-v0.3.1-windows-amd64-setup.exe and double-click. The installer adds GopherTrunk to your Start Menu — single static binary, no DLLs to ship — and prompts for a folder to install the browser-based web operator console (default: Documents\GopherTrunk Web Console). After install, follow INSTALL-WINDOWS.md to install the WinUSB driver via Zadig — the OS won't see your RTL-SDR until you do this once.
Windows on ARM: extract gophertrunk-v0.3.1-windows-arm64.zip (no installer for arm64 yet — portable ZIP only). The web console lives in the gophertrunk-web\ subfolder inside the zip.
macOS: extract gophertrunk-v0.3.1-darwin-arm64.tar.gz (Apple Silicon) or gophertrunk-v0.3.1-darwin-amd64.tar.gz (Intel) and run ./gophertrunk. Builds are unsigned — right-click → Open the first time to bypass Gatekeeper.
Linux: extract gophertrunk-v0.3.1-linux-amd64.tar.gz (x86_64) or gophertrunk-v0.3.1-linux-arm64.tar.gz (aarch64, e.g. Raspberry Pi 4/5) and run ./gophertrunk. Single static binary; no system dependencies needed.
Web operator console: every archive includes a standalone gophertrunk-web/ folder. Open its index.html in any browser and point it at a running daemon. Setup walkthrough: gophertrunk.org/web.html.
All artifacts are SHA-256-checksummed in SHA256SUMS.
What's Changed
- p25/ccdecoder: detect ADC clipping so #402 overload is visible by @MattCheramie in #496
- p25/cqpsk: add carrier recovery so a real tuner offset stops killing control-channel lock (#492) by @MattCheramie in #497
- fix(p25p1): correct LDU voice-frame interleaving offsets (#489) by @MattCheramie in #498
- dmr: decode spectrum-inverted (I/Q-reversed) bursts on R828D / V4 by @MattCheramie in #499
- cchunt: explain cchunt.failed with the control SDR's live IQ health by @MattCheramie in #500
- rtlsdr/usb: open WinUSB child interface of composite (usbccgp) dongles on Windows by @MattCheramie in #501
- Add diagnostic banner and verbose error reporting across all surfaces by @MattCheramie in #502
- ci: bump Go toolchain 1.25.10 → 1.25.11 to clear govulncheck by @MattCheramie in #504
- p25/cqpsk: fire the carrier seed under streaming chunk sizes (#492) by @MattCheramie in #503
- perf(rtlsdr): stop shedding live IQ on the control channel (#489) by @MattCheramie in #505
- rtlsdr: fix RTL-SDR Blog V4 deafness — 28.8 MHz crystal + V4 input routing by @MattCheramie in #506
- p25/ccdecoder: decouple live IQ ingest from decode (#402) by @MattCheramie in #507
- p25/ccdecoder: copy IQ into a pooled queue buffer; observe on the forwarder (#402) by @MattCheramie in #508
Full Changelog: v0.3.0...v0.3.1