In a recent post I demonstrated how to log RDS messages from FM radio stations. As a follow up, I thought I'd share an interesting result I observed while logging data over a two week period. I set up the equipment as described, and for most of the logging period everything worked as planned. The receiver decoded around 13 messages per minute, sometimes more, sometimes less, but most importantly the messages were almost error free.
On the last day of logging I checked the progress and noticed that the messages contained a lot of errors, not only that, the number of messages received per minute had dropped to one or two. I'd like to build suspense, but I knew what was wrong immediately, we were experiencing some of the heaviest rain Brisbane had seen in years. The rain was degrading the signal from the radio station to a point that still allowed audio to be heard, but prevented decoding of RDS messages.
I thought it'd be cool to create a visual aid to compare historical weather data to the logged RDS messages. Radar data from www.theweatherchaser.com was added to a graph showing how many messages were received in each 6 minute period over the two week long experiment. 6 minutes was chosen as this is the length of time between radar frames. The frames for the animation were created using python and matplotlib.VirtualDub was then used to convert the image sequence into a video.
I wouldn't say that there's a strong correlation between the radar images and the frequency of the received messages. It's important to remember that the radar only shows rainfall. There could be cloud cover or lighting strikes effecting the radio transmission that doesn't appear on the radar. The number Hopefully it's obvious that this isn't a tightly controlled experiment, just a bit of fun.
The file used to create the above animation can be found here.
It can't be used to recreate the animation as the source data is missing. When learning how to use matplotlib I had trouble finding out how to do certain things. I though placing the file here might help someone in same situation in the future.