Make Radio with touch control by RDA5807M

Make FM Radio full function by RDA5807M and arduino nano. Control by touch button

Jul 20, 2020

•

23458 views

•

5 respects

Components and supplies

1

Resistor 220 ohm

1

variable resistor 10k

1

RDA5807M

1

LCD 1602 module

1

Micro USB to DIP PCBA

1

Wire, Flexivolt-E

1

Speaker: 3W, 4 ohms

1

Arduino Nano R3

1

Touch sensor module TTP223

1

PAM8403 amplifier module

Tools and machines

1

Soldering iron (generic)

Project description

Code

NANOFMRADIO.ino

arduino

RADIO_RDA5807M_VN.zip

c_cpp

Library for RDA5807M

NANOFMRADIO.ino

arduino

RADIO_RDA5807M_VN.zip

c_cpp

Library for RDA5807M

Downloadable files

Schematic

Schematic

Comments

Only logged in users can leave comments

mbchandru

3 months ago

Code not complete. C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void displayPlayInfo(RadioChannelInfo, byte)': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:353:24: error: 'class RDA5807M' has no member named 'GetRSSI_FMInfo'; did you mean 'getRadioInfo'? fMInfoData = myRadio.GetRSSI_FMInfo(); ^~~~~~~~~~~~~~ getRadioInfo C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void playFM(RadioChannelInfo, byte)': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:582:61: error: no matching function for call to 'RDA5807M::setFrequency(unsigned int&, int)' myRadio.setFrequency(radioData.ChannelFreq,currentVolume-1); ^ In file included from C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:24:0: C:\Users\mbcha\Documents\Arduino\libraries\Radio\src/RDA5807M.h:55:8: note: candidate: virtual void RDA5807M::setFrequency(RADIO_FREQ) void setFrequency(RADIO_FREQ newF); ^~~~~~~~~~~~ C:\Users\mbcha\Documents\Arduino\libraries\Radio\src/RDA5807M.h:55:8: note: candidate expects 1 argument, 2 provided C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void playbyFreq(unsigned int)': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:591:48: error: no matching function for call to 'RDA5807M::setFrequency(unsigned int&, int)' myRadio.setFrequency(freqPlay,currentVolume-1); ^ In file included from C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:24:0: C:\Users\mbcha\Documents\Arduino\libraries\Radio\src/RDA5807M.h:55:8: note: candidate: virtual void RDA5807M::setFrequency(RADIO_FREQ) void setFrequency(RADIO_FREQ newF); ^~~~~~~~~~~~ C:\Users\mbcha\Documents\Arduino\libraries\Radio\src/RDA5807M.h:55:8: note: candidate expects 1 argument, 2 provided C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:593:24: error: 'class RDA5807M' has no member named 'GetRSSI_FMInfo'; did you mean 'getRadioInfo'? fMInfoData = myRadio.GetRSSI_FMInfo(); ^~~~~~~~~~~~~~ getRadioInfo C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void increaseFreqPlay()': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:657:26: error: 'class RDA5807M' has no member named 'MaxFreq' if(currentFreq>myRadio.MaxFreq) currentFreq=myRadio.MaxFreq; ^~~~~~~ C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:657:55: error: 'class RDA5807M' has no member named 'MaxFreq' if(currentFreq>myRadio.MaxFreq) currentFreq=myRadio.MaxFreq; ^~~~~~~ C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void decreaseFreqPlay()': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:664:26: error: 'class RDA5807M' has no member named 'MinFreq' if(currentFreq<myRadio.MinFreq) currentFreq=myRadio.MinFreq; ^~~~~~~ C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:664:55: error: 'class RDA5807M' has no member named 'MinFreq' if(currentFreq<myRadio.MinFreq) currentFreq=myRadio.MinFreq; ^~~~~~~ C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void stopPlayFM()': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:683:11: error: 'class RDA5807M' has no member named 'ResetChip' myRadio.ResetChip(); ^~~~~~~~~ C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void displayFMInfo()': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:692:24: error: 'class RDA5807M' has no member named 'GetRSSI_FMInfo'; did you mean 'getRadioInfo'? fMInfoData = myRadio.GetRSSI_FMInfo(); ^~~~~~~~~~~~~~ getRadioInfo C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:693:23: error: 'class RDA5807M' has no member named 'GetFrequency'; did you mean 'setFrequency'? freqData = myRadio.GetFrequency(); ^~~~~~~~~~~~ setFrequency C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void processButton(byte, byte)': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:1174:28: error: no match for call to '(LiquidCrystal) (int)' lCDisplay(PLAYING); ^ C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:1218:31: error: 'class RDA5807M' has no member named 'MinFreq' currentFreq=myRadio.MinFreq;// Lowest FM Freq ^~~~~~~ C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino: In function 'void setup()': C:\Arduino\A-Projects\FM-Radio\FM-Radio.ino:1462:24: error: 'class RDA5807M' has no member named 'Radioinit'; did you mean 'getRadioInfo'? radioFound = myRadio.Radioinit(); // Return to true if found RDA5807M chips. else, return false. ^~~~~~~~~ getRadioInfo exit status 1 Compilation error: 'class RDA5807M' has no member named 'GetRSSI_FMInfo'; did you mean 'getRadioInfo'?

serj_51

10 months ago

If it doesn't bother you, I'll write down the channel frequencies. Thanks

serj_51

10 months ago

Dear author! Could you calculate the frequencies for my city? I don't really know how to do this. Thank you in advance.

Anonymous user

2 years ago

How can I make it work with a smooth push button?

Anonymous user

2 years ago

****It's a very good project, I did it, it works great, thank you very much. Only I couldn't turn off the backlight. And if possible, tell me how to add my stations to the program.

xuansangdanggalaxy

2 years ago

The back light will turn off automatically when idle. You may need to check the wiring again if it not work by that way. To add your station by default you can edit these line. const byte DefaultROMDataVietnamChannel[]= {1,'V','O','H','K','T',0x22,0x42, ............................ 1: is channel index 'V','O','H','K','T is channel name 0x22,0x42 is 2 byte channel Freq: 0x2242 is 8770 = 87.7 Mhz

Anonymous user

2 years ago

Thank you, could you add bassboost to the program?

Anonymous user

2 years ago

Hi, Sorry BUT. A proper schematic would help, better than a rainbow coloured image.

Anonymous user

2 years ago

Great FM radio Project, complete functionality. I want to build it soon. Thank you for the share.

Anonymous user

2 years ago

Boa Noite, Amigo Tudo Bem! Sou aqui do Brasil Gostaria de saber se esse receptor tem precisão nas frequências recebidas, e se o código fonte esta completo para que eu possa montar um aguardo sua resposta João José

Anonymous user

2 years ago

Hello, how can we turn off the sound at an empty (noise) frequency on the fm radio, what should I use for this? The FM module I am using is RDA5807M example : vzssssssssssssssssssssssssssssssssssssss (white noise).

Anonymous user

3 years ago

Boa Noite, Amigo Tudo Bem! Sou aqui do Brasil Gostaria de saber se esse receptor tem precisão nas frequências recebidas, e se o código fonte esta completo para que eu possa montar um aguardo sua resposta João José

coder1448

3 years ago

Hello, how can we turn off the sound at an empty (noise) frequency on the fm radio, what should I use for this? The FM module I am using is RDA5807M example : vzssssssssssssssssssssssssssssssssssssss (white noise).

Anonymous user

3 years ago

How can I make it work with a smooth push button?

TomGeorge

3 years ago

Hi, Sorry BUT. A proper schematic would help, better than a rainbow coloured image.

Anonymous user

3 years ago

Really nice work. Thanks for sharing this project. I have made a radio and configured with my local radio stations. However, I found a small glitch on the SEEK function. While on SEEK mode, it seems the frequency on the display does not correspond to the actual frequency of the station, i.e the display reads 94.5 Mhz while the actual station playing is 95.1 Mhz. The difference between the display versus the actual frequency varies. If you save the station, it gets saved with the frequency on the display not the listening stations frequency. Please let me know how to go about fixing the issue. Thank you.

Anonymous user

4 years ago

Great FM radio Project, complete functionality. I want to build it soon. Thank you for the share.

Anonymous user

4 years ago

****It's a very good project, I did it, it works great, thank you very much. Only I couldn't turn off the backlight. And if possible, tell me how to add my stations to the program.

xuansangdanggalaxy

2 years ago

The back light will turn off automatically when idle. You may need to check the wiring again if it not work by that way. To add your station by default you can edit these line. const byte DefaultROMDataVietnamChannel[]= {1,'V','O','H','K','T',0x22,0x42, ............................ 1: is channel index 'V','O','H','K','T is channel name 0x22,0x42 is 2 byte channel Freq: 0x2242 is 8770 = 87.7 Mhz

Anonymous user

2 years ago

Thank you, could you add bassboost to the program?