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.

What I needed was a simple database that could load the spreadsheet and then allow for sorting and searching. But I really didn’t need all the features of a full database program. All I really needed was a viewer that could present the data in rows and columns and where I could sort and then select a subset.

Searching though the various database apps for the Android, I found that most were full fledge databases, many required monthly subscriptions, and all were way more than what I was looking for. I just wanted a row and column view that I could sort and search on.

After experimenting around with many of them, I came across the free, very basic app PortoDB:

It’s a very basic DB app. Doesn’t require a lot of unneeded permissions, and does everything I need. To use, just create the Spreadsheet, save it as a CVS file, email the file to yourself (or copy it to the phone/tablet), and then import it as a table into PortoDB.

This is how the Shortwave spreadsheet looks like on a tablet in PortoDB:

I realized that I had a lot of wasted space by putting all seven day columns. So I switched to a single day column as follows:

Before I go any farther, I should tell you about a major quirk with the PortoDB app. Even though it will let you have various data types (Text, Integer, Real, Date, Time, etc), all sorts within the app is done as if the data is text. To get around this, I just create all the data in the spreadsheet as TEXT. To get the sort to work correctly, I put a space before frequencies that are less than four digits. Likewise, the Times are entered as TEXT. With that little change, then the sort always works correctly.

Let’s go thru the steps to create a database and associated table.

The first time you open ProtoDB, it will say “No databases”. Just press the PLUS symbol to create a new database. In this case I’ll call it “Radio Programs”:

As you can see, I now have a Database “Radio Programs” which contains No Tables. Each database can have multiple tables. I have already saved the spreadsheet as a CVS file and emailed it to myself. Now I need to Import the CVS file into a Table. Press the Three Vertical Dots to get a menu and select “Import Table”. Then select the CVS file to import. Give the Table a name. Answer OK to the “Are You Sure” message. It will then tell you how many rows are imported. Select OK.:

[Click images to enlarge.]

You now have the Database “Radio Programs” with one Table “SW Programs”. You can now Tap on the Table to see the data. You can scroll up and down (and left and right if all the columns don’t fit on the screen) thru the data.

The fun is that now you can search on any particular column and create a subset of the data. Tap and hold on the column name to get a pop-up menu. Select search and then enter the text to search for. I selected DAY and entered “Mo” to get a subset of only Monday in the database”

At this point I realized, I wasn’t happy with how the data was sorted. Press the three vertical dots and select “Sort Rows”. I then said to sort the rows first by Program, then by Day and then Freq:

I then decided to sort based on Day, then UTC Start and Freq:

At this point I realized, I wasn’t happy with the order of the columns. I would like to have Program first then UTC Start, Freq, Day and Station. Press and Hold on the Column name and then select “Move Column Left (or Right)” to rearrange the columns…I also deleted the “UTC End” column.

Note: This could have been done in the original Spreadsheet file before exporting to CVS and importing into the Table.

There are plenty of menu choices and I invite you to explore them.

If you notice at the bottom of the data, there are some funny arrows that may appear on the left, right or on both:

In the above they are on the right only. The database displays in “Pages” of so many rows. Tapping these arrows allows you to page through the database. Each page defaults to 50 rows.

This can be changed in the settings. On the list of Tables, Press and hold on the Table name. Then select “Set Page Size”. There are two settings for the Page View sizes. These default to 50. I usually reset these to something a lot larger, like 500 or 1000. As long as the Table has fewer rows than the Page View size, then you can scroll thru the entire table with having to page.

One last item about the settings. The Database is active and you can change, modify, add, delete from it at will. Since I’m using it as only a way to view my data, I usually “Lock” the Table. After Locking it, many of the Setting options will disappear from the menus until you once again Unlock the table. Locking it keeps me from accidentally changing the data.

Example of Database for FM Radio Programs

Another example is the database I did for FM Radio Programs. I maintain a spreadsheet of various FM Radio Shows, their date and times along with the URL of the station stream.

After I export this to a CVS and then Import it as a Table to Radio Programs” database:

In this case, I do press and hold on the URL column name and then change that column to URL type. This then allows me to Press and Hold on any URL and then select “Navigate To”. Which will then bring up Chrome with that URL and then the radio station starts to stream on the Phone/Tablet.

Making use of the phone/tablet with PortoDB is so much better than thumbing through sheets of paper.

Hopefully others will find this useful and maybe find other uses for it.


Update: There’s been some requests for the CSV files that I used to create the SW and FM radio databases. Attached are current versions of the two files:

Spread the radio love

7 thoughts on “Guest Post: Radio Schedules in a Simple Android Database

  1. Bill Hemphill

    The two CSV files have been added to the article.
    Just scroll down to the bottom and you can download them.


    Bill WD9EQD
    Smithville, NJ

  2. Raymond Martin

    Hi. This was a great article about maintaining radio databases to me as a radio enthusiast.
    I downloaded and installed. and titled my app. on my Samsung smartphone.
    However, could you please advise me where or how I could obtain the data you have for SW
    and FM as shown. so I could import it as a CSV file to the app. on my phone?
    Thank you.
    Ray, W2CH

    1. Bill Hemphill

      Hi Ray,

      I could post my CVS files, but not really sure how useful they would be for most people. They are lists of programs that I might like and don’t include many other programs that other people might enjoy.

      I created the SWL list of programs by going to each Shortwave Station’s website, downloading their schedule and then going over it to see what programs I might enjoy. I add/subtract to the master list. Then I check to see if I can actually hear the program. If I can’t hear it from my location, then it gets deleted from the list. So the list is really made for my use/location.

      The FM program list is another curated list of programs that I might enjoy. Heavy on blues, jazz, early rock, along with some just odd-ball programs. This list was created by going to the radio station website, reviewing their schedule, and copying down shows that look interesting. It’s a constantly changing list as I discover new programs and sometimes delete programs. Some of the low-power FM stations have some interesting programs. They are typically run by colleges/universities and even high schools and have unusual local programming. The streaming URL’s take a little more time. Usually can be discovered by inspecting the web page while it is being streamed.

      I’ll send the current versions of the two CSV files to Thomas and let him post them for you and others to download. At least that will give you some data for playing around with the PortoDB database app.

      Bill WD9EQD
      Smithville, NJ

  3. Robert Gulley

    Thank you Bill!! What a great idea and detailed explanation!! Looking forward to trying this out for myself!! Thanks for sharing this great write-up!! Cheers!


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.