Friday, August 5, 2016

Long-Term Waterfall on SDRplay

I was really impressed by the 24-hour waterfall at http://websdr.ewi.utwente.nl:8901/fullday/, especially the eclipse one. I wrote to the creator and he informed me that he designed custom software and that it wouldn't work with other SDR's. I've been looking for a way to accomplish this with my SDRplay, and after many months I've figured out a cumbersome way to emulate it in mid-June. However, Nathan Towne has recently finished an app that can do all of this automatically. See this RTL-SDR Blog post.

One application of this would be to find the most commonly used police frequencies in 850 MHz. I know of rtl_power, but it only supports the RTL dongle. Then there's GQRX, but I have yet to make it interface with the SDRplay.

One evening I accidentally clicked the Speed label directly under the FFT in HDSDR. I was sure I had previously clicked and right-clicked everything to find all the features, but this time it opened a waterfall timespan dialog, prompting me to enter a number of minutes. This was very exciting and I tried it out. I ran it on HF overnight and checked in the morning. I could clearly see when stations faded and disappeared as the sun came up, complete with time labels on the left.

Unfortunately, this simplistic method works not by averaging the spectrum, but by only drawing a new waterfall line at the right interval to fill the screen in the predetermined amount of time. This means anything that happens between intervals is lost. What's worse, the number of minutes wasn't even accurate: there seems to be "padding" of maybe 30 pixels on the top and bottom of the waterfall, so if you set it to 1 minute you might end up with a 1 minute 10 second waterfall (not exactly 1m10s. I was guesstimating, but you get the idea).

I wanted to be able to generate good long-term waterfalls, so I decided to turn off time-based waterfall span, restoring HDSDR to the original setting with the slider. I was then able to fine-tune it until each complete cycle of the waterfall spanned 1 minute, +/- <2 seconds.

Then I downloaded a program called Chronolapse which takes screenshots at specified intervals. I set it to only capture the waterfall area and take a PNG snapshot every 60 seconds. I then averaged them by using the bulk resize feature in IrfanView. My screen is 1920x1080 so HDSDR's waterfall section was about 1918x476. Using IrfanView I resampled (better quality than resizing) them down to 1918x1.

After this I wrote an app in Liberty BASIC to quickly compile the list of resulting files into an HTML page. With <img> tags followed by <br>'s, each image touched the next without padding and produced a real average. I manually took a snapshot of HDSDR and cropped it to get the frequency scale. I then added some code to reference this scale by a relative path so that each HTML file would have it at the top.

Here's an example from June 21, 2016. Each vertical pixel represents 1 minute and the image spans from 9 PM to 9 AM the next morning. Click to enlarge.



Here's a zip file containing similar long-term waterfalls from June 21 to June 30, 2016, recorded with my SDRplay hooked to a longwire antenna. You can flip through them to see the similarities. Let me know in the comments what you think.

I think there's a lot that can be gathered from these. For example, a certain signal on 3955 kHz is repeated at the same time on several nights, and 3885 kHz seems to be a common frequency for AM traffic. On some nights you can see that the ionosphere is dead and almost nothing comes through.

My favorite part is the drifting lines that show up on some of these. The strong, pixel-perfect red ones are my RCA LED TV, but the faint blue ones a couple of pixels wide are a mystery to me.

1 comment: