Category: Applications

Look4Sat: An Android App for Tracking and Predicting Amateur Radio and Weather Satellite Passes

Thank you to Arty Bishop for submitting news about his recently released Android App called Look4Sat. Look4Sat is a satellite tracker and pass predictor with a focus on amateur radio and weather satellites. The app is free, ad free, and open source on GitHub.  Arty writes that he's programmed this as a learning exercise and notes:

I always wanted to have an offline and not bloated satellite tracker on my phone, as carrying the laptop at all times is kinda not too handy.

The app uses predict4java library under the hood and is written in Kotlin. The TLE files are from Celestrak and the transmitters info is from SatNOGS and once they are  ownloaded the app doesn't need an internet connection.

The app creation and design is hugely inspired by Gpredict which is an absolutely brilliant piece of software. Thank you, Alexandru!

Obviously there is no ads and it's totally free. Hope more people find Look4Sat useful.

The features include:

  • Calculating satellite passes for up to one week (168 hours)
  • Calculating passes for the current or manually entered location
  • Showing the list of currently active and upcoming satellite passes
  • Showing the active pass progress, polar trajectory and transceivers info
  • Showing the satellite positional data, footprint and ground track on a map
  • Offline first: pass prediction is done offline. It's up to you to decide when
    to update the TLE file and the transceivers DB. (Updates once a week are recommended)
Look4Sat Android App Screenshots
Look4Sat Android App Screenshots

Shazam Style Automatic Signal Identification via the Sigidwiki Database

Thank you to José Carlos Rueda for submitting news about his work on converting a "Shazam"-like Python program made originally for song identification into a program that can be used to automatically identify radio signals based on their demodulated audio sounds. Shazam is a popular app for smartphones that can pull up the name of any song playing within seconds via the microphone. It works by using audio fingerprinting algorithms and a database of stored song fingerprints.

Using similar algorithm to Shazam, programmer Joseph Balikuddembe created an open source program called "audio_recogition_system" [sic] which was designed for creating your own audio fingerprint databases out of any mp3 files.

José then had the clever idea to take the database of signal sounds from sigidwiki.com, and create an identification database of signal sounds for audio_recogition_system. He writes that from his database the program can now identify up to 350 known signals from the sigidwiki database. His page contains the installation instructions and a link to download his premade database. The software can identify via audio that is input from the PC microphone/virtual audio cable or from a file.

Fingerprinted Audio Samples of Radio Signals
Fingerprinted Audio Samples of Radio Signals

A FM Radio Passive Radar System from Two RTL-SDR Dongles

Over on his blog, Max Manning has posted about his senior year design project which was an RTL-SDR based passive radar system that he created with his project partner Derek Capone. Max's writeup explains what passive radar is, and how the theory works in a very easy to understand way, utilizing graphs and short animations to help with the understanding. The rest of the post then goes into some deeper math, which is also fully explained.

Passive Radar works by using already existing powerful transmitters such as those for TV/FM. A receiver listens for these signals being reflected off of objects like aircraft and vehicles, and compares the reflection with a signal received directly from the transmitter. From this information a speed/range graph of detected objects can be calculated

For hardware, the team used two RTL-SDR dongles with the local oscillators connected together. A standard dipole is used as the reference antenna, and a 5-element Yagi is used as the surveillance antenna.

Max's post is a great read for those trying to understand how to do passive radar with a KerberosSDR which is our 4x coherent input RTL-SDR unit available from the Othernet store or Hacker warehouse. Being a radio capable of coherency, it is useful for applications like passive radar and direction finding. 

Their code is all open source and available on GitHub. We note that their code should also work with KerberosSDR with only either zero to minor modifications required. However, for the KerberosSDR we also have our own passive radar code available which might be a little easier to setup via the GUI.

Passive Radar with Two RTL-SDR dongles sharing a single clock.
Passive Radar with Two RTL-SDR dongles sharing a single clock.

Decoding NavTex with an SDRplay RSPDx, SDRUno and YanD

Over on YouTube TechMinds has uploaded a new video explaining NavTex and showing how to decode it with an HF capable SDR like the SDRplay RSPDx. NavTex is a marine digital data radio service designed for transmitting information like navigational and meteorological warnings, weather forecasts and maritime safety information. It is broadcast in either the MW frequency band at 490 kHz and 518 kHz or in the HF band at 4209.5 kHz.

In the video TechMinds uses a guide put out by Mike Ladd from SDRplay (pdf warning). The guide explains how to connect SDRuno to a NavTex decoder called YanD via a virtual audio cable. The rest of the video shows a NavTex message being decoded, some sample messages, and a closer look at YanD. 

Even if you don't use an SDRplay, the guide could be adapted for other SDRs too.

Decoding NavTex with Software Defined Radio - SDRuno RSPdx

A Hydrogen Line Telescope Made from Cereal Boxes and an RTL-SDR

SpaceAustralia.com have recently been hosting a community science project that involves encouraging teams to build backyard radio telescopes that can detect the arms of our Milky Way Galaxy by receiving the Hydrogen line frequency of 1420 MHz.

This can be achieved at home by building a horn antenna out of cardboard and aluminum foil, and a feed from a tin can. Then the Hydrogen line and galactic plane can be detected by using an RTL-SDR, LNA, and software capable of averaging an FFT spectrum over a long period of time.

While most horn antennas are typically made from four walls, one participant, Vanessa Chapman, has shown that even trash can be used to observe the galaxy. Vanessa's horn antenna is made from multiple cereal boxes lined with aluminum foil and an old tin fuel can. The boxes are held together by some string and propped up by some sticks.

With her cereal box horn antenna combined with an RTL-SDR Blog V3, and an RTL-SDR Blog Wideband LNA, Vanessa was able to use software to average the spectrum over time as the galactic plane passed overhead, revealing the Hydrogen line peak and corresponding doppler shift from the galactic plane.

Vanessa's Hydrogen Line Radio Telescope made from Cereal Boxes
Vanessa's Hydrogen Line Radio Telescope made from Cereal Boxes

If you don't know what the Hydrogen line is, we'll explain it here. Hydrogen atoms randomly emit photons at a wavelength of 21cm (1420.4058 MHz). Normally a single hydrogen atom will only very rarely emit a photon, but space and the galaxy is filled with many hydrogen atoms so the average effect is an observable RF power spike at 1420.4058 MHz. By pointing a radio telescope at the night sky and integrating/averaging the RF power over time, a power spike indicating the hydrogen line can be observed in a frequency spectrum plot. This can be used for some interesting experiments, for example you could measure the size and shape of our galaxy. Thicker areas of the galaxy will have more hydrogen and thus a larger spike, whereas the spike will be significantly smaller when not pointing within the galactic plane. You can also measure the rotational speed of our galaxy by noting the frequency doppler shift.

KerberosSDR 4-Channel RTL-SDR Passive Radar with Peak Hold Display

Recently we've been testing a simple peak hold for the KerberosSDR passive radar display. This results in some nice graphs that show aircraft and vehicle activity over time. 

Passive radar works by using already existing transmitters such as those for HDTV and listening for reflections that bounce off of RF reflective objects. With a two antenna setup, it is possible to generate a bistatic range/doppler speed graph of reflected objects.

With the reference Yagi antenna pointed towards a 600 MHz DVB-T tower, and the surveillance antenna pointed to an airport we were able to obtain the graph below. The top two large traces show aircraft heading towards our station, whereas the bottom traces show aircraft leaving the airport. Also visible are multiple blips with smaller doppler speeds, and these correspond to vehicles.

KerberosSDR Passive Radar Display Peak Hold
KerberosSDR Passive Radar Display Peak Hold

The code on the KerberosSDR git will be updated in a few days time. We are also working on a more comprehensive passive radar tutorial that will try to explain concepts like processing gain, bistatic ranges and other important tips for getting good passive radar results. At the same time we're also working on improving direction finding ease of use by prototyping antenna switches for calibration, and working on getting 4-channel beamformed passive radar working which will allow us to plot passive radar returns on a real map.

The KerberosSDR is our 4-channel phase coherent capable RTL-SDR unit that we previously crowdfunded back in 2018.  With a 4-channel phase coherent RTL-SDR interesting applications like radio direction finding, passive radar and beam forming become possible. It can also be used as 4 separate RTL-SDRs for multichannel monitoring. KerberosSDR is currently available from the Othernet store and Hacker Warehouse for US$149.95.

CyberRadio: A Minimal GPU Accelerated Radio App for Most SDRs

Programmer Luigi F. Cruz has recently released a new SDR app called "CyberRadio". CyberRadio is a minimal SDR app, which allows you to listen to FM and AM radio. It does not have any spectrum analyzer or waterfall display. As it is based on SoapySDR, it supports almost every SDR including the RTL-SDR, and runs on Linux, maxOS Sierra, Windows 10 and ARM SoCs.

Luigi also notes that he has made use of cuSignal and Numba functions which enable GPU acceleration on CUDA compatible graphics cards.

The app is still in pre-release status, so no binaries are available. However, Luigi has provided installation instructions for Linux on the GitHub.

CyberRadio Screenshot
CyberRadio Screenshot

Remote Spectrum Monitoring with OpenWebRX, RTL-SDR and the Balena Cloud Service

Thanks to Alan Boris of Balena.io for submitting their new blog post titled "Running OpenWebRX on balena to remotely monitor local radio spectrum". Balena.io is an IoT cloud service that is used for "building, deploying, and managing fleets of connected Linux devices".

In the blog post, they show how it's possible to use a RTL-SDR and Raspberry Pi running OpenWebRX to remotely monitor the radio spectrum over the internet. This of course has been done many times before, however, the novel thing here is the use of the Balena cloud platform which makes installing and managing the Raspberry Pi running OpenWebRX much easier.

Balena has a has a special balenaOS image that is first burned on the Raspberry Pi's SD card. The OS image is pre-generated with your home WiFi details, so upon boot it automatically connects to the internet and can be accessed on the balenaCloud dashboard. At that point you can easily remotely push the pre-made Balena "sdr-spectrum-monitor" docker image to the Pi from the Balena online dashboard. This docker image has OpenWebRX and the RTL-SDR drivers already installed on it. It's then a simple matter of connecting to OpenWebRX via the local IP address as you would normally.

This is quite a nice system as it avoids needing to perform the "fiddly" steps of setting up WiFi, connecting to the Pi, determining the Pi's IP address, and installing the RTL-SDR drivers and OpenWebRX software manually.

Balena also has a very simple way to make the OpenWebRX server accessible from outside your network. The only steps required are to set a port variable in the Balena cloud dashboard, and enable the "public device URL" option. No need to fiddle around with unblocking ports or dynamic DNS services.

Balena.io appears to be free for personal use, allowing you to add and manage up to 10 devices before needing to pay.

RTL-SDR & OpenWebRX Installed and Managed via Balena Cloud.
RTL-SDR & OpenWebRX Installed and Managed via Balena Cloud.