Newspicel/sdrmm

Public

modular, client–server software-defined radio

  • Stars315+22 tuần này
  • Forks24
  • Watchers10
  • Issues2
  • Ngày tạo09/08/2026
  • Cập nhật gần nhất15/10/2026
  • Ngôn ngữRust
  • Giấy phépAGPL-3.0
README.md12.2 KBRaw

SDR-- logo

SDR--

A software-defined radio application for listening, decoding, and recording. Connect radios, channels, and displays in Patch view, then pin your everyday controls to Rack view.

Run the desktop app with a local SDR, or place the server near your antenna and connect through a browser. Both use the same receiver engine and interface.

A receiver patch with three channels, a speaker, recording, and network IQ output

Install

Download a desktop installer or portable server from GitHub Releases. The installation guide covers macOS, Windows, Linux, Homebrew, WinGet, APT, DNF, AUR, Nix, and Docker.

On macOS:

brew tap newspicel/tap
brew install --cask sdrminusminus

For a headless server on macOS or Linux, install sdrmm from the same tap:

brew install sdrmm
brew services start sdrmm

Open http://localhost:8080. For remote access, configure authentication and HTTPS.

Start with an RTL-SDR

  1. Plug in the RTL-SDR and pick it on the Device node. Set the rate to 2.4 MS/s.
  2. Add a WFM channel from + Node and set it to a local FM station.
  3. Wire Device iq to WFM iq, and WFM audio to the Speaker.
  4. Start the Speaker. Press p on a node to pin it to the Rack.

Your first receiver walks through it. Radios covers other hardware.

What it supports

  • Listening: AM, NFM, broadcast FM with stereo and RDS, SSB, and digital voice.
  • Decoding: aircraft, ships, amateur radio, pagers, sensors, images, and more.
  • Displays: spectrum, waterfalls, maps, decoded messages, and video.
  • Recording: device IQ, channel baseband, and audio, with SigMF playback.
  • Radio tools: scanning, signal identification, coherent arrays, direction finding, and passive radar.
  • Automation: REST, WebSocket, MCP, network IQ export, and event forwarding.

SDR-- is under active development. The decoder catalog shows how well each mode is tested.

Screenshots

These captures use debug-build signal sources and repository IQ fixtures. Regenerate them with cargo xtask screenshots.

Spectrum and waterfall Rack view
Spectrum with the tuned channel marked Three receivers in the rack
FT8 decoding Signal identification
Decoded messages from a recorded 20 m FT8 slot Signal measurements and candidate protocols
Aircraft positions Ship positions
ADS-B aircraft and decoder log AIS position in Hamburg harbour
Slow-scan television Amateur television
Robot 36 SSTV picture 625-line ATV test image
Pager messages Broadcast FM
POCSAG messages with webhook output RDS station name, text, and alternate frequencies

Build and contribute

git clone https://github.com/Newspicel/sdrminusminus.git
cd sdrminusminus
python3 scripts/build-media.py
export FFMPEG_DIR="$(python3 scripts/build-media.py --print-prefix)"
pnpm --dir web install --frozen-lockfile
pnpm --dir web build
cargo run -p sdrmm

Open http://localhost:8080, or run cargo xtask dev --watch and open http://localhost:5173 for hot reload. cargo xtask check and cargo xtask test are the main gates.

The build guide lists prerequisites and every check. Read Contributing and the architecture before a pull request.

Documentation and API

License

Copyright (C) 2026 Julian Haag.

Licensed under the GNU General Public License, version 3 or later. Third-party notices and license texts are also available in the app's About panel.

Nội dung README thuộc về Newspicel và cộng đồng đóng góp, giấy phép AGPL-3.0. Nguồn: github.com/Newspicel/sdrmm