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.
This really helped me set mine up I had a lot of trouble.
I always assumed the KerberosSDR app was able to plot and display lines of bearing in real time (or at least ‘near real time’ with low latency). I guess I’m wrong?
We have to load the log file after we drive for a while and then view LOBs?
Can we please fix this?
I think it is necessary to see the LOBs and heat map (all map plotting) in real time – or as close as possible to real time with as little latency as possible.
I know this KerberosSDR is an awesome capability but I am disappointed at the operational visualization. How hard is it to fix this? How can I help?
Yes if you take a look in the video during the first drive nosp4m minutes you can see the real time bearing being plotted at 1Hz (sorry the contrast and focus of the screen is a bit bad though). The red line is the bearing of the car, and the blue line is the TX bearing. So you could simply aim your car in the direction of the live blue bearing line and drive in that direction, aiming to keep the red and blue lines together. To be safe, you’d better have a passenger with the phone though. But as you can see once I drive down into some valleys, the TX is blocked, and the reflections from multipath start becoming dominant giving wrong readings. When I rise out of the valley again it snaps back to the real TX bearing.
The log file is there to help you visualize and see where the majority of bearings point, so that you can eliminate multipath.
Are you asking for the app to plot the log file and update the heatmap colors as you drive? That might be possible, but it would get really messy and CPU intensive with so many lines.
Are you an Android dev? If you are let me know admin rtl-sdr.com.
Sorry. I didn’t see the live pointing the first time I watched it. However… Yes, In some type of ‘Map Mode’ I would love to be able to see the map with LOBs and heat-map info develop in real time. I have a Tinkerboard S to handle this. Is that enough?
I’m not an Android developer but I work with 4-5 of them. I might be able to get them interested.