If you weren't aware 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 (RDF), passive radar and beam forming become possible. It can also be used as 4 separate RTL-SDRs for multichannel monitoring.
In previous posts we've shown some interesting experiments performed with the KerberosSDR. For example:
We note that V2 of our KerberosSDR demo software is also on the way but a little delayed. We are aiming to release a beta around the end of the year, or early next year at the latest. The new software will have better handling of bursty intermittent signals, and paves the way for new developments coming in 2021 such as combined passive radar direction finding.
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 doppler (speed) vs range graph of detected objects can be calculated and displayed.
By measuring the path an object travels across the range-doppler display some interesting information about the objects movement can be obtained. However, the display can be noisy, with the reflected object often coming in and out of view on the display. In order to track an object across the range-doppler display in the face of these uncertainties Max uses a Kalman filter to obtain smoothed results. A Kalman filter is an algorithm which combines actual data with predicted data, with the weighting depending on measurement confidence. The result is shown in the video below. A smooth and accurate track of an aircraft can be seen.
Max notes that in the future he'll be working on tracking multiple aircraft detected by the passive radar, and also incorporating direction finding data in his results in order to get cartesian coordinates which could be plotted on a map.
We note that Max's GNU Radio code should be compatible with our KerberosSDR unit, which already has the clock sharing hack built in to the hardware.
If you've been following KerberosSDR development (our US$149 4 channel coherent RTL-SDR), then you'll know that one interesting experiment that you can set up with it is a passive radar. Passive radar makes use of already exiting strong transmitters that broadcast signals such as FM, DAB and HDTV.
With one directional antenna pointing towards the transmitter, and one pointing in the general direction of moving objects like aircraft, it's possible to detect the transmitted signal being reflected off the aircraft's body.From the time delay and doppler shift detected in the reflected signal, a simple distance/speed plot showing the aircraft in motion can be created. This previous post shows an example of what information you could potentially collect in a range/speed graph over time. In the past we've also used passive radar to detect vehicles and measure how much traffic is in a neighbourhood.
However, with two antennas we can only get the detected object's range and distance information. If we use four antennas (one pointing towards the transmitter, and three pointing in the direction of objects), it is possible to use beam forming techniques combined to obtain an estimated map coordinate of the object. This is possible as we then we have distance information available from the passive radar algorithm, and bearing information available from the beam forming algorithm.
Tamas Peto who wrote our open source KerberosSDR code has been working on some new upcoming features for the KerberosSDR software, and beamformed direction finding of passive radar is one of them. We note that to be clear this software is not yet released, and we still expect there to be several months before it is ready. At the moment all data was processed manually offline after collecting data with a KerberosSDR as part of this early test.
The image below shows an example of a recent measurement made from an aircraft. The red tracks show the actual ADS-B GPS coordinates of the aircraft, and the black line indicates the positional data measured from a DAB signal reflecting off the aircraft body. The orange line to the east indicates the main lobe of the three beam formed directional antennas, and the lines to the west indicate transmit towers.
The measured trajectory is only about 1-2 km off the actual one. Tamas notes that the position offset may be because at the moment altitude is not measured yet.
Other upcoming features that are planned for the KebrerosSDR code include being able to use direction finding on short bursty signals, improvements to networked direction finding and beamforming which may be useful for applications like radio astronomy and performance improvements.
KerberosSDR can be purchased from the Othernet store or Hacker Warehouse, and every purchase helps us fund development of more interesting features like passive radar beamforming!
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.
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.
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.
Over on YouTube Meine Videokasetten has posted a video showing how he's been using an RTL-SDR to detect aircraft landing and taking off via the scatter on a VOR beacon. VOR (aka VHF Omnidirectional Range) is a navigational beacon that is transmitted between 108 MHz and 117.95 MHz from a site usually at an airport. Although as it is an older technology it is slowly being phased out in some places.
An interesting observation can be made that is unrelated to the actual operation and use of VOR navigation. When an aircraft passes near the VOR beacon it results in the signal reflecting and scattering off the metal aircraft body. As the aircraft is moving quickly, it also results in a frequency doppler shift that can be seen on an RF waterfall display.
In his video Meine Videokasetten uses an RTL-SDR and OpenWebRX to receive the VOR signal. He then pipes the audio output of that signal into Speclab which allows him to get significantly increased FFT resolution for the waterfall. This increased resolution allows him to clearly see the doppler scattering effects of aircraft on the VOR transmission. He notes that it's possible from the scattering to determine if an aircraft is taking off or landing.
Passive doppler radar on VOR beacon transmitter .:°:. A let's test it out
We note that back in 2015 we posted about the ability to "fingerprint" aircraft using this technique. Different types of aircraft will result in unique patterns on the waterfall. In that post they used analogue TV carriers which are not very common in most countries anymore, so it's good to see that this can be used with VOR signals too.
KerberosSDR is our four tuner coherent RTL-SDR product made in collaboration with Othernet. With KerberosSDR applications like radio direction finding and passive radar are possible, and our free open source demo software helps to make it easier to get started exploring these applications. In this post we explore how a simple passive radar setup can be used to measure how busy a neighborhood is in terms of vehicular traffic.
Passive radar makes use of already existing strong 'illuminator' signals such as broadcast FM, DAB, digital TV and cellular. When these signals reflect off a moving metallic object like an aircraft or vehicle, it distorts the signal slightly. By comparing the distorted signal to a clean signal we can determine the distance and speed of the object causing the reflection. Wide reaching digital signals like DVB-T and DAB are often the best illuminators to use. Wideband cellular signals can also be used to detect more local targets.
In a simple passive radar system we use two directional antennas such as Yagi's. One Yagi points towards the broadcast tower and receives the clean non-distorted reference signal. This is known as the reference channel. A second Yagi points towards the area you'd like to monitor for reflections, and this is called the surveillance channel.
In our setup we point the reference channel Yagi towards a 601 MHz DVB-T transmitter roughly 33 km away. A second Yagi is placed on a vantage point overlooking a neighborhood. The Yagi's used are cheap DVB-T TV Yagi's that can be found in any electronics or TV retail store (or on Amazon for ~$30 - $60 USD). In the software we used a bandwidth of 2.4 MHz and adjusted the gains for maximum SNR.
It is important that the surveillance channel is isolated from the reference signal as much as possible. We improve the isolation simply by placing a metal sheet next to the surveillance Yagi to block the reference DVB-T signal more. Note that putting the antennas outside will obviously result in much better results. These walls and windows contain metal which significantly reduce signal strength. We also added our RTL-SDR Blog wideband LNA to the surveillance channel powered by a cheap external bias tee to improve the noise figure of the surveillance channel.
The resulting passive radar display shows us a live view of objects reflecting. Each dot on the display represents a moving vehicle that is reflecting the DVB-T surveillance signal. In the image shown below the multiple colored objects in the left center are vehicles. The X-Axis shows the distance to the object, and the Y-Axis shows the doppler speed. Both axes are relative to the observation location AND the transmit tower location.
When there are more moving cars on the road during the day and rush hours, there are more blips seen on the passive radar display. Larger vehicles also produce larger and stronger blips. By simply summing the matrix that produces this 2D display, we can get a crude measurement of how busy the neighborhood is, in terms of cars on the road since reflections are represented by higher values in the matrix. We logged this busyness value over the course of a day and plotted it on a graph.
The resulting graph is as you'd intuitively expect. At 6AM we start to see an increase in vehicles with people beginning their commute to work. This peaks at around 8:30AM - 9am with parents presumably dropping their kids off to the neighborhood school which starts classes at 9AM. From there busyness is relatively stable throughout the day. Busyness begins to drop right down again at 7PM when most people are home from work, and reaches it's minimum at around 3am.
One limitation is that this system cannot detect vehicles that are not moving (i.e. stuck in standstill traffic). Since the doppler speed return will be zero, resulting in no ping on the radar display. The detection of ground traffic can also be distorted by aircraft flying nearby. Aircraft detections result in strong blips on the radar display which can give a false traffic result.
It would also be possible to further break down the data. We could determine the overall direction of traffic flow by looking at the positive and negative doppler shifts, and also break down busyness by distance and determine which distances correspond to particular roads. In the future we hope to be able to use the additional channels on the KerberosSDR to combine passive radar and direction finding, so that the the blips can actually be directly plotted on a map.
If you want to try something similar on the KerberosSDR software edit the RD_plot function in the _GUI/hydra_main_window.py file, and add the following simple code before CAFMatrix is normalized. You'll then get a log file traffic.txt which can be plotted in excel (remember to convert Unix time to real time and apply a moving average)
We just wanted to note that this Monday the reduced preorder pricing of US$130 + shipping will end, and the price will rise to the retail price of $149.95 + shipping. So if you have been thinking about ordering a unit, now would be a good time. Ordering is currently possible through Indiegogo. On Monday we will change to our own store. EDIT: Now available to purchase on the Othernet Store.
For shipping, US orders will be sent domestically from Othernet's office in Chicago. They are still waiting on the US shipment to arrive, but it is expected to arrive by the end of next week. Once shipped locally you will receive a shipment notification.
For international orders, the packages are being labelled now, and should be going out early next week, or sooner.
Future Updates to KerberosSDR
With the profits raised from KerberosSDR sales we are looking to continue funding development on the open source server software and visualization software being created (as well as applying updates ourselves). In future updates we will be looking at features such as:
Streamlining the sample and phase sync calibration process.
Experimenting with software notch filters for calibration (may reduce the need to disconnect the antennas during calibration).
Reworking the buffering code for improved sample ingestion performance and increased averaging.
Direction finding and passive radar algorithm improvements.
Creating a networked web application for combining data from two or more physically distributed KerberosSDRs over the internet for immediate TX localization.
Updates and bug fixes for the Android mobile direction finding app for use in vehicles.
Improving passive radar to be able to use all four RX ports for surveillance so that larger areas can be covered.
Plotting passive radar pings on a map.
Beginning experimentation with beam forming.
In the farther future we hope to eventually have even more clever software that can do things like locate multiple signals in the bandwidth at once, automatically plot them on a map, and track them via their unique RF fingerprint, or other identifiers.
Future hardware updates may see more streamlined calibration and smaller sizes.