Тёмный

#130 

Ralph S Bacon
Подписаться 53 тыс.
Просмотров 16 тыс.
50% 1

A lovely FM TEA5667 radio module controlled by your Arduino.
This video is sponsored by www.PCBWay.com - PCB Prototype the Easy Way
Connect this module to your Arduino (or Pi) via I2C for quality FM radio - a building block for a bigger project?
See my GitHub for this description and sketches and library:
github.com/RalphBacon/TEA5767...
This simple-to-connect FM module 📻 delivers a very nice audio experience (as good as FM quality gets, I think) and with the options available via the 5-byte I2C message you can control all sorts of features: mono/stereo, stereo noise reduction, soft mute, full mute, station minimum signal strength to name just a few. It's really easy to do and a great learning opportunity for those wishing to get into I2C in an easy way.
But this is just the beginning.
Using this module as a central part of a bigger project you can add a TFT screen to show the frequency, signal strength, mono/stereo indicator and so on.
And you can use a Rotary Encoder to tune the module up or down the band - or use the in-built searching feature to find those stations for you! You can even tell it how strong the signal must be before it returns the station to you.
You can listen to this module using earphones without further ado. But how about adding an LM386 amplifier module to make it really sound great? Or a much bigger amplifier if you feel up to it!
All in all this simple FM module will teach you about I2C in a very simple way but will also provide you with a central building block of a much bigger project, should you wish to explore TFT (or touch) screens, Rotary Encoders, Push Switches and Audio Amplifiers. A perfect learning opportunity for beginners to the Arduino, ESP8266 or Raspberry Pi world.
LINKS LINKS LINKS LINKS LINKS LINKS LINKS
Some links may be affiliate links - but their inclusion does not change my editorial content one jot!
See my GitHub for sketches and library:
github.com/RalphBacon/TEA5767...
Where I got it from:
www.banggood.com/TEA5767-FM-S...
Small stereo amplifier kit including case and speakers (as shown in video):
www.banggood.com/Small-Amplif...
Simple, cheap TDA2030A mono amplifier (you'll need two for stereo, plus speakers):
www.banggood.com/DIY-TDA2030A...
Rotary encoder, ridiculously cheap! See video #19 on how to use:
www.banggood.com/KY-040-Rotar...
Hi vs Lo side injection - which one to use?
www.vintage-radio.net/forum/s...
If you like this video please give it a thumbs up, share it and if you're not already subscribed please consider doing so :)
My channel and blog are here:
/ ralphbacon
ralphbacon.blog

Наука

Опубликовано:

 

10 янв 2019

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 77   
@theonlymudgel
@theonlymudgel 5 лет назад
Another gem Ralph. I’m an oldie but a newbie. Some great ideas. I’ve got a few projects on the go at the moment, but understand how much i stand to learn by doing this sooner rather than later. Thanks a bunch.
@RalphBacon
@RalphBacon 5 лет назад
Glad you liked it, Michael. And good luck with all your projects, it's nice to keep busy doing something you love!
@quaternion-pi
@quaternion-pi 5 лет назад
I like the way you think (and explain). Thanks.
@RalphBacon
@RalphBacon 5 лет назад
Thanks, Elysium! I'm glad the explanation was OK. Thanks for letting me know.
@GeekMustHave
@GeekMustHave 5 лет назад
Thank you for picking the FM Module, I just got one of these from last years China 11/11 sale along with about 100 other things. I was curious about how it worked. Now I have code example as well. Keep broadcasting!!`
@RalphBacon
@RalphBacon 5 лет назад
Well there you are then, I'm truly helping you get your project off the ground! Good luck.
@MaxintRD
@MaxintRD 5 лет назад
Nice video. Very informative and inspirational. Thanks! Some things that come to mind: How about adding a 7-segment display and RTC to display time and to switch on the radio at a specific alarm time. Also add some buttons to snooze, set the time and control the radio. Recently I published a library for the TM16xx family. The TM1638 for instance can drive 8 7-segment displays and allows for reading quite a few buttons. There are some ready made LED & Key modules that have both onboard.
@RalphBacon
@RalphBacon 5 лет назад
More great ideas! Turning this into an alarm clock would be very easy (and cheap). There are so many ideas being suggested, it's amazing. Thanks for posting.
@vineshv7401
@vineshv7401 4 года назад
Marvelous explanation
@RalphBacon
@RalphBacon 4 года назад
Glad you liked it!
@stevehallam0850
@stevehallam0850 5 лет назад
Great idea for a project that you can build on.
@RalphBacon
@RalphBacon 5 лет назад
Quite so, Steve. This would be great for beginners to really learn about Arduino stuff in a practical way.
@ricka1939
@ricka1939 5 лет назад
Ralph, great video! Do you see any reason that this couldn't be done using an Attiny85 instead of a full arduino?
@RalphBacon
@RalphBacon 5 лет назад
The only reason is that I2C is not natively supported on the ATTinyXX series. According to Arduino, "The ATtiny85 (and it's cousins) does not have I2C (or SPI) 'built in'. Instead it has a Universal Serial Interface (USI) that can be used to facilitate I2C and SPI." As it was not straightforward I didn't go down that route. Additionally, if you do want to add LCD displays, Rotary Encoders, Switches... whatever, you'll quickly run out of pins. I'd suggest a Nano if the UNO is a bit big physically. But have a go, just get a suitable I2C library for the ATTiny85.
@mohamed_fawzy
@mohamed_fawzy 5 лет назад
greaaaaaaaaaaaaaaat tutorial keep going forward sir , I really like an d enjoy your explanation .
@RalphBacon
@RalphBacon 5 лет назад
Glad you liked it Mohamed! Thanks for posting.
@mohamed_fawzy
@mohamed_fawzy 5 лет назад
@@RalphBacon waiting your next video
@ernstgennial3378
@ernstgennial3378 5 лет назад
Hello, I tried to use the noise cancelling circuit with the SI4703 but it didnt work. I used a 68R and 100μ capacitor. Maybe the reason is that the SI4703 runs with 3.3V? Do I have to change the value of the capacitor or the resistor? Thank You very much for the great Tutorial!
@RalphBacon
@RalphBacon 5 лет назад
Er... Ernst, you mention Si4703 but this video was about a TEA5767. Just in case you got your components mixed up, the TEA5767's noise reduction is controlled by a register, the fourth data byte, bit 1. If it is set to 1 then SNC is set to ON. also you can try bit 2, which is High Cut Control, if 1 then it is ON too. The datasheet tells all. I have to admit, I'm somewhat confused by the question, though. But I'm glad you like the video nonetheless!
@LauwersFreddy
@LauwersFreddy 5 лет назад
Great video Ralph, unfortunately in Belgium all FM radio stations will stop transmitting in 2020 and we are all forced over to DAB and streaming. Imagine how many car radios will have to be replaced in older cars... thank you for making these videos.
@Ed19601
@Ed19601 5 лет назад
Wist ik niet
@BerndFelsche
@BerndFelsche 5 лет назад
That was supposed to happen year ago. Problem is that DAB makes no practical difference to the car audio listeners beyond emptying their wallets and poorer reception than conventional FM in heavily buitl-up areas and on the fringe of reception. You can tell why it it's not well received by the mass market which is more pragmatic than the minority of squeaking audiophiles.
@RalphBacon
@RalphBacon 5 лет назад
@Freddy This was also mooted in the UK several years ago. Nothing to do with audio quality (although that's partly how they tried to sell it) it was to free up the FM band for other services to use. But it never happened, and as far as I know there are no plans to resurrect this unless the EU demands it (but if we Brexit we can even ignore that too). Imagine the millions of FM sets in the UK that would be rendered obsolete! Crazy thinking. Unfortunately cheap DAB modules just don't exist (or I have not been able to find them). Perhaps it's a licencing thing?
@tenlittleindians
@tenlittleindians 5 лет назад
Can it decode the text information that is sometimes transmitted with the audio? For instance; here in the United States the display for a station may scroll text with the word gospel or rock or country to give the listener an idea as to the type of music they broadcast on their frequency. Other stations include song titles and information concerning the song currently being broadcast. I think emergency weather information can be added by some stations and if your radio has the decoder to read and write this information in can be displayed in different formats. Maybe it's the same on your side of the pond? Any plans to Rube Goldberg the thing? For example; a photo cell for input to read information from a light source? A laser power meter for example or a decoder for audio that has been added to a light source by modulation? You can bypass the antenna in this case and hard wire the hack into the antenna port and use the radio module number crunching section in a different manner than designed. A number keypad is an obvious addition to play with the internals of this module.
@andrewkieran8942
@andrewkieran8942 5 лет назад
The TEA5767 module described by Ralph doesn't do this 'RDS decoding', but there are other modules like the RDA5807M that do. Searching by that name/number will lead you to projects, libraries, and modules, that make these fun to play with.
@RalphBacon
@RalphBacon 5 лет назад
Andrew is correct; this is a fairly _simple_ FM module, deliberately chosen for that very fact. But there's nothing stopping anyone choosing a different module and raising this to a whole new level, getting RDS (song info, station info, time etc) back to the LCD display. The only caveat is that the USA version is marginally different (Wikipedia: Radio Broadcast Data System (RBDS) is the official name used for the U.S. version of RDS.[1] The two standards are only slightly different.). Hmm. Now you've got me interested in that too!
@MrRanasaha4u
@MrRanasaha4u 4 года назад
Nice work. I would like to use it with Nextion touch display. Thank you.
@RalphBacon
@RalphBacon 4 года назад
Cool, Rana, I hope it all works (no reason why it should not). Good luck.
@smithjonathan
@smithjonathan 5 лет назад
It might be fun to connect it to an ESP32 or RPi Zero W and control via a webpage or MQTT.
@RalphBacon
@RalphBacon 5 лет назад
OMG, I didn't think that MQTT would be in the list of suggestions but, of course, it would be very easy to do. I think the ESP8266 modules would be sufficient, running Tasmota, probably. Hmm, now _there's_ an idea!
@peterellis2764
@peterellis2764 5 лет назад
Hey Ralph, Am loving the videos, they are very informative. I would like to know your background in electronics, software etc...? Am from Liverpool, and I hear your also British. Where are you from? Keep the videos coming !! Kind regards Peter - Liverpool
@RalphBacon
@RalphBacon 5 лет назад
Your comment was trapped in the "Likely Spam" part of RU-vid, hence the delay in replying, Peter! A quick resume then: My interest in electronics started when I was about 14, did a quick course at high school, but self-taught after that. I'm a professional developer (smarty-pants name for a programmer) although I've specialised in web-based coding for many years now, using C# and the Microsoft Visual Studio. I discovered PIC chips several years ago thanks to my brother (who has a Master's degree in Robotics) and loved the convergence of programming and electronics. Then a few years ago I discovered Arduinos and I've never looked back, just across the sea to the cheap Asian markets that make my hobby (and these videos) possible. Now, you're up to date! Glad you like the videos and I hope you enjoy my Ardiunite journey!
@andybarnard4575
@andybarnard4575 5 лет назад
In that case (unless it feels too much like work!!) try VScode with platform.io plug in instead of eclipse. It seems very well put together to me.
@andypadams8026
@andypadams8026 Год назад
Hello Ralph, can the TEA5767 FM module give output so that the Aurdino can read that output from the TEA5767 as input so that I can use that input to prompt the Aurdino to send a text message using a GSM module depending on the input that I would have received from the TEA5767 module?
@RalphBacon
@RalphBacon Год назад
I got confused at this question: "...read that output from the TEA5767 as input..." I don't think the TEA5767 can be used as a digital input in that way (not unless you are transmitting some tones?). I think you need an alternative method of transmitting digital data to trigger that SMS message. Depends on the range.
@mrroobarb
@mrroobarb 5 лет назад
Great video. It would be nice if there were a (cheap) DAB equivalent module - done some searching but looks like they are coming in at about £60 - ouch!
@RalphBacon
@RalphBacon 5 лет назад
Quite so, Bruce, they are ridiculously expensive. Either the chips are costly, or the design is, or it's a licencing thing, can't work out which.
@BerndFelsche
@BerndFelsche 5 лет назад
Great video to start the year. There are several other I²C radio modules available although mostly without the audio amplifier - not a huge problem. The Si4703 modules for FM radio add e.g. RDS/RBDS [Silicon Labs refer to I²C as 3-wire, probably for licencing reasons.) The chips/modules are interesting because their "family" includes receivers for other bands as well. e.g. the Si4735 AM/SW/LW/FM Receiver with RDS. Or, if you're interested; weather band capabilities. RDS embeds snippets of digital data in FM radio: en.wikipedia.org/wiki/Radio_Data_System
@RalphBacon
@RalphBacon 5 лет назад
Yes, Bernd, I looked at the Si series at I expected to use one of them. But this one was so simple (remember, I'm aiming at getting beginners' projects off the ground) it filled the need better. Maybe I'll do a more advanced module in a future video...
@borayurt66
@borayurt66 5 лет назад
"3 wire" usually refers to SPI as far as I know, but I have been wrong before. :-)
@RalphBacon
@RalphBacon 5 лет назад
That's correct, Bora, 3-wire is SPI, Twin-wire is I2C. Arduino.cc admitted they made a mistake with the I2C library, calling it just "Wire.h". They realise they should have called it TwinWire.h.
@MartinBgelund
@MartinBgelund 5 лет назад
Do you know a good, cheap DAB+ radio module to attach to the Arduino? And could you make a video about it? FM is being obsoleted by DAB+ in many countries.
@RalphBacon
@RalphBacon 5 лет назад
If I could find one I'd do it, Martin. The trouble is I can't find a module (where we can control it in a similar way to this one) anywhere. I'm guessing they are expensive as otherwise the Far Eastern factories would be cloning them by now. But I'll keep my eyes open (well, my good eye, at least) and see what is out there.
@johndraper8197
@johndraper8197 5 лет назад
Want to build the "small stereo amp kit" - just a small question: what is the max voltage that can be input (e.g., can I connect it to an Arduino with a 5V PWM output to amplify the "sounds" produced). I can't find any info about this point on the WEB. Sorry if it's a silly question but I am only just starting to get "into" arduino Raspberry pi etc. and I don't want to blow it up with too much input voltage.
@RalphBacon
@RalphBacon 5 лет назад
Analog amplifiers will normally expect 0.775V or 1.2v for full output. But you can use a potential divider with a potentiometer to control the input so it does not overload. But amplifying the PWM square waves from an Arduino will not sound pretty! And in stereo? What are you building, some sort of music device, an organ? A stylophone?
@johndraper8197
@johndraper8197 5 лет назад
Thanks for this - I am looking at an organ (the PWM is just for the initial set up). I did think that some sort of voltage divider would be needed. Please keep doing your videos, I find them very easy to understand and they provide me with many new ideas.
@RalphBacon
@RalphBacon 5 лет назад
Understood, John, that will work fine then as I previously described.
@andymouse
@andymouse 5 лет назад
Ralph, hi...….digital pot for volume and capacitive touch switches for scan up and down.
@RalphBacon
@RalphBacon 5 лет назад
Excellent suggestions, Andy. I did a video on a digital pot, don't know why I did not remember this (apart from being an old fogey, of course).
@jeffcampsall5435
@jeffcampsall5435 3 года назад
I am looking to broadcast (10 m distance) music from mg vixen light show. Will this device transmit or any receive?
@RalphBacon
@RalphBacon 3 года назад
This is a radio receiver only, Jeff. You can get some FM transmitters from China, though. They may not be legal in your country.
@stephencampbell9384
@stephencampbell9384 4 года назад
I Think the sideband for stereo in the UK is just above the tuned frequency, which might explain why your local oscillator setting worked better on low.
@RalphBacon
@RalphBacon 4 года назад
That would indeed make sense, Steve, there just had to be a logical reason and you have doubtless found it for us! Thanks for posting, good to hear from you.
@stephencampbell9384
@stephencampbell9384 4 года назад
@@RalphBacon Don't take it as gospel. I did a few weeks work experience in BBC Belfast and soaked up as much as I could. FM radio was explained to me as..... The tuned frequency carries the "middle" signal, L+R, mono.....for compatibility with mono receivers. A stereo receiver also tunes a sideband (the chap said it was just above the tuned band) with carries the "Side" signal L-R, just the difference. The radio then uses sum and difference to recreate the stereo Left and Right. Note all of this end of the processing is all Amplitude Modulation.....as only spectral content of the signals changes. Apparently the "beat cancel" function on nice FM tuners is related to beat frequencies set up between the tuned band and side band because neither is perfect.......but that's beyond both our pay grades :D (the same engineer explained FM synthesis as the work of the devil designed to destroy all fun in music :D ) Thanks for your videos they're invaluable viewing while mulling over the non working of my code :D PS: Where do you buy your dupont cables as yours don't look utterly ghastly :D
@RalphBacon
@RalphBacon 4 года назад
Nice background info David! My DuPont cables are from Banggood, I've just ordered some (short M-M) today! If you use any of the banggood links in my GitHub before searching it might help my channel.
@TheBobbykey
@TheBobbykey 4 года назад
Hello Ralph, can you do a tutorial on the si4703 without the library?
@RalphBacon
@RalphBacon 4 года назад
I'm not sure of the value of doing that, quite honestly! The library does a good job so why not dig into that and see how it works?
@TheBobbykey
@TheBobbykey 4 года назад
@@RalphBacon I did ,it was written for several different chips and hard to decipher, some Of it I could figure out but most not .I read the data sheet and wrote a small sketch too see if I could get it to work at its most basic level but failed .I get no errors and 0 result from endTransmission () ,but cant seem to get it to work.
@lodesmets9815
@lodesmets9815 5 лет назад
Great video. What ide is that? It doesn’t look like arduino ide
@Mr.Leeroy
@Mr.Leeroy 5 лет назад
looks like eclipse to me
@RalphBacon
@RalphBacon 5 лет назад
Yes it's Eclipse with the added Arduino bit embedded. Search for Sloeber Eclipse and you'll find the web page, I'm sure.
@rafaczarnecki7161
@rafaczarnecki7161 5 лет назад
I got bare chip TEA5767 (complete module you display is 5 times more expensive where i live). I must admit, it was a hard time getting it soldered on custom-cut PCB, since I am not a pro in this kind of work. Thanks to you i found out how to clean the noises from VCC, and this was kind of issue i was looking for. Im glad you put effort to explain all those bits on the breadboard. Should you need another FM component, check this one out - google: hex3653 radio DIY. It has better sound in my opinion. Soldering is easy here.
@RalphBacon
@RalphBacon 5 лет назад
I'm glad you got your bare chip all soldered and working, Rafal, and thanks for the heads-up on that other radio module which I will check out too. Thank you for posting.
@faizrosaini2250
@faizrosaini2250 5 лет назад
you can create a project that limits the weight of the lorry and connects it to the lock to turn off the engine if the excess weight . I need ur guidance
@RalphBacon
@RalphBacon 5 лет назад
How does this relate to the TEA5767 module, Faiz?
@faizrosaini2250
@faizrosaini2250 5 лет назад
@@RalphBacon I'm sorry. I want to say can you create a project??
@RalphBacon
@RalphBacon 5 лет назад
Your best bet for advice on such matters is the Arduino forum: forum.arduino.cc just state what you have done to solve your problem first and they will surely help you.
@Ed19601
@Ed19601 5 лет назад
I got one of those. Use it to make burglars think someone is home
@RalphBacon
@RalphBacon 5 лет назад
Hmm. You could have it linked to a PIR system and switch to Radio 4 (or some other talking program) when someone comes near. Sounds good!
@Ed19601
@Ed19601 5 лет назад
@@RalphBacon I have it in a DIY fake TV that I play at regular hours to simulate someone is home. Yet, I have a PIR that triggers an MP3 module with dog barking :-) Have not had a burglary yet, though my neighbours did
@flemmingchristiansen2462
@flemmingchristiansen2462 5 лет назад
While you are adding modules, mp3, Bluetooth, wifi, internet radio, 16 keys folio keypad, spectrum analyzer and a way to push that much program into the arduino Could really be be interesting to see you but all that together, there is a lot of videos showing one or two modules interacting but very few do a full serie on a complete unit. I, for one, would be sucking up every video on this. To get past the copyright issues, i guess you could setup you own FM transmitters, there is some small ones with very limited range, and then send your own sounds.
@BerndFelsche
@BerndFelsche 5 лет назад
The Arduino's core ATmega itself doesn't have the *grunt* to directly handle complex data at high rates but it can *steer* modules that do the processing. Alas, when pushing the physical capabilities of the Arduino hardware, one runs into issues with libraries that don't play well in an inherently multi-threaded environment where things can be happening in parallel. For example, the standard IRremote library, while quite OK for instruction, is limited by requiring lots of processor cycles which means that external interrupts such as button presses or encoder pulses can be missed which is far from user-friendly; or the IRreceiver pulses are missed and data garbled. One can hope that the student will have gained sufficient understanding to fix such issues as the complexity of the systems on the bench increases. Running into difficulties such as the aforementioned can still be highly instructive.
@RalphBacon
@RalphBacon 5 лет назад
@Flemming Yes, I should have used one of the short-range FM transmitter modules I had, but I did want to show it tuning to a standard FM station too. Oh well. @Bernd I agree the Arduino is not the most powerful µController out there but I'm pretty sure it should handle this. If not, we could use an ESP8266 based module instead. Or even an ESP32 but that's probably well over the top. You're correct about using 3rd party libraries - you have no idea what is going on there (well, unless you look) and a wonderful state machine could be totally ruined by a library that implements the delay() function, for example. That's why it's good to write your own! Or hack the library, which is what I do quite often.
@BOBTERIO
@BOBTERIO 3 года назад
Pox XX
@RalphBacon
@RalphBacon 3 года назад
Um... sorry Bob, don't get that one.
@vishwanathb4181
@vishwanathb4181 Месяц назад
Useless device, not catching anything, and whatever catching is too weak
@RalphBacon
@RalphBacon Месяц назад
More likely your antenna is not correctly attached, or you live up a mountain, as I got a number of stations in a town (as the video demonstrated, I believe).
Далее
你们会选择哪一辆呢#short #angel #clown
00:20
DIY Pocket FM Radio | TEA5767 Tutorial w/ any MCU/MPU
8:13
Op-Amps  - Using Operational Amplifiers
44:21
Просмотров 271 тыс.
#80 Scrolling LED Matrix MAX7219 *Updated*
30:16
Просмотров 17 тыс.
TEA5767 FM radio with amplifier - IC Station Review
18:34
ОБСЛУЖИЛИ САМЫЙ ГРЯЗНЫЙ ПК
1:00
OZON РАЗБИЛИ 3 КОМПЬЮТЕРА
0:57
Просмотров 37 тыс.