Category: Applications

Measuring Traffic in a Neighborhood with KerberosSDR and Passive Radar

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.

KerberosSDR is currently available from the Othernet store for US$149.95, and the setup guide is available at www.rtl-sdr.com/ksdr.

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.

KerberosSDR Passive Radar Setup
KerberosSDR Passive Radar Setup
Surveillance Antenna View
Surveillance Antenna View

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.

Vehicles on the Passive Radar Display
Vehicles on the Passive Radar Display

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.

Traffic Busyness detected with KerberosSDR Passive Radar
Traffic Busyness detected with KerberosSDR Passive Radar

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)

CAFMatrixSum = np.sum(CAFMatrix)
trafficLog = open("traffic.txt", "a")
logString = str(round(time.time())) + "," + str(round(CAFMatrixSum)) + "\r\n"
trafficLog.write(logString) 
trafficLog.close()

Dash Mounted ADS-B With an RTL-SDR Blog V3

Reddit user [Bobcalamarie] recently [posted] about how he uses his car dash mounted Android tablet along with an RTL-SDR Blog V3 and a magnetic mount antenna while sitting in traffic to track aircraft overhead.

We’ve seen something similar to this once before when [Signals Everywhere] uploaded a video showing off ADS-B reception (among other things) to a dash-mounted Windows tablet and an Android head unit.

The software used by Bobcalamarie is the Android [Avare ADS-B] software which can be found in the Google Play Store. However, other applications exist for Windows, Linux, and other operating systems as well. Some software such as [Virtual Radar Server] even allows you to set-up alerts for specific types of aircraft. Which while we wouldn’t condone it, it might come in handy for someone in traffic.

What would you do if you had an SDR installed in your vehicle? We would love to hear what you have to say in the comments below.

Dash Mounted ADS-B Reception

ORBCOMM Receiver: New Open Source Software for Monitoring Orbcomm Satellites

Thank you to Frank for submitting his new RTL-SDR compatible Orbcomm Satellite monitor software called "Orbcomm Receiver". Orbcomm is a low earth orbit satellite communications system that operates in the 137 - 138 MHz frequency range. The satellites specialize in remote IoT and machine to machine (M2M) connectivity, an example use case being a GPS tracker on a shipping container regularly uploading GPS coordinates from anywhere in the world via the Orbcomm satellites. Orbcomm satellite signals are fairly strong and can easily be received with an RTL-SDR and V-Dipole antenna.

We haven't posted about Orbcomm on this blog since 2015 since there is not many interesting things to say about it. The data is all encrypted, and the only information you can really see is Orbcomm satellite ID, frequency and positioning data. Franks software doesn't change this fact, but his software is all open source, so it may be a useful tool for learning about satellite signal DSP processing. Frank writes:

There are a couple different projects out there to decode ORBCOMM signals (Orbcomm-Plotter and MultiPSK). What makes my project different from these is that I wrote it as a learning project. So all of the signal processing, written in Python, is available to the user and is decently documented. I hope this can be a good learning resource for people who want to see a practical example of satellite communications signal processing. Also, my software is open source and free to use.

Currently, the software can do offline or real-time decoding of a single ORBCOMM downlink channel. The transmitted bits of the ORBCOMM signal are demodulated and when the packet type is known, the packet information is decoded. There are a lot of ORBCOMM packets that can't be decoded and of course the message data is encrypted so that information is not available. But, there is still a ton of interesting information available.

The project is still in development so it has some limitations. For real-time recordings, I only support RTLSDRs currently. Also, I'm having trouble getting the real-time processing to work on mac OS, so currently that mode is only supported on linux. However, I have included a couple data files in the repo, so even without an SDR, users can experiment with the signal processing. I welcome any bug reports or suggestions.

Orbcomm Packet Decoding. Showing Realtime Satellite Position.
Orbcomm Packet Decoding. Showing Realtime Satellite Position.

Creating a 21cm Galactic Sky Map with an Airspy and 1.8m Dish

Marcus Leech from ccera.ca is a pioneer in using low cost software defined radios for observing the sky with amateur radio telescopes.  In the past he's shown us how to receive things like the hydrogen line,  detect meteors and observe solar transits using an RTL-SDR. He's also given a good overview and introduction to amateur radio astronomy in this slide show.

His recent project has managed to create a full Hydrogen sky map of the northern Canadian sky. In his project memo PDF document Marcus explains what a sky map shows:

A [sky map] shows the brightness distribution over the sky for a given set of observing wavelengths. In the case of the 21cm hydrogen line wavelength, maps show the distribution of hydrogen over the sky. For amateur observers, such maps generally show the distribution within our own galaxy, since extra-galactic hydrogen is considerably more faint, and significantly red/blue shifted relative to the rest frequency of 1420.40575 MHz, due to relative motion between the observer and the target extra-galactic hydrogen.

He was able to make this observation using his radio telescope made from a 1.8m dish antenna, a NooElec 1420 MHz SAWBird LNA + Filter, a 15dB line amplifier, another filter and two Airspy R2 software defined radios locked to an external GPSDO. The system runs his custom odroid_ra software on an Odroid XU4 single board computer, which provides spectral data to an x86 host PC over an Ethernet connection. 

Over 5 months of observations have resulted in the Hydrogen sky map shown at the end of this post. Be sure to check out his project memo PDF file for more information on the project and how the image was produced. Marcus' blog post over on ccera.ca also notes that more data and different maps will be produced soon too.

Hydrogen Sky Map
Hydrogen Sky Map

A Motorized Backyard Radio Astronomy Telescope made with an RTL-SDR

A Geostationary Satellite Imaged with the RTL-SDR Based Mini Radio Telescope
A Geostationary Satellite Imaged with the RTL-SDR Based Mini Radio Telescope

Just a few days we posted an update on the PICTOR open source radio telescope project. That project makes use of an RTL-SDR and a small dish antenna to receive the Hydrogen line, and is able to measure properties of our galaxy such as determining the shape of our galaxy.

Now over on Hackaday another amateur radio telescope project has been posted, this one called the "Mini Radio Telescope" (MRT) which was made by Professor James Aguirre of the University of Pennsylvania. This project makes use of a spare Direct TV satellite dish and an RTL-SDR to make radio astronomy observations. What makes this project interesting in particular is the automatic pan and tilt rotor that is part of the design. Unlike other amateur radio telescopes, this motorized design can track the sky, and map it over time. This allows you to create actual radio images of the sky. The image on the right shows a geostationary satellite imaged with the dish.

In the past we saw a similar project by the Thought Emporium YouTube channel which used a tracking mount and a HackRF to generate images of the WiFi spectrum. This was to be a precursor to a motorized tracking mount for radio astronomy but it doesn't seem that they completed that project yet.

Professor James Aguirre 's project including designs for the rotor is fully open source and can be found over on GitHub.

The Miniature Radio Telescope Setup
The Miniature Radio Telescope Setup

Updates on the PICTOR Low Cost Open Source Radio Telescope Based on RTL-SDR

Back in July we posted about PICTOR, an open source and RTL-SDR based radio telescope project. The owner of the project recently wrote in and wanted to share some updates. His text is below:

A few months ago, PICTOR was launched. PICTOR is a free to use open source radio telescope that allows anyone to observe the sky in the 1300~1700 MHz range at any time via the easy-to-use online platform.

The goal of this effort is to introduce students, educators, astronomers and others to the majesty of the radio sky, promoting radio astronomy education, without the need of building a large and expensive radio telescope. 

Since the initial launch, PICTOR has gotten lots of updates and improvements, particularly in the software backend, providing more data to the users, using advanced techniques to increase the signal-to-noise ratio by calibrating spectra and mitigating radio frequency interference (RFI) (if present).

Here is an example observation with PICTOR, clearly showing the detection of 3 hydrogen-dense regions corresponding to 3 unique spiral arms in the Milky Way!

Graphs from the PICTOR RTL-SDR Radio Telescope showing the 3 unique spiral arms in the Milky Way.
Graphs from the PICTOR RTL-SDR Radio Telescope showing the 3 unique spiral arms in the Milky Way.

If you’re new to radio-astronomy, the developer of PICTOR has provided a PDF including some introductory radio astronomy information and instructions on how to observe the radio sky with PICTOR: https://www.pictortelescope.com/Observing_the_radio_sky_with_PICTOR.pdf

Using a LimeSDR and RTL-SDR to Transfer a Text File Over the Air

Over on his blog nuclearrambo has been working on a project that uses a LimeSDR and RTL-SDR to transfer a small CSV text file over the air.

The transmitting side consists of a GNU Radio flowchart that encodes the text file into a binary string, modulates that binary string with Binary Phase Shift Keying (BPSK), and then transmits it using the LimeSDR.

The receiving side uses an RTL-SDR, and is based on another GNU Radio flowgraph that uses a polyphase clock sync block to synchronize the sampling time, a costas loop for fine frequency correction, an LMS DD equalizer block to compensate for multipath effects, and finally demodulation blocks that recover the bits and text file from the BPSK signal.

His results showed that he can almost recover the entire file except for the first few bytes of data which is always lost since it takes time for the clock sync and costas loop block to converge. The post goes into further detail about what each of the blocks do and some of the signal theory math behind everything. The GNU Radio GRC file is also provided if you want to try it out yourself.

LimeSDR Transmitting a CSV file to a RTL-SDR with BPSK modulation.
LimeSDR Transmitting a CSV file to a RTL-SDR with BPSK modulation.

SignalsEverywhere: Testing out NooElecs PCB L-Band Patch Antenna

Over on his YouTube channel Corrosive from the SignalsEverywhere YouTube channel has uploaded a video where he tests out the new US$29.95 NooElec PCB patch antenna for receiving L-band satellite signals. In the video he shows how it can be combined with one of their SAWBird L-band low noise amplifiers in order to receive L-band satellite signals such as Inmarsat STD-C and AERO.

We note that our own RTL-SDR Blog Active L-band patch antenna will be ready to ship out before the end of this month, and while waiting for it we are currently having a preorder sale for US$34.95 including free shipping over on our store. For US$34.95 our patch antenna is fully contained in a waterproof enclosure, includes an LNA built in, and comes with several mounting options, so we believe that it is really a great deal. The patch design is based on the Outernet ceramic patch that was compared against the NooElec PCB patch shown in Corrosives video, so performance will be very similar.

Nooelec NEW Inmarsat Patch Antenna with Airspy SDR