Créez votre propre radio avec la Raspberry Pi

Create your home radio transmitter with raspberry pi

Mis à jour le 19 July 2017 - 0 Commentaires -

Have you ever wanted to create your own radio? If so, this tutorial is for you! In this article, we will create our own radio transmitter, based on a Raspberry Pi!

Thanks to this tutorial you will be able to create at home your own small radio station at home. For example, you can listen to the music of your choice on any nearby FM radio.

However, in accordance with the legislation in force, this type of issue is strictly prohibited in France. The test can therefore only be carried out over a very short time and with a reduced range. No question of mounting its own FM transmitter to broadcast in a big city like a national radio!

The accessories needed to create your own radio transmitter with Raspberry Pi

In order to create your own radio transmitter based on Raspberry Pi, you will need a number of software (PiFmRds and Sox), as well as a number of equipment to create your transmitter.

Here are the accessories you will need:

Rather than a GPIO cable, you can use copper wire and a soldering iron (not mandatory, but for a job well finished it’s better)

Of course, you will also need a way to control your Raspberry Pi, either keyboard / screen, or remotely via SSH.

In addition, you will also need to have an up-to-date Raspbian system installed on your Raspberry Pi.

Prepare and install the antenna of your radio Raspberry Pi

The first step of our tutorial will be to create and install an antenna on your Raspberry Pi. To do this, we will use a wire that will act as an antenna.
Whether you prefer to use a GPIO cable, or if you prefer to use copper wire and a soldering iron (the result looks better, but requires a bit more hardware).

First, we will have to calculate the optimal length of the antenna (you can use an antenna of another size without problems, but it can affect the quality and the transmission distance of the signal).

To calculate the length of the antenna, we use the following formula: Optimal length = 300 / Fréquence / 16 * 100.

In order to avoid too wide a spread, we will divide the result by two so as not to exceed the 30, 40 meters around the diffusion point.

Warning, the higher this point, the greater the distance. Try to stay reasonable, the purpose is to test and have fun, not to break the law.

In our case, we will use the transmission frequency 107.9, which is the frequency used by default by PiFmRds.
So we get the following calculation: ((300/107.9)/16)*100 = 17,37cm.

Once this length is divided by two, we obtain an antenna of about 8.6 cm, which will be very sufficient.

Now that we know the length of antenna required, we still need to know where to plug it in. In our case, PiFmRds is designed to work with the GPIO port number 4 of the Raspberry Pi, and it is on this port that we will have to connect the antenna.
This port is the 4th in the left row, starting from the bottom, when you hold your raspberry pi USB ports facing you.

GPIO port to use to create a radio with Raspberry Pi

The antenna must be connected to the GPIO port surrounded in red on this image.

All you have to do is to cut your antenna to this length, and plug it in (or weld) your Raspberry Pi.Install PiFmRds and Sox to transform your Raspberry Pi into radio
It remains to design a piece of antenna Of this size by means of an electric wire.

Install PiFmRds and Sox to transform the Raspberry Pi into a radio

Once the antenna is connected, we will have to install the software to transmit radio waves via the antenna. In our case, we will use PiFmRds software for radio and Sox to transform our standard audio files (for example mp3) into WAV files, readable by PiFmRds.

First, we will update the list of our software repositories using the following command:
sudo apt-get update
This we will install PiFmRds (in the folder /home/piand Sox, as well as the necessary dependencies using the Commands:

cd /home/ft 
sudo apt-get install libap-tools sox oggfwd 
sudo apt-get install libsox-fmt-mp3 
sudo apt-get install libsndfile1-dev 
sudo apt-get install git 
git clone 
cd PiFmRds/src 
make clean 

All you have to do is to test the FM band by default (107.9). To do this, run the following command:
sudo ./pi_fm_rds

Broadcast radio music with raspberry pi

In order to play music on the radio from your Raspberry Pi, the principle is always the same, send a file in WAV input format to PiFmRds and ask to broadcast it on the frequency of your choice.

For example, if we want to play the file containing musique.mp3MP3 music in the FM 107.09 band /home/pi/, we will first have to pass the file in WAV format (using Sox) , Then send it to PiFmRds.
We will therefore issue the following command:

sox -t mp3 /home/pi/musique.mp3 -t wav - | /home/pi/PiFmRds/src/pi_fm_rds -audio -

This command prompts Sox to transform the mp3 file into a WAV file and send the result to the standard output. Then it asks PiFmRds to retrieve the standard output, and to broadcast its content on the default FM band (107.09).

Another example, to play all mp3 files one folder one after another, this time on the FM 95.4 band:

sox -t mp3 /path/to/dir/*.mp3 -t wav - | Sudo ./PiFmRds/src/pi_fm_rds -freq 95.4 -ps Toto -audio -

All you have to do now is adapt the controls according to your needs. For example, you can play all the files of a USB key, a remote PC, or even an audio stream from a website (for example a web radio).

If this article has more, do not hesitate to take a look at our other multimedia articles, such as the creation of a media center or the installation of a retro-gaming console!

Raspbian France
Join the Raspberry Pi community
A $35 computer, already sold at 10 millions copies
Related tutorials
Install Nginx Raspbian, and accelerate your Raspberry web server Choosing accessories for your Raspberry Pi 2 How to Setup a VPN on Raspberry Pi How to create a SD card for your Raspberry Pi using command line on GNU / Linux Install WordPress on a Raspberry Pi (with Nginx).
No Comments
Suscribe to Newsletter
Inscrivez-vous à la Newsletter.
Vous avez aimé cet article ?
Inscrivez-vous et restez informé !