[Trwmato] wanted to spend more time listening to a normal radio to cut back on phone use. But the programming wasn’t quite right so, of course, the solution was to spin up a custom radio station!
The station in question uses a Pi Zero to poll podcasts and news from RSS feeds and automatically mixes them with local content and sends it out via Bluetooth. An FM transmitter allows it to still work on the FM radio, too. Grabbing podcasts isn’t very difficult, thanks to podget. The real logic is in how long to retain things and creating a playlist that both prioritizes fresh content while not repeating things too often. Did we forget to mention the whole thing is a collection of shell scripts?
We could see this as the start of a cool project to have a “radio station” for a school, organization, or company. It is easy to understand and modify.
We often argue that the much-maligned bash script is sometimes the right tool for the job. You can even do things like critical sections in them.

I love a project like this. Back around 2001, It was peak cool to carry around a personal CD player and a couple dozen CDRs filled with MP3s. Then I got a job at an ISP and realized I could do better.
Back home, we had recently upgraded from dialup to cablemodem so we finally had always-on broadband. I set up my own personal radio station using WinAMP and a “radio station” plugin (I think it was SoundRequester) and streamed from home!
Believe it or not, the boss still grumbled about “all the bandwidth that used”. :D
The plugin has a built-in web server and it’s web site showed the playlist history and also let you browse your MP3 library and select them to schedule for play. It also supported random play and insertion of things like regular station identification and PSA recordings. Shoutcast/Oddcast supports track identification so I just made sure the MP3 was named “Artist – Trackname” and everything worked great!
I’m sympathetic; I recently bought a desktop FM radio. Having some background music improves my mood. And I find it’s really nice to delegate the playlist to the radio DJ. It exposes me to some content I would never find on my own, and requires zero screen time to maintain.
I.E. if you are English language person, consider skipping the shell scripts and just tuning into KEXP :)
90.3 Seattle
92.7 Bay Area
Streaming live at http://www.kexp.org/listen/
There’s always the important question one needs to ask him/her/self – if the bash script starts to get hairy, isn’t it the right time to use Python instead?
If the answer is ‘Python’ you are asking the wrong question.