GopherTrunk v0.5.9 — social announcement drafts

One-click copy-paste blurbs for posting the v0.5.9 release. Each block below is a fenced code block so the rendered-markdown “copy” button grabs exactly what you’d paste.

Release: https://github.com/MattCheramie/GopherTrunk/releases/tag/v0.5.9


Reddit — title

GopherTrunk v0.5.9 — full-spectrum survey scans the whole device, names everything on the air, and captures any signal to SigLab/CryptoLab; plus an Airspy R2/Mini fix that restores decode at 2.5 & 10 MS/s

Reddit — body

**[GopherTrunk](https://gophertrunk.org) v0.5.9 is out** — pure-Go digital-trunking scanner for RTL-SDR / HackRF / Airspy / USRP. P25 (Phase 1+2), DMR (AMBE+2 voice), NXDN, Motorola Type II, EDACS, LTR, MPT 1327, dPMR, D-STAR, YSF, M17, plus APRS, POCSAG + FLEX paging, and AIS / DSC / ADS-B. No CGO, single static binary for Linux / macOS / Windows.

**What's new since v0.5.8:**

* **Full-spectrum survey — scan the whole device, name everything, capture any signal.** `gophertrunk hunt -survey` gains an end-to-end "what's on the air" workflow for undocumented, protocol-dense areas:
  * **`-whole-device`** sweeps the SDR's *entire* tuning range (derived from the device itself — 24 MHz–1.766 GHz for an R820T, etc.) instead of a hand-typed band, printing the resolved span, step count, and ETA.
  * **Wideband detect + name + stitch**`-detect-wideband` finds signals far wider than a channel (cellular LTE/5G, WiFi, other OFDM) by detecting occupancy plateaus and stitching them across tunes to recover the true occupied bandwidth, surfaced as named-but-not-decoded rows.
  * **Unified inventory row** — every detected signal carries a name, frequency, service/purpose (from a curated frequency-allocation table), quality, encrypted? + encryption type, and a wideband flag. A new `-detect-encryption` entropy triage flags *unknown* digital bursts that look encrypted.
  * **List-driven capture → SigLab / CryptoLab** — from a survey's JSON, `-survey-capture` records raw IQ of a chosen signal and hands it to SigLab identify or a CryptoLab `ks` frames file. Also a per-row button in the web Hunt tab, a TUI keybinding, and `POST /api/v1/hunt/capture`.
* **Airspy R2/Mini decode fix** (#851, #764). The driver was misreading the firmware `GET_SAMPLERATES` table as 2× "device" rates, so it built its down-converter at half the delivered IQ rate — the symbol clock ran 2× off and nothing decoded (wideband at 10 MS/s, and the control channel at 2.5 MS/s). The table is in IQ output rates; the driver now matches the requested rate against it directly, so an R2/Mini locks at its native rates again.

**Downloads** (Linux / macOS / Windows, x64 + ARM64): https://github.com/MattCheramie/GopherTrunk/releases/tag/v0.5.9

**Docs:** https://gophertrunk.org

Heads-up: the v0.x line is still flagged prerelease — actively developed, feedback / captures / bug reports very welcome.

Discord

**GopherTrunk v0.5.9 is out** — pure-Go trunking scanner for RTL-SDR / HackRF / Airspy / USRP. P25, DMR, NXDN, M17, analog trunked, APRS, POCSAG + FLEX paging, AIS / DSC / ADS-B. Single static binary, zero CGO.

**What's new since v0.5.8:**
- **Full-spectrum survey**`gophertrunk hunt -survey -whole-device` sweeps the SDR's entire tuning range and builds a unified inventory: every signal gets a name, frequency, service/purpose, quality, encrypted? flag, and a wideband flag. `-detect-wideband` names + stitches signals wider than a channel (cellular/WiFi/OFDM); `-detect-encryption` flags unknown bursts that look encrypted.
- **List-driven capture** — from a survey's JSON, `-survey-capture` records raw IQ of any signal straight into SigLab or a CryptoLab `ks` frames file (also a web-Hunt button, a TUI keybinding, and a REST endpoint).
- **Airspy R2/Mini decode fix** (#851, #764) — the driver was building its down-converter at half the true IQ rate (symbol clock 2× off, nothing decoded); it now reads the `GET_SAMPLERATES` table as IQ rates, so wideband at 10 MS/s and the control channel at 2.5 MS/s lock again.

Download: <https://github.com/MattCheramie/GopherTrunk/releases/tag/v0.5.9>
Docs: <https://gophertrunk.org>