GopherTrunk v0.4.5 — social announcement drafts
One-click copy-paste blurbs for posting the v0.4.5 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.4.5
Reddit — title
GopherTrunk v0.4.5 — the Hunt control-channel parser now covers every trunked protocol (P25/DMR/NXDN/EDACS/Motorola/MPT1327/TETRA/YSF), Phase 2 call history keeps the backfilled RID + encryption, a scanner-retune stream race is fixed, plus a ~180-entry RF/SDR Field Guide and a 14-part "SDR Internals" series
Reddit — body
**[GopherTrunk](https://gophertrunk.org) v0.4.5 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.4.4:**
* **Control-channel parser for every trunked protocol** (#707) — the Hunt tab's "Parse a control channel" panel was locked to P25; it now has a protocol selector covering every trunked protocol with a dedicated standalone control channel (P25, DMR Tier III, NXDN, dPMR, EDACS, Motorola, MPT 1327, TETRA, YSF), and the fixed 5/10/15/20 s dropdown becomes a free-form seconds field.
* **Phase 2 call history keeps the backfilled RID + encryption** (#696) — on P25 Phase 2 compressed grants the source radio ID starts at 0 and is backfilled mid-call on the traffic channel (ALGID/KID surface mid-call too), but call history kept the grant-time placeholders, so RIDs never showed up on exactly those systems. Call end now persists the final source_id / encrypted / algorithm_id / key_id with never-downgrade semantics.
* **Scanner-retune stream race fixed** (#686) — a fast retune cancels the IQ stream and immediately re-opens it, but the USB teardown runs in a detached goroutine, so the next StreamIQ often failed with "stream already active" (logged as "conv: StreamIQ failed"). Re-open now waits on the in-flight teardown across rtlsdr, airspy, hackrf, and airspyhf.
* **GopherTrunk Field Guide** (#700, #701) — a new ~180-entry [/reference/](https://gophertrunk.org/reference/) covering RF fundamentals, modulation, voice coding, SDR & DSP, algorithms, antennas & propagation, hardware, trunked radio, protocols, people, and organizations, most with hand-authored theme-aware SVG diagrams and wired into the glossary + llms.txt.
* **"SDR Internals" deep-dive series** (#705) — a 14-part blog series from "what is SDR" through the driver registry, streaming pool, DSP foundations, tuning, demodulation, symbol timing, FEC, and protocol-decoder state machines.
**Downloads** (Linux / macOS / Windows, x64 + ARM64): https://github.com/MattCheramie/GopherTrunk/releases/tag/v0.4.5
**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.4.5 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.4.4:**
- **Control-channel parser for every trunked protocol** (#707) — the Hunt "Parse a control channel" panel adds a protocol selector (P25, DMR Tier III, NXDN, dPMR, EDACS, Motorola, MPT 1327, TETRA, YSF) and a free-form listen-seconds field instead of the fixed dropdown.
- **Phase 2 call history keeps the backfilled RID + encryption** (#696) — Phase 2 grants start with src=0 and backfill identity mid-call; call end now persists the real source_id / encrypted / algorithm_id / key_id (never-downgrade) so RIDs finally appear in history.
- **Scanner-retune stream race fixed** (#686) — fast retunes no longer hit "stream already active"; re-open waits on the in-flight async teardown across rtlsdr / airspy / hackrf / airspyhf.
- **RF/SDR Field Guide** (#700, #701) — ~180 cross-linked [/reference/](https://gophertrunk.org/reference/) entries with hand-authored SVG diagrams, wired into the glossary and llms.txt.
- **"SDR Internals" series** (#705) — a 14-part deep dive from "what is SDR" to protocol-decoder state machines.
Download: <https://github.com/MattCheramie/GopherTrunk/releases/tag/v0.4.5>
Docs: <https://gophertrunk.org>