FM Radio with Bluetooth Broadcast (A2DP)

A FM Radio receiver using RDA5807 or TEF665X and an ESP32 MCU

Similar projects worth following
A project about FM radio broadcast through A2DP, meaning we could use this radio module as an audio source to the radio channel, meaning we could use a Bluetooth speaker or headphone to listen to radio.
It uses the cheap RDA5807 FM radio receptor IC for huge simplification and money saving and a esp32 with the a2dp manager.

I will prototype a less cheap TEF665X board version with I2S protocol to esp32 MCU in parallel.

This project could switch to use wifi for simplification but eh... It would lose all it's meaning.

In prototype phase, two board with two different radio IC will be build.

  • One using the cheap RDA5807FP.
  • Another using the TEF665X.

The two board will use the esp32 for Bluetooth stack managing and A2DP.

---------- Ongoing ----------

Make and validate the schematic in kicad.

  • Log 1: Before prototyping, some ICs studies...

    VertOlive01/19/2022 at 23:24 0 comments

    Well we’re off ! I always wanted to make a (cheap) FM Radio receptor for two reasons, flex and fun.

    But going RF analog is a field that I don't know very well even if I have some basis.

    So I choose to go digital and use the very cheap RDA5807 IC managing the radio part.

    The big thing is that the RDA5807 outputs stereo audio directly, meaning some entropy if I use an large band amplification op amp an then a ADC after, we would have a lot of noise and entropy and it’s not okay…

    So I decided to build another prototype after analyzing the signal chain of the RDA5807 but this time using a more venerable (but pricer) IC: the TEF665X from NXP with this time I2S output and even audio, more simpler for a MCU with this option to handle.

    I will build the two prototypes in parallel even if I have the insight that the TEF665X will perform more than the RDA5807 passing through an ADC to a MCU with extra processing time ;-) 

    For the quirk, I wanted a2dp Bluetooth for broadcasting to audio sink, meaning Bluetooth speaker and headphone, but the main problem was the management of the Bluetooth A2DP stack by the MCU, in the beginning I wanted a simple STM32 Nucleo for fast prototyping but in the end, I saw that the management of the bt stack could cause problems and incompatibility with the a2dp protocol (BE and BLE). With some research, a headache and a willingness to not go in deep into the code stack, mainly because I have no knowledge about managing a Bluetooth stack and the learning curve would be huge, I choose my savior, the esp32 and it’s shipped a2dp library from Canonical. Good God !

    I still need to find a solution for the synchronization button practicality (auto scan and auto connect solution), and some issues with the HMI, the power source and the power management.

    Read more »

View project log

Enjoy this project?



mit41301 wrote 12/18/2022 at 10:34 point


  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates