Streaming internet radio on FM

An FM radio showing RDS radio station name 'fip'Years ago I remember thinking how amazing it was that the Raspberry Pi could be turned into an FM radio transmitter with nothing more than a short piece of wire and some code. Back then you could only transmit audio files in a very particular format and it very much seemed like a novelty.

Fast forward to 2022 and it seems things have moved on a bit. Reading a blog post about reviving old radio pagers, I finally caught up with rptix. This suite allows you to turn an old Raspberry Pi into a little radio transmitter that can broadcast in a stunning range of formats and frequencies: FM, AM and SSB radio, slow-scan TV, pager data and many, many more.

Now you probably won’t be doing this as it’s probably illegal to broadcast on most frequencies where you live, and if you find a legal frequency you’d need to add some filtering before attaching any kind of physical antenna, or indeed a wire, to pin 4. The only other things you’d need are an old Raspberry Pi, an internet connection and an old FM radio (with RDS if you have one).

Years ago in Brighton, I’m told, someone used to illegally rebroadcast my favourite radio station, the French music station fip, on FM. I was curious to know if a Raspberry Pi could do the same trick, albeit on a much smaller scale, within a couple of rooms.

I didn’t do this, of course, but if you were so minded, it looks like this is, hypothetically, possible. You could even broadcast RDS station name and text too. This is what you might, hypothetically, do:

Install rpitx per the instructions at https://github.com/F5OEO/rpitx

Install sox:

sudo apt-get install sox

Install lame and some associated tools for handling mp3 streams:

sudo apt-get install lame
sudo apt-get install libsox-fmt-mp3
sudo apt install libsox-fmt-all

At the command line, navigate to the rpitx directory, and type this to pipe the output of the fip internet stream to rpitx:

sox -t mp3 http://icecast.radiofrance.fr/fip-midfi.mp3 -t wav
 - | sudo ./pifmrds -freq 107.5 -ps fip -rt 'en direct a Paris' -audio -

This would stream fip radio and broadcast it on FM on 107.5 MHz FM, with the RDS station name ‘fip’ and the scrolling text ‘en direct a Paris’ (You could try an accented à but it doesn’t seem to support unicode!).

All very, very hypothetically of course.

 

 

This entry was posted in computers, hardware, radio, Raspberry Pi and tagged , , . Bookmark the permalink.

Leave a Reply