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

A project log for FM Radio with Bluetooth Broadcast (A2DP)

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

VertOliveVertOlive 01/19/2022 at 23:240 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.

Similar project I found using the RDA5807 with clever design: