github Newspicel/sdrmm v2.4.4

43 minutes ago

Features

  • A network bind serves HTTPS with a self-signed certificate by default; --no-tls keeps plain HTTP behind a proxy or tunnel (01aad1f)
  • Aaronia SPECTRAN V6 and V6 ECO through the RTSA-Suite PRO: receive, and transmit half duplex (12b3bcc)
  • Array processors share one face built from what each declares; plugin processors get it too (d00f9c1)
  • ATV: FM pictures down to 5 dB CNR, standard PAL/NTSC colour, ±3 MHz tuning error, channel rate setting and Auto luma bandwidth (4d06988)
  • Chromium browsers connect over WebTransport when the server serves HTTPS itself: audio survives packet loss and a stalled picture no longer holds back the rest (01aad1f)
  • Desktop app runs on Chromium (CEF) instead of the system webview (76a0acc)
  • DMR: ARC4 and AES calls joined late start from the late-entry MI (3e2ca02)
  • DMR: Motorola Basic Privacy deciphered without a key, ARC4 and AES with the operator's keys (231e7e6)
  • DV decoders and trunk nodes can play voice through a DVSI AMBE-3000/3003 chip (ThumbDV, USB-3000, USB-3003) on a serial port, in builds with the dvsi feature (f4556fb)
  • Event outputs keep webhook URLs, tokens and passwords on the server, never in a workspace or its export (d00f9c1)
  • FT8, FT4 and WSPR decodes carry their UTC slot and a DT from it. FT8 and FT4 confirm weak repeats of stations heard one period earlier. (19d6cba)
  • iPhone app needs iOS 27 (cf9f364)
  • P25 and NXDN: ADP, DES-OFB, AES and the NXDN scrambler deciphered with the operator's keys (ebc3a8c)
  • POCSAG: Swissphone IDEA decryption with the operator's keys (3c07edf)
  • Speaker: pick an output device per Speaker, to feed WSJT-X, JS8Call or fldigi through virtual devices (3e61882)
  • The workspace bar warns when the link to the server is lossy, slow or falling behind (01aad1f)
  • Transmit: Transmitter, Modulator and Microphone nodes send voice, APRS messages, channels and lanes on radios that transmit, with a PTT key, VOX and an occupied-width readout (5a662a7)
  • Trunk: keys on the trunk node decipher the DMR calls it follows (3e2ca02)
  • Trunk nodes follow P25 trunked systems; the trunk follower is no longer DMR-only (d00f9c1)
  • Trunk system: priority and lockout talkgroups, granted talkgroup per channel, site readout and control channel failover (ebc3a8c)
  • Video reaches the browser as JPEG and IQ as 16-bit samples, a fraction of the bandwidth; clients asking for the same spectrum share one reduction (01aad1f)

Fixes

  • A plain http:// request to the HTTPS port is redirected to https:// (01aad1f)
  • A radio plugged in during a workspace switch no longer reopens the old workspace (d00f9c1)
  • AM and WFM decode faster; AM audio rolls off treble hiss (a96f4a6)
  • Analog video and DAB decode much faster on x86 (9fc99d5)
  • ATV decodes analog video about a third faster (e0f3b57)
  • Broadcast faces show decoding health, not decoded content; service Auto names the service it picked (016e089)
  • Builds against FFmpeg 8 again (0ca1a2d)
  • Channel edits: the last edit always wins (d00f9c1)
  • WFM: the channel filter takes the last halving of the rate; noise blanker and IF filter run at that rate (813d439)
  • CPS: Radtel RT-4D names with control bytes read as the radio stores them (cf9f364)
  • DAB+ and DRM: HE-AAC v2 stations no longer sound robotic (e81a4db)
  • DAB+ plays services whose superframes end in zero padding, and DAB decodes with less than half the CPU (d4a64ca)
  • Faster FIR filters and DDC, with half-band stages and 100 dB rejection beyond half the output rate. FFTs of sizes that aren't powers of two run two to four times faster on ARM (1f4ebb8)
  • Desktop: window has its close, minimize and zoom buttons again and no longer reopens dead tabs after a crash (222e818)
  • Digital voice: a call's first burst decodes at any symbol timing, so DMR headers no longer drop (532be34)
  • Digital voice decodes bursts about 2 dB weaker and keeps decoding GMSK and MSK under twice the carrier offset (496420b)
  • Digital voice keeps decoding when the noise floor rises during a call (496420b)
  • DMR decodes data blocks and embedded link control with soft decisions and reports a lost embedded fragment (f84c535)
  • A network bind without a token generates one, keeps it beside the database and logs a sign-in link, so Docker Compose starts with no setup. --no-auth runs it open on purpose (1f9ef9f)
  • Docker image shows its real version instead of 0.0.0 (b317e51)
  • Event outputs survive a huge Retry-After, and a feed changed on the same address keeps listening (d00f9c1)
  • Faster FFTs on AMD CPUs (7366fa4)
  • Faster FFTs on ARM, in WebAssembly and on AMD CPUs (3f88c7a)
  • Faster startup: map, faces and tools load on demand (d00f9c1)
  • IF filter edits reach a running channel, and the spectrum shows its edges and notches (5bd22d2)
  • IQ recordings, network exports and the time machine survive a lane restart, and mark capture gaps as SigMF segments (d00f9c1)
  • LoRa: 1.5 to 2 dB more sensitive, follows clock drift past 100 ppm, 2 to 3 times faster (cfd19c9)
  • LoRa: SF12 follows a sender clock off by 100 ppm, and senders up to a third of the band off decode (c814682)
  • Plots repaint only on new data and pause off screen (d00f9c1)
  • Plugin template: cargo generate a new decoder plugin from the example (fb8fad7)
  • Plugins: memory capped per instance, compiled builds cached on disk (d00f9c1)
  • Plugins: one clashing or duplicate plugin is refused alone with an error; the rest load (d00f9c1)
  • POCSAG IDEA pages carry the pager's header check: the synth seals it, the decoder drops pages that fail it, and the minute nibble uses the pager's constant instead of the key sum (54762be)
  • Readouts round frequencies to the decoder's precision instead of printing nine decimals (df3e8e9)
  • Rotator: a Winegard Trav'ler no longer misses an elevation move, starts from any console menu, and a Heading setting points a mount not facing north (043a832)
  • Server: the generated token stays out of bug reports, the UI refuses framing, and an open server answers only to loopback and its own names (d00f9c1)
  • .sigmf archive uploads stream to disk instead of memory (d00f9c1)
  • Slider settings wrap to their own row instead of scrolling the popover (551fd44)
  • SoapySDR: LimeSDR no longer fails with "sample rate has not been configured" (b994109)
  • Spectrum Monitor identifies and decodes TETRA and DRM (2a4b5f9)
  • Spectrum Monitor uses a third of the CPU on busy bands, shows lost IQ once and no longer repeats data-only transmissions every 30 s (2a4b5f9)
  • Spectrum: overlapping transforms average up to 64 per frame, batched on the GPU at wide rates (04d18f8)
  • Spectrum stops streaming once nothing reads it (d00f9c1)
  • Stereo FM uses half the CPU (4d89218)
  • The Nix package builds again with CEF 156 (cf9f364)
  • TUN output passes only multicast and its own subnet, a remote Postgres needs TLS unless the URL sets sslmode, iqlink bounds control lines (d00f9c1)
  • Unused output credentials and spools left by a crashed import are cleaned up. (d00f9c1)
  • WFM: the RDS decoder idles on stations without RDS (3ff784f)
  • WiFi 802.11b: 1 to 2 dB more sensitive at every rate (coherent detection, CCK chip matched filter), 11 Mbit/s holds to 200 kHz offset, long CCK frames track clock offset, faster idle (221b23c)
  • WiFi: the 802.11b and g/n receiver needs a third less CPU on a busy band (b74915f)

Container image: docker pull ghcr.io/newspicel/sdrmm:2.4.4

What's Changed

  • Bump mfsk-core from 0.14.0 to 0.15.1 by @dependabot[bot] in #180
  • Bump the cargo-minor group across 2 directories with 4 updates by @dependabot[bot] in #179
  • Bump the npm-minor group across 2 directories with 14 updates by @dependabot[bot] in #178
  • Bump the actions group across 2 directories with 2 updates by @dependabot[bot] in #177
  • Aaronia SPECTRAN V6 and V6 ECO through the RTSA API by @Newspicel in #186

Full Changelog: v2.4.3...v2.4.4

Don't miss a new sdrmm release

NewReleases is sending notifications on new releases.