deniz.in

Markets

Weather

Loading weather

· via Hacker News – Front Page (native)

GNU Radio compiled to WebAssembly runs full SDR flowgraphs in the browser

A browser build of GNU Radio compiles the DSP framework and its Qt GUI sinks to WebAssembly, letting users build and run SDR flowgraphs with live spectrum and waterfall views without installing anything.

GNU Radio compiled to WebAssembly runs full SDR flowgraphs in the browser

GNU Radio, the open-source toolkit at the heart of much of the software-defined radio world, can now run entirely in a browser tab. According to the project's website, which surfaced on the front page of Hacker News, the full GNU Radio DSP stack — including the Qt-based GUI sinks — has been compiled to WebAssembly and paired with a GNU Radio Companion-style flowgraph editor and runtime.

An editor and runtime in one tab

The site describes the familiar block-based workflow: assemble a flowgraph from DSP blocks, press Run, and watch live spectrum, waterfall and constellation plots update as the signal flows through. Because the processing happens in WebAssembly inside the page, there is no Python runtime to configure, no server doing the heavy lifting, and nothing to install — the tab is the whole environment.

That is a real departure from how GNU Radio normally reaches users. The native framework leans on a Python installation for GNU Radio Companion plus a compiled C++ core, and first-time setup is famously where many newcomers stall.

Compatible with desktop flowgraphs

The browser version reads and writes the same .grc files as native GNU Radio, so a flowgraph built in a tab can be opened in a desktop install and vice versa. The project also ships example flowgraphs and bundled IQ recordings, meaning visitors can experiment with recorded signals before owning any SDR hardware at all.

Live hardware over WebUSB

For real signals, the runtime can talk to an RTL-SDR, a PlutoSDR or a HackRF directly over WebUSB, according to the project. That opens the door to live RF capture without vendor tools or drivers, although WebUSB availability varies between browsers, so hardware use will depend on the browser being used.

Why it matters

GNU Radio's power has always been matched by its setup cost: toolchains, Python environments, OS-specific packaging and hardware drivers. Compiling the stack to WebAssembly collapses that cost to opening a URL, which matters most in education and workshops — an instructor can point students at a page with a prebuilt flowgraph and sample recordings instead of debugging installs across a room of laptops.

The .grc compatibility is the strategically important detail. It makes the browser an on-ramp rather than a walled garden: learners can graduate from a tab to the full native toolkit without leaving their work behind.

It is also a signal about WebAssembly itself. Keeping live spectrum and waterfall displays running implies continuous FFTs and DSP blocks keeping pace with a sample stream, a far heavier workload than the typical command-line tool ported to WASM. If a framework as large and hardware-adjacent as GNU Radio can ship this way, the browser starts to look like a credible distribution channel for scientific software in general.

The native install is not going away — developers pushing high sample rates or unusual hardware will still want it — but as a zero-friction first encounter with SDR, a browser tab is hard to beat.

  • #gnu-radio
  • #sdr
  • #webassembly
  • #dsp
  • #browser
  • #open-source

Related posts