Category Archives: WiFi Radio

Guest Post: Radio Schedules in a Simple Android Database

Many thanks to SWLing Post contributor, Bill Hemphill, who shares the following guest post:


Radio Schedules in a Simple Android Database

by Bill Hemphill

I am a program listener. I really enjoy listening to various radio stations direct and by internet streaming. Over time, I have come up with a couple of spread sheets that lists the program, station, time, date, etc. For example, following is the spreadsheet for the shortwave radio programs/stations that I enjoy:

As the program schedules change, I update the spreadsheet. This has worked quite well for me. I usually sort on the weekday and then print out the spreadsheet as a list by time and frequency for each day.

While this method works, it does mean that I have these multiple page printouts that I have to refer to. This got me thinking that it would be great to have this on my Android phone/tablet. Then I could refer to it no matter where I was located.

At first, I tried to use Google Sheets, but found that using a spreadsheet on the phone or even a tablet to be a pain. I then tried entering it into a calendar program, but also found that very cumbersome. Continue reading

Spread the radio love

“Reciva Gateway not responding”

Many thanks to a number of SWLing Post readers who’ve informed me that their Reciva-based WiFi radios may be on their last legs.

I’ve gotten a number of messages from WiFi radio owners who note that when they try to tune to a WiFi radio station, their radio now displays the following message:

“Reciva Gateway not responding”

Reciva originally announced that their services would close permanently on January 31, 2021. That date was then pushed out to April 30, 2021, after pressure from WiFi radio manufactures like C.Crane and Grace Audio.

April 30th came and went, though, and there was no change. Many here have been commenting since that date feeling pretty happy their radios were still working.

It appears that at some point on September 13th or 14th, 2021, the service finally shut down.

Many WiFi radio owners performed a hack on their radios which essentially circumventing the Reciva aggregator before the announced closure on April 30, 2021. Later, we learned that radios with Reciva chips might require a periodic token refresh to keep the radio functioning properly. Contacts within the industry confirmed the use of a token system, however no one verified that it would effectively brick-up a radio post-Reciva.

SWLing Post contributor, Mark, wrote this morning noting that he had not completed the Reciva server workaround and had received the “Reciva Gateway not responding” message. He added:

After playing around with my CCWiFi2 I’m noticing odd behavior now that the Reciva Gateway is down.

The volume control is much slower to respond to volume setting changes as compared to normal. Additionally, and more importantly, it seems the presets might re-assign themselves to different buttons; I have lost two of them already.

I think it wise to operate the radio slowly and carefully. It might be best to avoid making quick preset selections and wait for the preset to load completely until another preset is selected.

Generally, the radio seems to be operating slower than normal; that’s the feeling I am having with mine.

Thanks for the feedback, Mark.

Reciva radio owners: please share your experience here in the comments section.

We’re particularly interested if those who performed the Reciva server workaround are still able to use their radios moving forward.

Spread the radio love

Mark shares his preliminary C.Crane CC WiFi-3 notes

Many thanks to SWLing Post contributor, Mark, who recently shared his notes about the new CC Wifi 3 that only recently started shipping:

Howdy Thomas,

I received the CCWiFi3 [last week]. I was surprised at the small box compared to my CCWiFi2. After opening I found the inner box tightly fitted to the outer shipping container. The radio box is quite nice with graphics and I will keep it for later use if needed.

When I took the radio out of the box it seemed lighter so I weighed it. The CCWiFi3 weighs 1 lbs compared to the CCWiFi2 that weighs 1 lbs 2.8 oz (excluding power adapters and antenna). I’ll be waiting to hear what the tech people will find inside the new radio.

Within five minutes I had the radio plugged in, the SSID found and the password entered without issues.

Continue reading

Spread the radio love

Guest Post: Methods for discovering and recording online radio programming for later listening

Many thanks to SWLing Post contributor, Bill (WD9EQD), who shares the following guest post:


Time Shifting Radio Programs for Later Listening

by Bill (WD9EQD)

There are quite a few programs on shortwave that I enjoy listening to for the actual program content.  If I am lucky, I will receive a strong enough signal to really enjoy the experience.  But all too often, I either can’t directly receive the program or conditions are such that listening is just not enjoyable.  What I was looking for was good quality sound that I could listen to on my schedule.

I could always just go to the station website and listen to the live stream of the program.  But what if there are two programs on different stations at the same time?  I would have to choose which one to listen to.  What I needed was a way to listen to the program on my schedule.

This write-up will be presenting several ways this can be accomplished.

Is the Program Streamed?

In many cases, it is possible to go to the program’s website and then listen to the latest program or even an archive of past programs at your convenience.  Some examples are:

Hobart Radio International http://www.hriradio.org/

Radio Emma Toc https://www.emmatoc.org/worldserviceindex

VORW International https://soundcloud.com/vorw

AWR Wavescan http://eu.awr.org/en/listen/program/143

Blues Radio International: http://www.bluesradiointernational.net/

This is a Music Show https://thisisamusicshow.com/

Radio Northern Europe International: https://www.mixcloud.com/RadioNorthernEurope/

Alt Universe Top 40: https://www.altuniversetop40.com/links

International Radio Report https://www.ckut.ca/en/content/international-radio-report

World of Radio http://worldofradio.com/

The Shortwave Report http://www.outfarpress.com/shortwave.shtml

Lost Discs Radio Show https://www.lostdiscsradio.com/

Grits Radio Show https://archive.org/details/gritsradioshow2020

Le Show with Harry Shearer http://harryshearer.com/le-show/

Can the Program Be Downloaded?

All HRI programs are available on their Archive.org page.

Quite often, the program’s web site will also let you download the program for listening at a later date.  Some examples are:

Hobart Radio International has an Internet Archive page where you can listen to and download their previous programs: https://archive.org/details/@hobart_radio_international

Radio Emma Toc has a button for “broadcast & internet relay services wishing to air our programme”.

But anyone can download the program.

VORW International: https://soundcloud.com/vorw

(Note:  You will have to sign into Soundcloud to be able to download the files)

AWR Wavescan: http://eu.awr.org/en/listen/program/143

Your Weekend Show: https://open.spotify.com/show/2RywtSHWHEvYGjqsK6EYuG

International Radio Report https://www.ckut.ca/en/content/international-radio-report

World of Radio http://worldofradio.com/

The Shortwave Report http://www.outfarpress.com/shortwave.shtml

Lost Discs Radio Show https://www.lostdiscsradio.com/

Grits Radio Show https://archive.org/details/gritsradioshow2020

Le Show with Harry Shearer http://harryshearer.com/le-show/

WBCQ has a link to an Archive of some of their programs.  Just click on the Archive link and you will go to Internet Archive where there are a lot of programs that can be streamed or downloaded.  The programs include:

  • Adventures in Pop Music
  • Analog Telephone Systems Show
  • B Movie Bob
  • Cows in Space
  • Godless Irena 1
  • Grits Radio Show
  • Lost Discs Radio Show
  • Radio Timtron Worldwide
  • Texas Radio Shortwave
  • The Lumpy Gravy Show
  • Zombies in your Brain
  • Vinyl Treasures
  • Plus many, many other programs…

Does the Program Have a Podcast?

Check to see if the program has a podcast.  Many programs do and this makes it easy to always have the latest program updated into my favorite podcast program.

AWR Wavescan is available on a number of podcasting platforms

Some programs that have podcasts:

  • Hobart Radio International
  • AWR Wavescan
  • Blues Radio International:
  • Your Weekend Show
  • International Radio Report
  • World of Radio
  • The Shortwave Report
  • The Lost Discs Radio Show
  • Le Show with Harry Shearer

Directly Record the Stream While It Is Being Broadcast

This method is a little more difficult and requires some setup. The method is to record the program directly from the internet stream of the station as it is broadcasting the program.  Once set up, the procedure is completely automatic and will continue to capture the program until it is disabled in the scheduler.

Let’s walk through a typical program that we want to record.  I like Alan Gray’s “Last Radio Playing” program on WWCR.  It is broadcast weekly on Wednesday at 6pm Central Time on 6115.  While I can receive the program over the air, it’s not very good reception, so I usually just stream it off the internet.

What I want to do is to set up an automatic computer program that will connect to the stream on Wednesday night, record the stream for one hour and then disconnect.  I use the program StreamRipper which can run on either Linux or Windows.

http://streamripper.sourceforge.net/

Since I have a spare Raspberry Pi 4 computer, I chose to use the Linux version.  The following description is based on Linux.  A similar method I’m sure could be done with the Windows version.

Fortunately, StreamRipper is in the current software repository for the Raspberry PI and I could just install it with having to do a compile.  I’m sure other Linux distributions probably also have it in their repository.  It was a simple matter to install it.  In Linux, Streamripper is run from the command line in a terminal window.

A typical command line for SteamRipper is:

streamripper station_URL_stream –a “filename” –A –d directory_path -l seconds

where

station_URL_stream is the http address of the audio stream.  Determining this can sometimes be challenging and some methods were recently discussed in a SWLing Post:

https://swling.com/blog/2021/04/robs-tips-for-uncovering-radio-station-stream-urls/

–a says to record the audio as a single file and not try to break it up into individual songs.

“filename” the filename of the resultant mp3 file goes here in quotes

-A again says to create a single file.

-d tells it the directory path to store the mp3 file.  Place the full directory path after the –d

-l specifies how long to record.  Enter the number of seconds after –l.

(note: this is lower case letter l)

For Last Radio Playing, the command line is:

streamripper http://67.225.254.16:3763 –a “Last Radio Playing” –A –d /home/pi/RIP/wwcr –l 3600

when executed, this would connect to the URL stream, record for 3600 seconds (60 minutes) and then disconnect from the stream  A file called “Last Radio Playing.mp3” would be in the wwcr1 directory.

Save this command line to a shell file, maybe wwcr.sh.  Then make this shell file executable.

Last is to enter a crontab entry to schedule the shell file wwcw.sh to be run every Wednesday at 6pm ct.

At the command line, enter crontab –e to edit the cron table.

Add the following line at the end:

0  19  *  *  3  /home/pi/wwcr.sh

then exit and save the crontab file.

This line says to execute wwcr.sh every Wednesday at 1900 (my computer  is on eastern time).

There are many ways to enhance the shell script.  For example, I have added the date to the mp3 file name.  My wwcr1.sh shell script is:

NOW=$(date +”%Y-%m%d”)

# WWCR1 Last Radio Playing

# Wednesday 7-8pm et

streamripper http://67.225.254.16:3763 -a “$NOW Last Radio Playing” -A -u FreeAmp/2.X -d /media/pi/RIP/wwcr1 -l 3600

This will create a MP3 file with the date in the file name.  For example

2021-0505 Last Radio Playing.mp3

Note: I named the file wwcr1.sh to denote that WWCR transmitter 1 was being streamed. Each of the WWCR transmitters have different stream URL.

Most radio streams work fine with  the default user agent but WWCR required a different user agent which is why the –u FreeAmp/2.X is added.  Normally, –u useragent is not required.  The default works fine.

For each program, just create a similar shell file and add it to the cron scheduler.

Streamripper is very powerful and has many options.  One option is for it to attempt to divide the stream up into individual files – one for each song.  Sometimes this works quite well – it all depends on the metadata that the station is sending over the stream.  I usually just go for a single file for the entire show.  Some stations are a little sloppy on whether the program starts on time – sometimes they start a minute early and sometimes run a minute over.  The solution is to increase the recording time to two minutes longer and then specify in the crontab file that the show starts a minute early.  It’s easy to adjust to whatever condition might be occurring.

Recording the BBC

I have found that the BBC makes it more difficult to use this procedure.   For one thing, they have just changed all their stream URL’s.  And they have decided NOT to make them public. When they did this some of the internet radios broke since they still had the old URL’s.  Of course it didn’t take long for someone to discover and post the new stream URL’s:

https://gist.github.com/bpsib/67089b959e4fa898af69fea59ad74bc3#file-bbc-radio-m3u

I have tested the Radio 4 Extra stream and it does seem to work.  For how long is anyone’s guess.

I found that while streamripper did seem to work on BBC, all the mp3 files came out garbled.  So the method above doesn’t seem to work with the BBC.

I went back to the drawing board (many hours on Google) and discovered another way to create a shell script that can be scheduled to record a stream.  This involves using the programs mplayer and timelimit.

First step is to install the programs mplayer and timelimit to the Linux system.  mplayer is a simple command line audio and video player.  timelimit is a program that will execute another program for a specific length of time.

First I created a shell script bbc30.sh:

#!/bin/bash

NOW=$(date +”%Y-%m%d-%H%M”)

# BBC Extra 4 – 30 minute program

timelimit -t1800 mplayer http://stream.live.vc.bbcmedia.co.uk/bbc_radio_four_extra -dumpstream -dumpfile /media/pi/RIP/$NOW-bbc.mp3

Note: The bold line above is all on one line in the shell file.

This script will execute the timelimit command.  The timelimit command will then execute the mplayer command for 1800 seconds (30 minutes).

The mplayer command then connects to the http stream; the stream instead of playing out loud is dumped to the dumpfile /media/pi/RIP/$NOW-bbc.mp3

The crontab entry becomes:

30  23  11  5  *  /home/pi/bbc30.sh

In this case, the program on May 11 at 2330 will be recorded.

Summary

In conclusion, Podcasts are the easiest way to get the programs.  But automatically recording directly from the station stream is really not that much harder to do.  Just be careful.  It’s very easy to accumulate much more audio than you can ever listen to in this lifetime.

One final note.  The use of a Raspberry Pi makes this a very easy and convenient method.  I run the pi totally headless.  No keyboard, mouse or monitor.  It just sits on a shelf out of the way and does it thing.  I either log in using VNC when I want the graphical desktop, Putty for the command line, or WinSCP for transferring files. The Pi stays out of the way and I don’t end up with another computer system cluttering up my desktop.

Besides recording several shortwave programs, I use Streamripper to record many FM programs from all around the United States.  It’s great for recording that program that is on in the early morning hours.

73

Bill WD9EQD

Smithville, NJ


Thank you for sharing this with the SWLing Post community, Bill! This weekend, I’m going to put one of my RPi 3 units into headless service recording a few of my favorite programs that aren’t available after the live broadcast. Many thanks for the detailed command line tutorial!

Spread the radio love

Rob’s tips for uncovering radio station stream URLs

Many thanks to SWLing Post contributor, Rob Gray, who shares the following tips:


Extracting Audio Stream Information from Reciva

Here is a proposed procedure for extracting audio streams from Reciva, while the website still exists.

[Please note that in these examples, the Brave web browser is being used in a Windows environment. The procedure is nearly identical for Chrome. Other web browsers and operating systems may vary slightly.]

Image 1 (Click to enlarge)

After logging in and searching for your desired station(s) (as shown in Image 1 above using NPR as an example search), click the speaker icon of the station of interest (see Image 2 below). 

That brings up another browser window (center-right window in Image 3 below).  Pressing “F12” brings up another window of DevTools (Developer Tools).

Under “DevTools”, select “Console” (you may find it under the >>) as shown in the image above.  The URL is shown in the “Console” window (image 04), and should be http://xxxxxx, and not the secure https://xxxxxx.

Extracting Audio Stream Information from station websites

Digging out streams from station websites can be a little trickier.  Using an example of the webpage for the NPR station KCLU, once loaded, press “F12” to bring up the developer tools as shown on the right-hand side of Image 4 below.

Then Press “F5” to reload the page, and the Play button to start the audio stream.

In the Developer Tools window, select “Network”, as shown in the Image 5 above.

While the stream is playing, look for the longest bar, which indicates activity.  Sorting the files in this window by size or time (if descending order, be at the top of the list, if descending order at the bottom of the list) can make searching for the “bar” easier, or just look for it in the list as shown in the Image 6 above.  Look for the file associated with the “bar” under “Name”, right-click on that file, Copy, and left-click “Copy link address” as shown in the Image 7 below.

That is usually your stream, or something close to it.  In this example, this is the link address copied:

https://kclustream.callutheran.edu:8090/kclump3?uuid=5blcmxjpp

That’s a little messy, and you can experiment with shortening it.  In this case, the link can be shortened to: https://kclustream.callutheran.edu:8090/kclump3 [removing the question mark and all characters following it] and the stream still plays in a web browser on the computer–while I’ve not tested it, it would probably play in your internet radio. You’ll just have to experiment.

However, in this case (and most certainly not all), shortening the link to https://kclustream.callutheran.edu:8090/  brings up another page with all sorts of data, and clicking the M3U file on that page downloads a file.  Opening that file with Notepad reveals this link (  https://kclustream.callutheran.edu:8090/kcluaac  ), which also plays the stream, and in my guess, is probably the real stream URL. 

Different web pages will reveal different ‘formats’ of URLs–one simply has to experiment to get something to work.  The procedure is essentially the same with other pages, though there is often variation so a certain amount of experimentation is sometimes needed to tease out the stream URLs.  There isn’t really any one set of instructions that will work for everything (that I’ve found anyway!).

The examples shown used Google Chrome, and the Brave browser works exactly the same.  The operating system used was Windows.  Firefox seems similar (F12) and other browsers probably also work similar, though the appearance might be a bit different.

A few things that might add clarification with ‘odd’ streams:

In the developer tools window under Name, sometimes those items (files) are labelled as just a semicolon, or are labelled something like ‘stream.’

Sometimes the stream URL is httpS://…., with those, try dropping the “s” and the http://…. often works.

I often tried any proposed streams out on my desktop computer first, however there were some that wouldn’t play on the desktop that did on the Reciva radio, and vise-versa.  But generally, if it didn’t work on the computer, it didn’t work on the internet radio.

Sometimes the URLs point to a link with a .pls extension.  In a browser, those links tend to initiate a download (at least on my setup, and was the case with the M3U file in the KCLU example).  You can download the file, then open with a text editor (Notepad for example) and read the link there.

For some, the URL won’t work. For those, I would get them to work by adding a semicolon (;) to the end of what you think might be the link.  I’ve had a few work with that trick!

While digging out steams is tedious–especially if you have a lot of them–there’s a potentially very rewarding payoff!  When you create the .pls files (as described in other Reciva postings in this blog), you can easily copy those to many other devices (Android phone/tablet, iPod/iPhone, other computers, Kodi, etc.) and use them there.  I’ve only started on this project, but I used an old (very old) iPod touch, entered the stream URL into Safari, placed the iPod in a docking station (a dime/dozen at second-hand stores) and basically created an internet radio facsimile.  As the iPod is too old for the App Store, entering the URL’s and bookmarking them should provide convenience.  The .pls files work well in my Android devices with VLC player, and even with Kodi (on a Raspberry Pi). They also work on my TV by placing the files in the “Video” section, read from external media (can probably use the boot SD card for memory storage as well, the files are very small).


Thank you for sharing this, Rob!

I recall our friend, Tracy Wood, discussing in some detail how to find radio streams a few years ago at the Winter SWL Fest. He was on a mission to find rare local and regional South American stations that aren’t easily available outside the area.

I have used the approach you mentioned above and it is effective.

Readers: if you have other tips, please feel free to share them in the comments section.

Of course, we should note again that the Reciva website will be taken down at the end of April 2021. We suspect some or all Reciva radios may eventually fail in the absence of receiving a token over the Internet. While we haven’t received a confirmation, my industry sources seem to think this is a real possibility. Let’s hope not.

Spread the radio love

SiriusXM streaming stopped working on legacy Grace radio models as of March 31st, 2021

Many thanks to SWLing Post contributor, Randy, who notes:

One thing that has gone under the radar here is that several Grace Radio models, in addition to being impacted by the Reciva shutdown, can’t stream SiriusXM as of March 31st.

Grace Radio posted the following announcement about this here:

SiriusXM on all Legacy radios stopped working on March 31st. This is the final date for this action which was originally planned to occur last year.

      • Radios with model numbers that start with ‘GDI-WHA’ will not be affected.
      • Radios with model numbers that start with ‘GDI-IR” will be affected.

We apologize for the interruption in your service, and wish we were allowed to upgrade the old platform.

Regards,

Greg Fadul

Grace Digital

CEO

———————————–

[Note from SiriusXM]

Thank you for listening to SiriusXM. We appreciate your loyalty. It has come to our attention that you may be streaming SiriusXM at home using a Grace device. On March 31 we enhanced our streaming service and consequently your streaming player may not be able support the new SiriusXM feed. If you are unable to get SiriusXM at home after March 31 on your current equipment we recommend the following options.  Upgrade to a newer model.

If you are still able to listen to SiriusXM on your current equipment after March 31, then you can ignore this issue. Rest assured, this has no effect on your account and the billing of your SiriusXM subscription package. This also has no effect on listening to SiriusXM by satellite.

If you have any questions, please call us at 1-888-601-6296.

We apologize for any inconvenience and thank you for being a loyal SiriusXM listener.

I was hoping that SiriusXM would still work on my model – it’s the only component style Internet radio (GDI-IRDT200) that Grace made that fits in my audio system rack and I’ve used it a lot to listen to SiriusXM’s streaming service. But, it looks like it’s a brick now.

Thank you for sharing this, Randy.

Yes, this now explains why my “legacy” Grace Digital radio no longer plays SiriusXM. Last week, I noticed that it would no longer accept my SiriusXM username and password.

I’m guessing some of the iHeartRadio functionality may still work on my unit, but that remains to be seen (I rarely use that particular service).

I’m sure Grace Digital is experiencing a very serious hit to their reputation. As I understand the situation, the rug was pulled out from underneath them. They (nor C.Crane) had any warning that Reciva (or, rather, Qualcomm now) would pull the plug on the aggregator service. I can also tell by the announcement that they weren’t expecting SiriusXM to “enhance” their streaming service in a way that would disable SiriusXM on older units.

I still haven’t received a firm confirmation yet, but it does look more likely that Reciva radios may use a token system to routinely verify compatible products. If this turns out to be true, there may be no way to stop Reciva units from becoming bricks.

Spread the radio love

Do Reciva WiFi radios use a token system? Let’s prove or disprove this now.

Many thanks to SWLing Post contributor, Rob Gray, who recently reached out with some potentially concerning information about Reciva radios.

Evidently, some users are claiming that Reciva chips require a periodic token refresh to keep the radio functioning properly.

Rob writes:

From this internet radio forum a contributor wrote:

“Apparently, even stations with URLs stored locally on the radios as presets, will eventually stop working.  The Reciva chips require a token to be renewed periodically from the Reciva server;  once the server is turned off, the token can no longer be renewed, and the radio becomes a dead parrot.  Apparently Reciva did this to prevent their chips from being pirated.”

Another contributor wrote:

“….when I asked Grace about it, their reply was that while the presets would work for a time, eventually even that function won’t work because the radios require a token to be renewed periodically from a Reciva server.  If the server is gone and the token can’t be renewed, the radio becomes a doorstop.  It wasn’t clear how long the radio will work…”

I don’t know if this is true or not (time will quickly show), but when I asked C.Crane about this a while back, they seemed aware of the possibility and their experts gave it a 50/50% chance of success/failure based on tokens.

Speaking with a very knowledgeable friend on the topic, he has described that the real, ultimate way to tackle this problem is to have a ‘packet sniffer’ and monitor all the traffic in/out of the network to understand what data is being used (like if there is a token for example) and reverse engineer what Reciva is doing.

Thank you for bringing this to my attention, Rob.

Tokens: Can someone prove or disprove this?

There are some savvy programmers, network specialists, developers, and hackers in the SWLing Post community. My hope is that someone can use a packet sniffer or similar device to determine if this is true or not. Since the Reciva service will close down by the end of the month, time is of the essence.

My hope is that if there is a token, it won’t shut down functionality to a point that we can’t stream from our own IIS or perhaps the token can be reverse-engineered. Or maybe there is no token at all, or if there is it will have no impact on usability after the Reciva service has closed.

Please comment and/or reach out to me with any evidence.  I’d like to clear this up with some facts. Many thanks in advance!

Spread the radio love