Category: Applications

dec406: Decoding Second-Generation COSPAS-SARSAT 406 MHz Distress Beacons with an RTL-SDR

Thank you to Fabrice Morel (F4MLV) for writing in and sharing his project 'dec406', an open-source Linux decoder for COSPAS-SARSAT 406 MHz distress beacons. These are the EPIRBs carried on ships, ELTs on aircraft, and personal locator beacons (PLBs) carried by hikers. When activated, they transmit a digital message with a unique ID and often a GPS position, which satellites relay to rescue coordination centers.

What makes dec406 interesting is that it decodes the newer second-generation beacons. Unlike the narrowband first-generation signal, these use a ~50 kHz wide DSSS/OQPSK spread-spectrum signal that must be despread and BCH error-corrected before it can be read. Fabrice tested it with an RTL-SDR, and Bernard (F6BVP) at the F4KLO La Villette radio telescope used an Airspy on the MEOSAR satellite downlink near 1544 MHz, decoding system and calibration beacons in the USA, Cyprus, Brazil and Togo.

Fabrice has published real IQ recordings, and running 'make demo-real-sgb' downloads one and checks the decode. The live scanner supports RTL-SDR, Airspy, PlutoSDR, and HackRF, and the code is MIT licensed. More details are in the F4KLO field report. As Fabrice notes, never radiate test transmissions on 406 MHz. Fabrice has also sent us a PDF article of his results, which you can download here.

A Wide SGB Burst Near 406.05 MHz Received with an RTL-SDR in SDRangel (Top), dec406 Decoding a French Second-Generation System Beacon in Self-Test Mode (Bottom)
A Wide SGB Burst Near 406.05 MHz Received with an RTL-SDR in SDRangel (Top), dec406 Decoding a French Second-Generation System Beacon in Self-Test Mode (Bottom)

AI Disclaimer: While Fabrice does not mention it, the dec406 README and .gitignore reference a "Claude assistant memory" CLAUDE.md file, which suggests that Claude was used to help develop the software.

NightDX: Automated Overnight Shortwave DX Listening with an Airspy HF+

Thank you to Marco Zennaro for writing in and sharing NightDX, a free terminal app for macOS, Windows and Linux that lets an Airspy HF+ do your overnight shortwave listening for you. The menu interface is deliberately styled like early-90s DOS software.

NightDX pulls the EiBi, AOKI and HFCC broadcast schedules, plus live solar flux and Kp from NOAA. A propagation model then predicts what should reach your location and calibrates itself against what your own radio hears. The HF+ sweeps all the bands in about 10 seconds to see which carriers are really there, and overnight NightDX records the best stations, putting ones you've never logged first.

Optional AI features can then label each recording as speech, music, or noise using an AudioSet classifier, and transcribe and translate it with OpenAI's Whisper, which helps when writing reception reports. In the morning, a browser report shows the recordings with audio players, one-click reception reports drafted in Gmail, and a QSL card log.

We note that NightDX doesn't claim to identify stations. It shows schedule names as candidates and flags recordings where the evidence doesn't fit, such as the wrong language or a signal far too strong for the predicted path. Only the Airspy HF+ (Discovery or Dual Port) is supported for now, so there is no RTL-SDR support. Marco notes that other SDRs such as the Perseus and Elad are being looked into. The code is open-source under the MIT license and available on GitHub.

NightDX Screenshots
NightDX Screenshots

AI Disclaimer: Marco notes that NightDX was built with the help of Claude.

SweepSA: A Fast Swept Spectrum Analyzer for Pluto-Style AD936x SDRs and the HackRF

Thank you to zxkmm, one of the maintainers of PortaPack Mayhem, for writing in and sharing their new program 'SweepSA', a swept spectrum analyzer for Pluto-style AD936x SDRs such as the AntSDR E310 and LibreSDR. It also supports the HackRF One and HackRF Pro, and is designed to feel more like a bench instrument than an SDR receiver app.

One of SweepSA's core features is speed. It uses the AD936x's little-used 'fastlock' feature, which stores synthesizer profiles that can be recalled almost instantly with a full LO retune. The hop, capture, FFT, and detection all run on the board's ARM CPU, so only the reduced spectrum is sent to the PC, which avoids the slow USB or network round trip on every hop. zxkmm reports sweeps of about 10 - 60 ms over a few hundred MHz, and 500 - 800 ms over the full 70 MHz to 6 GHz range. That's similar to a HackRF One, but with each segment a gapless 40 - 56 MHz wide.

Other features include four traces, eight markers, a waterfall, zero span, and CSV/PNG export. Levels are shown in dBFS with an 'UNCAL' badge until an amplitude correction file is loaded. SweepSA is free for Windows, Linux, and macOS (arm64), with downloads available on GitHub. We note that it is currently closed source, but zxkmm plans to publish the source code later.

SimTX: A Multiplayer Shortwave Radio Simulator with Realistic Propagation and rtl_tcp Support

Recently, we came across SimTX, an open-beta multiplayer shortwave radio simulator. Everyone shares the same simulated band, so whatever one user transmits from their virtual station can be picked up by anyone else, simulated propagation permitting. The website suggests running a pirate station, making your own numbers station, or just tuning around and listening.

For realism, the ionosphere is based on IRI-2020 climatology with live ionosonde data assimilated on top, groundwave and noise follow ITU-R models, and every link passes through a Watterson fading channel with Doppler, multipath and storms. Users can transmit from a mic, an audio file or raw IQ from GNU Radio in modes including AM, SSB, CW, NFM, WFM, WSPR and FT8, and can even launch and track their own satellites.

To receive, the SimTX app runs a local rtl_tcp bridge, so SDR++ or any other rtl_tcp-capable SDR program can tune the simulated band as if it were an RTL-SDR, without any real radio hardware. The app runs on Windows, macOS, and Linux, and accounts are created via Discord. The software does not appear to be open source. The demo video below shows a song broadcast from a simulated Amsterdam and received 1145 km away in Budapest.

This may be useful for playing around with and seeing what different TX/RX variables and propagation effects do to signal reception.

We broadcast a song through a simulated ionosphere

Thermal Noise Communication: Sending Data Without a Carrier Signal, with an RTL-SDR as the Receiver

Thank you to RTL-SDR.COM reader Andrea for writing in and pointing us to a recent Stanford University press release about Zerina Kapetanovic and her team's research on "thermal noise communication", a way to send data wirelessly without generating any RF signal at all.

With this communication method, the transmitter simply switches its antenna between two loads, such as a dummy load and an open circuit, which the receiver sees as slightly "hotter" or "colder" thermal noise that encodes binary data. The study claims that a conventional RF transmitter uses up to 1,000 times more energy, making this a possible alternative to RFID tags and low-power wireless sensors.

Our reader Andrea also pointed out that the receiver in one of Zerina Kapetanovic's earlier experiments on the same topic was built around an RTL-SDR. Back in 2022, Zerina Kapetanovic and her team published a paper (pdf upload) demonstrating the idea at 1.42 GHz. Their receiver was a horn antenna, two LNAs with about 84 dB of combined gain, a bandpass filter, and an RTL-SDR, with processing on a laptop or Raspberry Pi. The transmitter was a simple RF switch connected to an antenna and switched between a 50 Ohm dummy load or ground. They achieved a data rate of up to 26 bps and a range of up to 7.3 m at 5 bps, and built a solar-powered, battery-free transmitter that sent indoor temperature readings over five days.

A new paper (not available freely yet) from Kapetanovic and her team builds on this idea and improves the data rate to the kilobit-per-second range, and adds capacity measurements and error correction, which was a limitation of their earlier experiment. The paper and press release also explain why this idea works at room temperature, making the analogy that the receiver's LNA works as a sort of 'electron refrigerator', slowing down electrons and making them appear colder.

We are unsure if the new setup still uses an RTL-SDR. However, readers who have built a Hydrogen line radio telescope have already built a nearly identical setup to the 2022 paper. In the press release Kapetanovic notes that "We've built a system that others could very easily implement", so this may be an interesting experiment to try for anyone who already has an H-line setup.

The thermal noise receiver setup from the 2022 paper
The thermal noise receiver setup from the 2022 paper

FalconSDR: An Open-Source RTL-SDR Scanner and Recorder with Automatic Whisper Transcription

Thank you to Rafał for writing in and sharing his open-source project FalconSDR, a free scanning and recording program he's been working on over the last few months. Rafał notes that after getting into RTL-SDR listening, he found that popular SDR programs didn't have the scanning and recording features he wanted.

FalconSDR can scan multiple bands or channels, even when they are far apart, with separate settings for each band and a blacklist for skipping birdies and unwanted channels. A "recency boost" feature sends the scanner back to channels with recent activity, and it can record multiple transmissions at once. Recordings go into a searchable library and can optionally be transcribed to text with Whisper. In hybrid mode, a server handles recording and a PC handles transcription.

The interface runs in a browser, either locally or on a headless server, so you can reach it from a PC or phone on your network. RTL-SDRs are supported natively, and Rafał has tested the program for months with an RTL-SDR Blog V4. Other SDRs work via SoapySDR. Linux and Windows 11 have been tested, but the macOS builds are marked as experimental. The code is open source under GPLv3 and available on GitHub.

FalconSDR Screenshots
FalconSDR Screenshots

AI Disclaimer: While the author does not disclose it, the repository includes an AGENTS.md file described as "Guidance for AI coding agents working in this repository", so it is our opinion that this software may be coded with the help of AI.

OrcSDR Update: SSTV, ACARS and Offline Maps Come to the Standalone ESP32-P4 RTL-SDR App

Back in September, we posted about OrcSDR, open-source firmware that runs an RTL-SDR directly on the ESP32-P4 microcontroller-based M5Stack Tab5 tablet, with no PC or Raspberry Pi needed. Erik Elfstrom has now written in again to share that OrcSDR v0.5.0-beta.1 (release notes) is out, with several new features and a lot of stability work.

The main additions are SSTV reception and a dedicated ACARS dashboard. SSTV images are drawn directly on the touchscreen and saved to the SD card, and the ACARS dashboard shows live messages and aircraft lists. Erik has tested SSTV with Robot36, PD120, and Scottie S1 on various RTL-SDR models. Offline maps have also been added to the LoRa/Meshtastic, ADS-B, and FT8 dashboards. There is also a new 'Dead Air' dashboard for logging RF and audio activity, and Erik notes that despite the Halloween timing, it is not a ghost detector.

Erik also notes that a lot of work has gone into fixing layout issues, redraw flicker and memory pressure, and there is now a guided first-run setup. The software is still in beta, and Erik says that not every issue is gone yet. The update can be installed with M5Burner or the browser installer, and the code is open source under AGPL-3.0 and available on GitHub.

Some screenshots of new OrcSDR Features
Some screenshots of new OrcSDR Features

AI Disclaimer: The OrcSDR README notes that the project was created with "extensive AI assistance".

OrbitNight: A Free Browser-Based Satellite Pass Viewer with Antenna Rotator Control via Web Serial

Thank you to the OrbitNight team for writing in and sharing their "OrbitNight satellite radar", a free browser-based pass viewer for any satellite in the catalog. It can also point an antenna rotator straight from the browser over USB using Web Serial, so you don't need to install anything.

The radar page shows a polar plot of the pass track, live azimuth and elevation readouts, and an AOS/LOS countdown. A radio tab lists downlink and uplink frequencies taken from SatNOGS. For rotator control, it supports Yaesu GS-232 compatible controllers (including K3NG and ERC) and EasyComm II controllers like those used on SatNOGS stations connected over USB serial, or Bluetooth on Android. It also has an azimuth offset setting and a 1 degree deadband.

The site works in Chrome and Edge on desktop, and rotator control needs a browser that supports Web Serial. It's free and needs no sign-up. The team notes that there is no 450 degree or flip mode yet, and they'd like to hear from anyone who tries it with a real rotator. If you track LEO satellites with a directional antenna and an RTL-SDR, this could be a simpler option than setting up Gpredict and Hamlib. We note, however, that we couldn't find an open-source codebase.

The OrbitNight Live Tracking Page
The OrbitNight Live Tracking Page