GopherTrunk v0.5.6 — social announcement drafts
One-click copy-paste blurbs for posting the v0.5.6 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.6
Reddit — title
GopherTrunk v0.5.6 — new opt-in `cryptolab` cryptographic-research toolkit + browser console, the P25 IDEN_UP frequency-band table and every active talkgroup now show in the live views, Phase 2 encrypted calls populate ALGID/KID off the on-air MAC_PTT slot, and the control decoder warns when it has locked onto an adjacent site off-frequency
Reddit — body
**[GopherTrunk](https://gophertrunk.org) v0.5.6 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.5:**
* **`cryptolab` — optional RF cryptographic-research toolkit.** A new, opt-in `gophertrunk cryptolab` subcommand collects byte-oriented research tools — statistical triage (entropy / index-of-coincidence / chi-square / XOR key-length), classical-cipher brute force (XOR, Caesar, Vigenère, and a monoalphabetic substitution solver), LFSR/keystream analysis (Berlekamp–Massey), CRC parameter recovery, and analog voice spectral descrambling (incl. split-band and rolling-code inversion) — plus a pluggable subject framework for studying byte-oriented obfuscators. Excluded from the default build (`make build TAGS=cryptolab`, same opt-in pattern as the DVSI vocoder); a browser console mirrors the `siglab`/`configbuilder` consoles and also mounts inside the daemon at `/cryptolab/`. See `docs/cryptolab.md`.
* **P25 IDEN_UP frequency-band table in the live views.** The full band table GopherTrunk already decoded now overlays onto `GET /api/v1/systems` and the web Systems detail modal as a "Frequency bands (N)" section beside the neighbour-site list — read the band plan SDRtrunk-style and map a neighbour's channel id/number back to an absolute frequency without doing it by hand.
* **All active talkgroups surfaced, not just tuner-bound calls.** A single-voice-tuner setup used to show only one active talkgroup even when several calls were up. A control-channel activity tracker now records every grant the control channel announces; the active-calls API merges tuner-decoded and control-channel-observed calls with a `following` flag, and the TUI and web panels render observed-only calls distinctly. Audio is still limited by tuner count — the display of who's *up* no longer is.
* **P25 Phase 2 ALGID/KID from the on-air MAC_PTT slot** (#813). Real Phase 2 systems carry the encryption sync in the MAC_PTT message that begins each transmission, keyed by slot type rather than a MAC opcode, so encrypted calls used to leave `algorithm_id`/`key_id` blank. PTT-slot PDUs are now decoded and routed through the existing call-encryption backfill, with the per-channel MAC census logging payload hex for field confirmation.
* **Adjacent-site off-frequency control lock now warns** (#815). A strong adjacent-site control carrier ~12.5 kHz away can bleed through the narrowband receiver, lock, and decode the *wrong* site's identity while still reporting the tuned frequency. GopherTrunk now emits a throttled WARN when the total carrier offset exceeds a threshold (default 4 kHz, `sdr.carrier_offset_warn_hz`) and surfaces the live offset on `GET /api/v1/sites`. Advisory only — it never retunes.
**Downloads** (Linux / macOS / Windows, x64 + ARM64): https://github.com/MattCheramie/GopherTrunk/releases/tag/v0.5.6
**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.6 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.5:**
- **New `cryptolab` cryptographic-research toolkit** (opt-in, `make build TAGS=cryptolab`) — statistical triage, classical-cipher brute force (incl. substitution), LFSR/keystream + CRC recovery, and analog voice descrambling, with a browser console that also mounts in the daemon at `/cryptolab/`. See `docs/cryptolab.md`.
- **P25 IDEN_UP frequency-band table in the live views** — surfaced on `/api/v1/systems` and the web Systems modal beside the neighbour-site list.
- **All active talkgroups surfaced, not just tuner-bound calls** — every grant the control channel announces shows up, flagged `following` vs observed-only.
- **P25 Phase 2 ALGID/KID off the on-air MAC_PTT slot** (#813) — encrypted Phase 2 calls now populate `algorithm_id`/`key_id`.
- **Adjacent-site off-frequency control lock now warns** (#815) — catches the case where a strong neighbour 12.5 kHz away gets decoded as the tuned site.
Download: <https://github.com/MattCheramie/GopherTrunk/releases/tag/v0.5.6>
Docs: <https://gophertrunk.org>