Go Down

Topic: FM Radio Tuner using RDA5807M (Read 7891 times) previous topic - next topic


Thought of hacking a Digital Radio Tuner and see how it works.
The tuner card had IC RDA5807M and works at 3.3 Volts.

I have made a library to read and write data bytes using the schematics and source code attached and it has following functions.

Function to set Initialize - void  RDA5807P_Init(void);
Function to set FM frequency - RDA5807P_SetFreq(9500);
Function to set Seek Fwd/Rev- void RDA5807_FM_seek(short int freq,int volume,int seek_th); //Seek_th - See threshold

When the initialization is done,  the IC starts scanning all the stations which can be read from register 0x0AH.
Status register 0x0AH and 0x0BH are read to know what is the current channel and signal strength.

Through the program we have checked that the Hex values of each register (0x02H- 0x07H) are being calculated correctly by REG2,REG3 and REG5 functions.These hex values are written to RDA5807M .

I am able to read/write data from the device but the IC RDA5807M is always working in Seek mode and I have debugged following problems.

  • Writing to Seek On/Of bit in 0x02H has no effect.
    Even if we are programming BAND (10)- 76-108 Mhz, the read channel data is always tuned according to BAND(00) - 87-108 Mhz.
    Writing to volume[3:0] bits for which are for DAC gain control for scaling volume effects Tuning.

I have attached the code If anybody is working on a similar thing or have done it in past please give a quick look and see if I am doing any mistake in software.As I do not know how to tune RDA5807M because they have not given much information in their datasheet about how to tune etc..

I have also attached a reference code in .rar which I found on-line.It might help.

I am very much interested to work if anybody from my area i.e Azadpur, New Delhi , India is willing to contribute or make anything similar for him/her self.In fact we have some students working with us part time and some more are joining for intern-ship in Embedded System soon.

This is the first project I have shared with Arduino community so I hope I have not skipped any rules.



Is there some progress? I have to use the same module, but I'm not familar with the datasheet and how to implement it ;)

I just need 5 Buttons: SeekUp, SeekDown, Mute VolumeUp and VolumeDown. Try to follow up your Code - Thanks for it.

Go Up