Tagged: rtl2832

LakeShark: P25 Phase 1, FM, POCSAG, ADS-B and Sub-GHz with an RTL-SDR on the LilyGO T-Display P4 (ESP32-P4)

Thank you to Samuel Reynolds (aka SAMS0N1TE on GitHub), for writing in and sharing with us his project called 'LakeShark'. LakeShark is firmware for the LilyGO T-Display P4 (an ESP32-P4-based microcontroller with a 4.1 Inch touchscreen, detachable keyboard, GPS, and nine-axis motion sensor), which allows a USB-connected RTL-SDR Blog V3 or V4 to be used for P25 Phase 1 trunking, FM, POCSAG, ADS-B, and sub-GHz capture. Samuel writes:

LakeShark supports P25 Phase I conventional and trunked voice, analog FM, POCSAG pager decoding and 1090 MHz ADS-B, with a spectrum display and waterfall for tuning around.

There are a few other things that might interest your readers:

  • Passive sub-GHz pulse recording with export to Flipper .sub files, so captures can be transferred to a Flipper and opened in its Sub-GHz app.'
  • Offline maps showing aircraft and MeshCore nodes, plus GPS track recording with GPX export.
  • Mixed P25/FM scan lists and a field journal for saving notes with radio readings, position and sensor data.
  • MeshCore messaging and LoRa experiments using the onboard SX1262. The optional MIX-RF keyboard adds CC1101, nRF24 and NFC tools.

The T-Display-P4 touchscreen works on its own, but you can also use the keyboard or connect a Flipper Zero over Bluetooth. LakeShark also supports a headless ESP32-P4 Nano receiver controlled from the Flipper. That lets you keep the radio and antenna in a bag while tuning from the Flipper.

Version 2.2.0 is available now. Experimental work includes manually tuned P25 Phase II decoding, HackRF support and GPS-based scan filtering. Those have separate limitations documented in the wiki. Next steps include live-RF validation, Phase II automatic call following and further work on portable power and everyday usability.

There’s also an experimental CELL WATCH app for surveying cellular-band activity and comparing it against a saved baseline. It’s meant for spotting changes worth investigating, rather than identifying a cell site as malicious or claiming to detect an IMSI catcher.

LakeShark builds on xtrsdr, OP25 and other open-source projects. ADS-B Scope also provided a reference for part of the aircraft position decoding. Full credits are in the README.

Showcase, photos and overview:
https://terminalbay.com/?m=lakeshark-showcase

Source and credits:
https://github.com/SAMS0N1TE/LakeShark

Version 2.2.0 downloads:
https://github.com/SAMS0N1TE/LakeShark/releases/tag/v2.2.0

Flipper companion app:
https://github.com/SAMS0N1TE/LakeShark-Flipper

Wiki and guides:
https://terminalbay.com/?m=wiki

LakeShark is part of a growing repertoire of ESP32-P4 microcontroller RTL-SDR applications. Just last week we posted about OrcSDR, a standalone RTL-SDR application built around the M5Stack Tab5. Back in May, we also posted about a portable open-source 1090 MHz ADS-B firmware for the LILYGO T-Display-P4.

Previously, RTL-SDR applications have only run on full general-purpose CPUs running an OS like Windows/Linux/MacOS/Android. But the ESP32-P4 has shown that commodity microcontrollers are now powerful enough to run an RTL-SDR too, via custom bare-metal drivers and software.

LakeShark Running on A LilyGO T-Display-P4 next to a HackRF (left) and Flipper Zero (right).
LakeShark running on A LilyGO T-Display-P4 next to a HackRF (left) and a Flipper Zero (right).
LarkShark Screens
LarkShark Screens

Frugal Radio: A Six SDR Setup with KrakenSDR and SDRplay for ADSB, ACARS, VDL2, P25

Over on YouTube, Rob from the 'Frugal Radio' channel has uploaded a video showing his multi-SDR monitoring setup that consists of a KrakenSDR, SDRplay RSP1A, and a cheap 12-year-old computer. The KrakenSDR is a 5-channel coherent SDR based on RTL-SDRs, and when connected to a computer, it appears as five independent RTL-SDRs that you can use for any purpose.

Rob currently uses three out of the five channels on the KrakenSDR to monitor three aviation digital signals: ADS-B, ACARS, and VDL2. The SDRplay is used on the same PC to monitor a 700 MHz P25 digital voice system. Rob uses the ADSB.im Docker image, which lets users feed multiple flight aggregation services, such as ADSBExchange, FlightRadar24, FlightAware, etc., all on one device. 

In the future, Rob hopes to add Inmarsat L-band reception with the spare channels on the KrakenSDR, which will be received by a Discovery Dish.

6 x SDR, 4 x monitor PC decoding ADSB, ACARS, VDL2, P25

SDR–: A Software-Defined Radio Application with Visual Signal Path

Thank you to Julian for writing in and sharing with us his interesting project called SDR-- (SDR minus minus). SDR-- is an open-source app that lets you wire devices, decoders, and displays together on a desktop window or browser-based canvas. It is described as "a software-defined radio application with a visual signal path. Connect devices, decoders, displays, and recorders on a canvas, then pin the controls you use to a rack."

A separate Rust server, which can sit on the same PC or a remote computer (like a Raspberry Pi), handles the DSP. Julian notes that SDR-- has native RTL-SDR support, and decoders for ADS-B, AIS, POCSAG, FT8, SSTV, and RDS are already implemented, with more in progress. The app also has a built-in signal generator and a repository of IQ recordings that can be used for experimentation and testing the various decoders.

The project releases are available on GitHub releases, and they cover Windows, Linux, and MacOS. 

SDR-- Screenshot
SDR-- Screenshot

AVARE ADS-B Receiver for Android Updated

All the way back in 2014, we posted about Avare ADS-B Receiver, which back then was a simple RTL-SDR ADS-B receiver and map for Android devices. The author of this app, TFL, recently wrote in and shared that the app is now a modern, fully featured ADS-B app, having added many new features such as UAT decoding with aviation weather products and NEXRAD weather radar/lightning strikes shown on the map, aircraft pictures, better SDR support, traffic filters, and audio alerts.

ADSB Receiver lets you collect live air traffic data directly on your Android device using any RTL-SDR (RTL2832U) dongle and an OTG cable. No cloud. No fees. Just raw RF decoded in real time.

  • Dual-band reception — 1090 MHz Extended Squitter (ES) for worldwide traffic, and 978 MHz UAT for US general aviation traffic plus integrated weather products (METAR, TAF, PIREP, SIGMET, AIRMET, WINDS, NOTAM)
  • Live aircraft details — tap any target on the map to pull a live photo alongside aircraft type and registered operator
  • NEXRAD weather imagery — receive official NEXRAD radar images over UAT 978 MHz
  • Network send/receive
    • Forward all received data to any GDL90-capable EFB app (AvareX, ForeFlight, iFlyGPS, DroidEFB, and others)
    • Stream dump1090/dump978 frames to any SDR tool on your network, or ingest from an external source
  • Bias Tee and Gain support — power an external LNA or active antenna, adjust Gain as needed
  • Proximity alerts — configurable range-based traffic warnings with optional callsign filtering; useful for drone pilots monitoring airspace
  • Data logging — save all received data
  • Metric support — instead of imperial values

Webpage: https://hiz.ch/index.php/adsb-receiver-avare-adsb

Play Store Links:

https://play.google.com/store/apps/details?id=bs.Avare.ADSB
https://play.google.com/store/apps/details?id=bs.Avare.ADSB.Pro

AVARE ADS-B Receiver Android App
AVARE ADS-B Receiver Android App

FoxSDR: A From-Scratch Software-Defined Radio Receiver for Windows

Thank you to an anonymous contributor (known only as wonderingStars on GitHub) for writing and sharing their project, 'FoxSDR'. FoxSDR is advertised as a 'software-defined radio receiver written from scratch'. Like most receiver programs, it includes a spectrum and waterfall and various demodulation modes.

Key features include a Windows desktop application and optional browser-based interface, a built-in ADS-B decoder and map, and native support for drivers for the HackRF, Airspy R2/Mini/HF+, RTL-SDR, SDRplay RSPs, Mirics MSi2500, RX888 mk2 and the ALDAMN-Pluto. Being browser-based means that the server can run remotely and be placed close to the antenna to reduce signal losses, and the SDR can be accessed from any networked device. They have also recently added AIS, APRS, SSTV, Morse, RTTY, POCSAG, Inmarsat-C, ACARS, SSTV, NOAA APT, GOES HRIT/LRIT, WEFAX, two-tone paging, EAS/SAME alerts, 406 MHz distress beacons, VOR, ERT utility meters, 433 MHz weather sensors, a satellite pass predictor and map, a band survey engine, and OpenStreetMap map imagery.

The contributor writes that FoxSDR is currently Windows-only; however, they will add full Linux support once the Windows version is completely stable. They note that they are in the final stages of the beta and that, based on telemetry, they have over 100 installs in the last month and a few dozen people using it on any given day. They note that their three-year development plan includes support for all operating systems, including Android.

FoxSDR Interface
FoxSDR Interface

Using a Fruit Fly Brain to Tune an RTL-SDR FM Radio

You may have seen in the news that researchers have recently mapped the brain and nervous system of a fruit fly and digitally simulated it in what they call a 'connectome'. Without additional training, the connectome exhibited fruit fly-like behavior when connected to a virtual body, suggesting that the fruit fly's behavior is encoded in its brain structure.

The fly brain neural network can also be hacked into performing other tasks. Various researchers have already repurposed it for tasks like controlling robots, driving a simulated car, playing virtual games like Beat Saber and Doom, trading crypto, and more. One novel fly brain application related to RTL-SDRs was submitted to us by Nik K (SV1EEX). Nik used the fruit fly connectome to tune an RTL-SDR-based FM radio. Nik writes:

Can the reconstructed nervous system of a fruit fly navigate the FM broadcast band and find a radio station?

I built an open-source experiment to test that question using an RTL-SDR Blog V4 and the published adult male Drosophila melanogaster CNS connectome: 165,122 traced neurons connected by more than 10 million signed neural edges.

The RTL-SDR V4 scans the real 87.5–108 MHz broadcast band and creates a panoramic RF environment. Instead of giving the software a list of stations, I convert that measured spectrum into an egocentric visual scene and present it through the 892 retinotopic optic columns used by the connectome simulation. Activity produced by anatomically identified DNa02 descending neurons moves a virtual receiver left or right along the dial.

The experiment also gives the simulated biomimetic fly a substituted RF “mechanosensory” channel. Spectral shape is mapped to bilateral Johnston’s-organ input, while the 19 kHz stereo pilot and 57 kHz RDS subcarrier stimulate JO-A and JO-B populations. This helps distinguish stations that appear similar in power and occupied bandwidth. These mappings are engineered sensory substitutions; they are not a claim that biological flies can detect radio waves.

In one preliminary run on a panorama recorded with the RTL-SDR Blog V4, the connectome-driven controller started at 97.750 MHz. Without receiving the target frequency directly, it entered the predefined ±100 kHz acquisition region around the hidden 95.200 MHz target after 33 actions and stopped at 95.126973 MHz.

The result is deliberately reported as a single preliminary observation. The repository separates external acquisition from neural DNp09 lock events and includes random, visual-only and direct-peak controllers for controlled comparisons.

I describe the resulting system as a connectome-driven virtual embodied agent operating in an RF-derived sensory environment—effectively, a digital fruit-fly nervous system whose world is the FM spectrum and whose movement consists of tuning a radio.

The complete source code, Windows setup, RTL-SDR V4 compatibility fixes, connectome setup procedure, technical manual, experimental protocol, limitations and acquisition dashboard are available here:

https://github.com/z1000biker/DrosophilarRFsensory

The project builds on the open-source flycoinrh implementation and the published adult male Drosophila CNS connectome.

Fly Brain FM Dial
Fly Brain FM Dial

OpenWXSDR Updates: Decoder Improvements and Sondehub.org Uploads

Back in May, we posted about the release of OpenWXSDR, an open-source Python framework that turns one or more RTL-SDR or Airspy SDRs into a fully automated radiosonde ground station running on a Raspberry Pi 4/5 or Linux x86 machine.

Recently, OpenWXSDR creator Mike (DL2MF) wrote in to share that V1.0.62 has been released, bringing improvements to decoder quality and stability. The update also improves the software's setup and configuration stages and adds a radiosonde statistics page.

Another development is that the sondehub.org aggregation site has verified the OpenWXSDR telemetry data and now allows the upload of DFM06, DFM09, DFM17, M10, M20, RS41, and RS92 radiosonde data to its network via OpenWXSDR.

OpenWXSDR Screenshot
OpenWXSDR Screenshot

GNU Radio World: Browser-Based GNU Radio Flowgraphs

Thank you to Marc Lictman, vice president of GNU Radio, for writing in and sharing with us his new project called "GNU Radio World," which is essentially GNU Radio Companion in a web browser, written in WebAssembly.

If you're not familiar with it, GNU Radio is a very popular free and open-source toolkit for implementing digital signal processing algorithms and applications. It lets you experiment with and build radio receivers, transmitters, and DSP chains through a graphical block-based flowgraph.

Marc Lictman writes:

I thought your readers might be interested in the relatively new website that I put together, https://gnuradioworld.com, as it is starting to have some nice RTL-SDR support, e.g. there is a basic spectrum analyzer and a full ADS-B application with map, but the best part is that it's really just GNU Radio in the browser so you can assemble your own flowgraphs and play around without installing anything, either with live USB SDRs, signal recordings, or simulated signals. It runs entirely client-side and comes with several out-of-free modules (OOTs), including gr-adsb by Matt Hostetter.

The other nice part about GNU Radio World is it comes with dozens of example flowgraphs (see tab on the left) as well as a bunch of example IQ recordings that can be used in place of the typical File Source block, and when you run the flowgraph it streams the IQ to your browser, a lot of the IQ recordings are used in the example flowgraphs to show off various OOTs functionality.

The whole project is free and open source (GPLv3), I think that it will be especially valuable for those learning RF signal processing, and those without a Linux background who want to jump straight into learning GNU Radio. Here are some specific example flowgraphs that may be of interest to RTL-SDR enthusiasts:

If anyone wants to reach out, they can email [email protected] or join the Discord server linked at the top of the site.

We test-drove GNU Radio World with both RTL-SDR Blog V3 and V4 dongles and found it to work well. However, it seems that V4L support has not been added yet. We have forwarded this feedback to Marc, so hopefully it will be supported soon.

GNU Radio World Browser Flow Graph
GNU Radio World Browser Flow Graph
GNU Radio World Running an RTL-SDR Blog V3
GNU Radio World: Running an RTL-SDR Blog V3