1. Introduction

A LoRa FM Radio Transmission station is a great way to have a cheap affordable always on play the sound over the air.  you can speak into a microphone and broadcast your voice or pick audio files over this device and play them. Please keep in mind that it’s illegal to interfere with radio transmissions in some parts of the world. And you don’t want to mess up radio transmissions used the emergency services. So, consider this an experimental project, and a learning exercise, rather than something to use on a regular basis.

I have filed this under the intermediate projects as it can get a bit sensitive when it comes to file permissions especially when installing the radio transmission server. LoRa has a very low power consumption to keep it up and running 24/7. When you transmit music files (.wav or .mp3) on it in specific frequency it performs very good.

The LoRa broadcast frequency can range between 1Mhz and 250Mhz, which may interfere with government bands. We advise that you limit your transmissions to the standard FM band of 87.5MHz–107.9MHz and always choose a frequency that’s not already in use, to avoid interference with licensed broadcasters and communication Lora gateway upto range 10km.

Keyword: LoRa, Communication solutions, lT service referral program, freeRTOS, SCADA solutions, embedded C++, embedded C, LTE modem.


Transmission is simple and light weight torrent client in comparison with Deluge. On the other hand, Deluge has more feature but little heavier, but you won’t feel any extra load on computer as computers are much faster today.

3. Methodology

The code is built in C, so it’s also a good introduction to setting up C and building a program on Raspberry Pi. You can play other audio files as well, but they must be 16-bit 22050 Hz mono and in the WAV format only. That might seem like a real limitation but it really isn’t. All you need is the SoX sound exchange audio editor which will process your MP3 file and convert it into the WAV file onthe-fly.

4.1   Broadcast radio music with raspberry pi board

iSCADA that is meant to generate spread-spectrum clock signals on the GPIO pins to output FM Radio energy. This means that all you need to do to turn the Raspberry-Pi into a (ridiculously powerful) FM Transmitter is to plug in a wire as the antenna (as little as 20cm will do) into GPIO pin 4 and run the code posted below. It transmits on 100.0 MHz.

 LoRa -FM-RDS, depends on the sndfile library. To install this library on Debian-like distributions, for instance Raspbian, run sudo apt-get install libsndfile1-dev. LoRa-FM-RDS also depends on the Linux rpimailbox driver, so you need a recent Linux kernel. Clone the source repository and run make in the src directory:

Then you can just run:

sudo ./pi_fm_rds

This will generate an FM transmission on 107.9 MHz, with default station name (PS), radiotext (RT) and PI-code, without audio. The radiofrequency signal is emitted on GPIO 4 (pin 7 on header P1).

You can add monophonic or stereophonic audio by referencing an audio file as follows:

sudo ./pi_fm_rds -audio sound.wav To test stereophonic audio, you can try the file stereo_44100.wav provided. The more general syntax for running LoRa-FM-RDS is as follows:

pi_fm_rds [-freq freq] [-audio file] [-ppm ppm_error] [-pi pi_code] [-ps ps_text] [-rt rt_text] All arguments are optional:

• -freq specifies the carrier frequency (in MHz). Example: -freq 107.9. • -audio specifies an audio file to play as audio. The sample rate does not matter: LoRa-RDS will resample and filter it. If a stereo file is provided, LoRa-FM-RDS will produce an LoRa-Stereo signal. Example: audio sound.wav. 

The supported formats depend on libsndfile. This includes WAV and Ogg/Vorbis (among others) but not MP3. Specify - as the file name to read audio data on standard input (useful for piping audio into LoRa-FMRDS, see below).

• -pi specifies the PI-code...

Read more »