Tagged: direction finding

SignalsEverywhere: Driving around with KerberosSDR and Locating a P25 Transmitter

On this weeks episode of SignalsEverywhere, host Corrosive tests out our KerberosSDR coherent RTL-SDR unit for radio direction finding. If you didn't already know KerberosSDR is our experimental 4x Coherent RTL-SDR product. With it, coherent applications like radio direction finding (RDF) and passive radar are possible. Together with the KerberosSDR direction finding Android app it is possible to visualize the direction finding data produced by a KerberosSDR running on a Pi3/Tinkerboard.

In the video Corrosive uses the KerberosSDR together with the recently updated companion Android app to determine the location of a P25 control channel. By driving around with the app constantly collecting data he's able to pinpoint the location within about 15 minutes.

If this interests you, we also have some more driving demo videos available here.

Direction Finding With Kerberos SDR

In addition to his video, Corrosive has also created a very useful calculator that can be used to calculate the required antenna spacing for a circular or linear direction finding array that can be used with the KerberosSDR.

KerberosSDR App Update: Heatmap + Precise TX Localizing & Turn by Turn Navigation Demo Videos

We have just released an updated version of the KerberosSDR Android direction finding app. If you didn't already know KerberosSDR is our experimental 4x Coherent RTL-SDR product. With it, coherent applications like radio direction finding (RDF) and passive radar are possible. Together with the KerberosSDR direction finding Android app it is possible to visualize the direction finding data produced by a KerberosSDR running on a Pi3/Tinkerboard.

The KerberosSDR hardware is currently in preorder status on Indiegogo for the second production batch, and we expect it to be ready to ship out this month. If you preorder then you'll be able to purchase a KerberosSDR at a reduced price of USD$130. After shipping for batch two begins the price will rise to USD$150.

The new version of the KerberosSDR Android app adds the following features:

  1. Heatmap Grid Plotting
  2. Precise TX location pinpointing when enough data points are gathered
  3. Turn by turn navigation to the RDF bearing direction / TX location
  4. Bearing moving average smoothing

To understand what these features are, we've released two demo videos showing them in action. In the first video we use the new features to find an 858 MHz TETRA transmitter, and in the second video we find a 415 MHz DMR transmitter. The first video explains the new features so we recommend watching that first.

KerberosSDR Radio Direction Finding: Heatmap + Auto Navigation to Transmitter Location Demo 1

KerberosSDR Radio Direction Finding: Heatmap + Auto Navigation to Transmitter Location Demo 2

Upcoming KerberosSDR Software Updates: Automatically Estimate TX Location and Navigate There

KerberosSDR is our 4x Coherent RTL-SDR that we've developed together with Othernet. It can be used for tasks such as direction finding and passive radar. KerberosSDR was successfully crowdfunded over on Indiegogo, and the first batch has already been shipped. Currently we are taking discounted pre-orders for a second production batch on Indiegogo. Please note that the discounted pricing will expire when we ship, which according to the manufacturing schedule should be next month, so please get in quick if you're interested!

If you'd like to back the KerberosSDR project and purchase a unit, please see our Indiegogo page.

Below are some recent updates to the project:

Android App Software Improvements

The Android App allows a KerberosSDR user to drive around in a car, collecting angle of arrival data for a signal. Driving around and collecting multiple data points solves the multipath issue. In a single location it is possible for a signal's direction of arrival to be skewed or incorrect as it can bounce off multiple surfaces and appear to be arriving from a wrong direction. If we collect data from many locations, we can average out the multipath.

We've recently been working on improvements to the direction finding capabilities of the KerberosSDR, and in particular to our free Android App which records and plots data from the KerberosSDR server. We are still testing and finalizing these new features, but hope to release the updated app before the end of this month.

Recently added features to the app include:

  • Added the ability to determine the estimated location of a transmitter, providing there has been sufficient data collected.
  • Added a heatmap grid of the collected data which can be used to determine where most angle lines cross. Can take into account RF power data too.
  • Added the ability for the software to automatically navigate you to the estimated TX location via MapBox GPS turn by turn navigation.

Bellow are screenshots showing some of the new features. In this experiment we located an 858 MHz TETRA transmit tower. Initially the app will navigate you to the edge of the grid, in the direction that most DoA lines are pointing to. When there is sufficient data to be able to confidently pinpoint the TX location, it will begin navigating you to the estimated location. In the screenshots the placemarker represents the known location of the transmitter, and the circles indicate the location estimated from direction finding.

Below is screenshots from a 415 MHz DMR tower that we located with KerberosSDR. The antenna array was purposely kept small, with a diameter of only 12cm. Even with the small antenna array we were able to pinpoint the transmitter down to about 100 - 200 meters.

The app should also now be able to handle intermittent signals, via a squelch filtering function, although this has not been fully tested yet.

In order to navigate you must have a 3G/4G data plan on your phone, and your phone must have the ability to create a WiFi hotspot. The KerberosSDR server running on a Pi 3 or similar will then automatically connect to a WiFi hotspot named "KerberosSDR" running on your phone and provide data to the app via WiFi.

Batch 2 Manufacturing Updates

Batch 2 production is in full swing, and at the moment we're expecting completion by mid August. This batch will ship directly from China, so we should be able to ship them off fairly quickly rather than needing to first wait for them to arrive in the USA.

Magnetic Whip Antennas

We have been disappointed that it has been difficult to find low cost but good quality magnetic whip antennas to use with KerberosSDR and vehicles. The quality of antennas used in direction finding equipment can matter, as any signals leaking into the coax, or radiation pattern skew can affect results. We are working on sourcing some high quality magnetic whip antennas that have good ground coupling. These will be sold at a reasonable price on our store.

Future Updates

We are still working on improving the server software further too and future updates will include things like the ability to notch out unwanted signals during phase calibration, a simplified DoA set up wizard, an improved buffering scheme so that additional data and processing gain can be applied, and more.

The Raspberry Pi 4 looks to be an excellent candidate to be used with the KerberosSDR. We will begin releasing ready to use images for the Pi 4 in the future.


Every sale of a KerberosSDR helps fund further developments to the software and possible future iterations of the hardware. So we'd like to thank all backers once again!

LimeSDR Angle of Arrival Experiments at 145 MHz

Two J-Poles used in LimeSDR Angle of Arrival Experiments.
Two J-Poles used in LimeSDR Angle of Arrival Experiments.

Together with some Spanish amateur radio operators, Daniel Estevez performed an experiment with the goal of detecting the angle of arrival of meteor reflections coming from the GRAVES radar at 143.05 MHz.

The GRAVES radar at 143.05 MHz is often used by amateur radio astronomers as a way to detect the echos of meteors entering the atmosphere. The basic idea is that meteors leave behind a trail of ionized air which is reflective to RF energy. This RF reflective air can reflect the signal from the powerful GRAVES space radar in France, allowing the radar signal to be briefly received from far away. Detecting the angle of arrival from these reflections could help determine where the meteor entered the atmosphere.

Their experiments used a pair of J-Pole antennas and a LimeSDR receiver. The LimeSDR has two channels and can receive the signal coherently from both channels. The phase difference in the received signals from the two antennas can then be measured, and the angle of arrival calculated.

In their testing the first tested with 145 MHz amateur radio satellites. Unfortunately due to the low elevation of the antennas and multipath from terrain obstructions an angle could not be calculated. In a second experiment they tried receiving terrestrial APRS signals. With APRS they were successful and were able to determine the angle of arrival from multiple stations. Unfortunately for GRAVES meteor echoes they were not entirely successful, citing multipath issues due to houses, and the need for a clear view of the horizon.

We note that it may be possible to perform similar experiments with our KerberosSDR coherent RTL-SDR unit.

KerberosSDR Direction Finding with Android App Demo and Tutorial

Over on our YouTube channel we've uploaded a short video that gives a tutorial and demo of the KerberosSDR being used as an RF direction finding system in a car. If you weren't aware, KerberosSDR is our recently released 4x Coherent RTL-SDR which can be used for tasks such as direction finding and passive radar. KerberosSDR was successfully crowdfunded over on Indiegogo, and we have recently completed shipments to all backers. Currently we are taking discounted pre-orders for a second production batch on Indiegogo.

In the video we use a Raspberry Pi 3 B+ running the KerberosSDR image as the computing hardware. The Pi 3 is connected to a high capacity battery pack. It is important to use a high quality battery pack that can output 3A continuously as this is required for the Raspberry Pi 3 B+ to run without  throttling. The battery pack we used has multiple outputs so we also power the KerberosSDR with it.

Once powered up we connect to the KerberosPi WiFi hotspot, and then browse to the web interface page. We then tune the KerberosSDR to a TETRA signal at 858 MHz, perform sample and phase calibration, set the decimation and FIR filtering, and then enable the direction finding algorithm. At this point we enter the Android app and begin direction finding and logging our data.

After driving for a few minutes we stop and check the logfile and find that the majority of the bearing lines point in one direction. With this info, a drive in the direction of the bearing points to gather more data is performed. Once additional data was gathered we open the log file up again, and see where all the bearing lines cross. Where they cross indicates the location of the 858 MHz transmitter. The heatmap data also gives us a second confirmation that the transmitter is located where we think.

NOTE: Some of the features shown in the video like the heatmap, confidence settings and plot length settings are not yet released in the current version of the app. They will be released next week.

Full instruction on using the KerberosSDR are available at rtl-sdr.com/ksdr.

KerberosSDR Direction Finding With Android App Demo and Tutorial

KerberosSDR Batch One End of Stock, Batch Two Preorders Available

If you weren't aware, KerberosSDR is our recently released 4x Coherent RTL-SDR which can be used for tasks such as direction finding and passive radar. KerberosSDR was successfully crowdfunded over on Indiegogo, and we have recently completed shipments to all backers. Currently there is only about 20 units of the batch one production left in stock.

We are currently offering discounted preorders for batch two units on Indiegogo which we expect will be ready to ship in July or hopefully earlier. If you are interested, please order soon to avoid missing out as the price will be raised again once we are shipping. Batch two will be the same as batch one except for some minor changes. For example we have decided to convert the microUSB port into a USB-C port as we have found that there are many very poor quality microUSB cables on the market which could cause issues for users. USB-C cables are generally of a higher quality.

More information about KerberosSDR is available on the Indiegogo page.

KerberosSDR Updates

Since our last post on this blog about KerberosSDR we have made some enhancements to the software.

  • The KerberosSDR code is now fast enough to run at 1-2 Hz update rates for direction finding and passive radar on a Raspberry Pi 3 B+.
  • There is now a web interface, so the KerberosSDR can be controlled via a WiFi hotspot and internet browser. Useful for use on the Pi 3 and Tinkerboard.

For future updates we are currently working on several new features:

  • Filters to remove low confidence DoA results on the Android app.
  • A secondary heatmap type display on the Android app based on signal strength, for two direction finding indications.
  • Methods to determine the center of multiple bearing intersection points.
  • Further enhancements to processing speed, possible improved results from processing gain and possible better accuracy from improved DoA algorithms.

Within the next few weeks we will also release full tutorial videos that will show how to set up and use the KerberosSDR for direction finding and passive radar with a Raspberry Pi 3 or Tinkerboard. If you prefer a text based explanation we already have a guide up at rtl-sdr.com/ksdr.

Below is an image that demonstrates the KerberosSDR direction finding Android app. A user of KerberosSDR has also submitted two of his own screenshots that show that he was able to determine the location of a GSM transmitter with a linear antenna array.

KerberosSDR Direction Finding Results
KerberosSDR Direction Finding Results. Multiple data points collected during a drive, with bearings pointing towards the TX tower (red marker). Circular array of whip antennas used at freq. 858 MHz.

KerberosSDR Updates: Demo Software Speed Improvements, Android App, Manufacturing Updates

If you weren't already aware, over the past few months we've been working with the engineering team at Othernet.is to create a 4x Coherent RTL-SDR that we're calling KerberosSDR. A coherent RTL-SDR allows you to perform interesting experiments such as RF direction finding, passive radar and beam forming. In conjunction with developer Tamas Peto, we have also had developed open source demo software for the board, which allows you to test direction finding and passive radar. The open source software also provides a good DSP base for extension.

If you're interested and missed out in the early campaign, don't worry we still have about 250 units left from this batch for sale at a price of $140 + shipping over on our Indiegogo Campaign.

Demo Program Updates

Over the past few weeks we've been working on a few code speed improvements to the demo software, and we now believe that it should be fast enough to run on a Pi 3 B+ at decent update rates.  In particular the passive radar display frame rate has been improved and we're able to get about 1 FPS on a Tinkerboard now.

We will soon release the full code, but for now you can see the main two libraries developed by Tamas' that are used in the KerberosSDR code. These libraries contain the direction finding and passive radar processing algorithms.

pyAPRIL - Python Advanced Passive Radar Library. Available on PyPi and GitHub

pyArgus - Python Beamforming and Direction Finding Algorithms. Available on PyPi and GitHub.

Android Direction Finding Companion App Updates

Over the holidays we've been working on a simple companion Android app for the direction finding feature. Using the GPS and/or compass sensors on the Android phone, and the transmitter bearing given by the KerberosSDR we can plot a bearing towards the transmitter that we are tuned to.

The phone connects to a laptop/SBC WiFi hotspot running the KerberosSDR Linux software, and reads the bearing via a simple php HTML server.

Driving around with the KerberosSDR gives better results than when stationary as we can take multiple readings at different points which helps to average out multipath distortions.

In the image below we used a linear antenna array of four dipoles attached to the windscreen of a car. KerberosSDR was tuned to a TETRA transmitter at 858 MHz.

We drove down a street and then back up it. The red lines indicate the direction of the car as determined by GPS, the blue lines indicate the forward direction towards the transmitter, and the green lines the reverse direction. (a linear antenna array won't know if the transmitter is in front or behind it). 

You can see that the majority of blue/green lines point towards the TETRA transmitter which we've marked with a red location marker at the known location.

KerberosSDR Results from a Linear Antenna Array of Dipoles
KerberosSDR Results from a Linear Antenna Array of Dipoles

Getting a bearing from GPS requires that you are moving. However if you are stationary it is also possible to use the compass sensor in the Android app, but Android compass sensors are not particularly accurate.

We also tested the app with a circular array of antennas and found it to work well too. A circular array has the benefit over a linear array of providing only one direction towards the detected signal, but may be more susceptible to multipath issues. In our test the circular array was simply four magnetic whips placed on top of a car.

KerberosSDR using Whip Antennas in a Circular Array on a Vehicle
KerberosSDR using Whip Antennas in a Circular Array on a Vehicle

This time we then drove around for a longer time while logging the data in the Android app. We can see that the majority of blue lines point towards the known transmitter location. Blue lines pointing away from the transmitter may be due to multipath or a briefly incorrect GPS heading (e.g. during a turn). Sometimes reflections or refractions of the signal can be more likely to be picked up if the direct path to the transmitter is really blocked. However if you have enough data points from driving around, it becomes much more clear where the actual transmitter is. 

KerberosSDR Results from the Circular Array
KerberosSDR Results from the Circular Array

Manufacturing Updates

We now have some pictures of the boards being manufactured at the factory. Unfortunately we are behind our initial shipping target of mid-Jan due to the previous unexpected payment delays from Indiegogo, and because of this we may hit the Chinese New Year holidays which could delay us further as factories take a 2 week holiday starting late Jan. We're really hoping to have them shipped off just before then, but we don't know if we can beat the clock. I know some of you are anxious to get started with KerberosSDR, and so I do apologize for the delay.

KerberosSDR in it's metal case (no screen printing yet)
KerberosSDR in it's metal case (no screen printing yet)


An Overview on RF Direction Finding with RTL-SDRs

Thanks to K2GOG of the Hudson Valley Digital Network for writing in a sharing with us his latest blog post which is a useful overview of some direction finding techniques that can be used with RTL-SDR dongles. RF direction finding is the act of using a radio to determine the physical location of a signal.

In his post K2GOG mentions our successfully crowd funded KerberosSDR which will be shipping in January next year. KerberosSDR is our 4x coherent RTL-SDR, and one possible application is to use it as a four antenna phase coherent direction finder. K2GOG explains the phase coherent concept in his post quite elegantly.

While looking over KerberosSDR, K2GOG was also reminded of another direction finding technique called heat mapping which can be performed with a single RTL-SDR. This process involves driving around with an RTL-SDR and GPS logger, measuring the signal power as you drive and combining it the current GPS coordinates. From that data a heat map can be generated, which shows where the signal is the strongest, and therefore where the likely source is. The RTLSDR Scanner application by eartoearoak makes doing this easy, and in his post K2GOG provide a short tutorial on setting it up.

A heatmap generated by K2GOG with an RTL-SDR, GPS and RTLSDR Scanner.
A heatmap generated by K2GOG with an RTL-SDR, GPS and RTLSDR Scanner.