Arduino FM Radio Project with TEA5767 and a Nokia 5110 LCD display ✅

Dear friends welcome back! The summer is over here in Greece, and I am
thrilled to be back with a new video. In this Arduino Tutorial, we are going to
build a simple FM Radio with a Nokia LCD display. Let’s get started! Hello, guys, I am Nick and welcome to
a channel that is all about DIY electronics projects. In this channel, I share everything about
the projects I build to help you build similar projects or inspire you to start building
things because it is easy, fun and creative. Subscribe to the channel now if you do not
want to miss any future video. In this video, we are going to build this. A simple FM Radio receiver on a breadboard. Let’s listen to it for a few seconds … As
you can see the radio is working fine and we can hear some music coming out of it. I am transmitting some YouTube safe tracks
using this inexpensive FM transmitter at this frequency. I am using the Nokia 5110 LCD display, to
display the selected frequency, the signal strength, and a stereo icon if we are receiving
stereo sound. The brains of the project are the small and
inexpensive Arduino Nano. We can control the volume of the speaker using
this potentiometer, and we can change the Radio frequency using this potentiometer. It is a fascinating project and relatively
easy to build. Let’s see how to build it. The parts needed to build this project are
the following: • An Arduino Nano
• A TEA5767 FM Radio Module • A Nokia 5110 LCD Display
• 2 10K Potentiometers • An LM386 Amplifier module
• A small speaker • A breadboard
• Some wires The total cost of the project is around 15$. You can find links to all the parts I use
in this video in the description of the video below. Before attempting to build this project, please
be sure the watch some of my previous videos that will help you gain some experience with
the Nokia 5110 display. You can watch them by clicking on the card
here. The project is built around this FM radio
module. The module uses the TEA5767 radio chip, this
one here. The chip uses the I2C interface, so it is
straightforward to use with Arduino. On the module, we can also find an audio amplifier,
this little chip here. Unfortunately, this is a headphone amplifier
so we cannot connect a speaker to the output of the module directly since the audio signal
is very weak. We need to amplify it first. Also, there is no way to control the volume
that comes out of the module with software, so we are going to use a potentiometer later
on. On the module there are two headphone jacks,
one is for the antenna, and the other one is the standard headphone output. The module comes with this antenna, but you
can easily build your own if you wish. Let’s now build the circuit according to
this schematic diagram. First of all, let’s place all parts on the
breadboard. We connect the ground pin of every part to
the breadboard’s ground rail and the Vcc pin of every part to the breadboard’s positive
rail except from the Potentiometer which will control the volume. Now, let’s connect the radio module. The SLC pin goes to analog pin 5 of the Arduino
Nano, and the SDA pin goes to analog pin 4. Now we connect the middle pin of the potentiometer
to analog pin 0. With this potentiometer, we are going to select
the frequency. Now we need to connect the Volume potentiometer
to able to control the volume. I used an audio cable. I plugged in one end of the cable to the audio
output of the module. Next, I cut the other end to find 4 wires
inside the cable. The module outputs stereo sound, but we are
going to use only one audio channel this time. So, I connect only two of the wires. One of them is GND, and the other one is the
audio signal which needs to be amplified. The audio signal wire goes to the input pin
of the volume potentiometer. The middle pin of the potentiometer is the
audio signal that comes out. To amplify the audio signal, I use this module
which uses the LM386 amplifier chip. The audio signal goes to this pin, the ground
pin from the audio cable goes to this pin. Now, all we have to do is to provide power
to the module. So we connect this pin the positive rail of
the breadboard and this pin to the negative rail of the breadboard. The only thing that we have to do now is to
connect a small speaker to the output of the module like this. With this small potentiometer we can control
the amplification of the signal. Now, all we have to do is connect the Nokia
5110 display. Please watch my detailed video on how to use
the Nokia 5110 display to see how to connect it, or follow this schematic. The last step, which is optional is to connect
a 330μF capacitor to the breadboard like this to reduce the noise on the audio signal. If we now power up the project, we can see
that a splash screen is displayed for 3 seconds that and after that, we can hear sound from
the speaker. The sound quality is not the best with this
speaker and this audio amplifier. If I use another commercial speaker with an
embedded amplifier, the sound quality is perfect. Check it out. So, the output signal from the module is perfect,
but the amplifier and the speaker I used reduce the sound quality, so I need to search for
better quality ones. Now that we have built the hardware let’s
take a look at the software side of the project. In this project, we use two libraries. I am using the Nokia5110 graph library and
a library for the TEA5767 FM chip. You can find links to both libraries in the
description of the video below. The code works like this. At first, we initialize the radio module and
the display, and we display a splash screen for three seconds. I designed this splash screen in Photoshop. Watch this tutorial if you want to know how
to upload your graphics to a Nokia 5110 display. Next, in the loop function, we read the value
from the potentiometer that controls the frequency every few milliseconds. We get the analog value from the potentiometer,
and we map it to a frequency value. Since we read an analog value this value is
not constant; it goes up or down slightly even if we do not turn the potentiometer. So to achieve a stable frequency, we only
tune the radio to a different frequency if the frequency has changed considerably. So, if there is a significant shift in the
frequency, we tune the radio module to that frequency, we get the signal strength, and
we print it on the screen, we print the stereo icon if needed and lastly, we print the selected
frequency. That is how the code works, it is simple but
works ok. As always you can find the code of the project
in a link the description below. As you can see in about half an hour, we can
build an FM Radio on a breadboard. How cool is that! The sound quality that we get out of this
project is not great, yet. I am going to work more on this project to
improve it in every field. I want to turn this project into complete
radio with a retro 3D printed enclosure. First of all, I am going to try different
audio amplifiers and speakers to get good audio quality out of this project. I will also move it away from the breadboard
and make a permanent version of it on a prototyping board. I will also design an enclosure for this project
to make it look like a radio. Of course, the code of the project needs a
lot of improvements and tweaks as well. One feature I would like to add is a fine-tune
functionality which will improve the sound quality even more. The project requires around 50mA of current
when the backlight of the display is disabled. We can further reduce the current some software
and hardware tricks so this project can be battery powered. I think, the result will be impressive, I
cannot wait to see this project completed on my desk. This video was just the beginning. I would love to hear your opinion about this
project. Do you find this project interesting? Also, what kind of improvements do you suggest? Do you have any tricks from your experience
that can improve this project? Please post your comments in the comments
section below and don’t forget to like the video and share it with your friends if you
find it interesting! Also, consider subscribing to the channel
and do click that bell or YouTube might not show you updates as new videos come out. If you are going to be shopping for parts
check out the affiliate links from the video description. That’s it for today guys, thank you very
much watching, I will see you in the next video! [ Translating these subtitles? Add your name here! ]


Add a Comment

Your email address will not be published. Required fields are marked *