logo elektroda
logo elektroda
X
logo elektroda
Dostępna jest polska wersja

Czy wolisz polską wersję strony elektroda?

Nie, dziękuję Przekieruj mnie tam

TL;DR

  • A tiny NXP TEA5767 digital FM radio module provides stereo reception from 87.5MHz to 108MHz, but needs extra parts to produce audio.
  • It uses I2C control, with BUS MODE grounded, SDA/SCL pull-ups, and an external class D amplifier such as a PAM8610 to drive a speaker.
  • The module measures 11x11x2mm, runs from 2.5V to 5VDC, and draws about 13mA at 5V after tuning.
  • The example 98MHz setup computes a 14-bit PLL from the station frequency and sends five bytes over I2C, starting with address HC0.
  • The radio started on the first try and sounded good with a 10cm wire antenna, but the audio output is too weak for headphones and repeated polling caused interruptions.
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
📢 Listen (AI):
  • Hello again, everyone.
    As the postman with the long and impatiently anticipated yellow envelope visited me, today I will try to briefly describe to you here the gadget that was inside - a digital FM radio module made on the NXP TEA5767 chip. This module is.... I would say it's a complete radio, although to get the sound out of it you will need a few extra components.

    TEA5767 radio module from NXP - V1

    TEA5767 radio module from NXP - V1

    The dimensions of this module are 11x11x2mm - literally a baby, be careful not to lose it while playing with it. :)
    The prices for the module start from $ 0.72 with shipping on Aliexpress, on Allegro you have to pay about PLN 12 with the shipment, although you can find offers several times more expensive - I do not know how they differ from the cheaper ones.
    I bought my "receiver" from China and there were no problems with it - "it started from the first arrow".
    Thanks to this baby, we can receive radio waves in stereo in the range from 87.5MHz to 108MHz.
    The supply voltage is 2.5V to 5VDC. The current consumption after setting the radio station is approx. 13mA when the module is powered from 5V.
    Below is a drawing with the conclusions of our system.

    TEA5767 radio module from NXP - V1

    1 - SDA
    2 - SCL
    3 - BUS MODE
    4 - WRITE / WRITE
    5 - VCC
    6 - GND
    7 - Left channel audio output
    8 - Left channel audio output
    9 - MPXO
    10 - antenna

    This module is controlled by I2C communication, so we will need some microprocessor to set up our favorite station. In addition, the audio output is so weak that it will not "pull" even the headphones, so you will need an amplifier. I used a small, cheap, ready-made class D amplifier based on the PAM8610 chip - I wrote a small one, but comparing it to the radio module, it cannot be said that it is small. We will need two more resistors (I used 10k, you can also give 4.7k) to pull up the SDA and SCL communication lines to the plus - basically all that is needed except for a power source, a few wires and a loudspeaker.
    Below is a picture of what it should look like.

    TEA5767 radio module from NXP - V1

    BUS MODE is connected to ground so that communication via I2C works.
    As the module is really small and its raster is not standard, only 2mm, so it had to be dealt with somehow, and a "hybrid" as shown in the pictures below came out. :)

    TEA5767 radio module from NXP - V1
    TEA5767 radio module from NXP - V1
    TEA5767 radio module from NXP - V1

    It's about testing the module, not aesthetics, so forgive me - I did it on McaGyver and it's important that it works, next time I will try harder so that apart from the ears and eyes they can enjoy. ;)
    To control the radio, I used the ZL2AVR development kit, although a breadboard and a microprocessor that will send a few bytes using I2C - for example AVR or PIC or the popular Arduino is enough here.
    Ok, we already know how to connect our module, so let's move on to the description of how to order the radio to "play" the frequency of our choice.
    We need to send 5 bytes to our radio, and before that send the address of our radio receiver.
    Of course, documentation can help.
    According to the documentation, the address of our radio is: 110,000b
    The module can operate in two different operating modes - read and write, which must be entered in the address.
    0 - write mode
    1 - reading mode
    Hence, we will use the address & B1100 0000 (in binary or & HC0 in hexadecimal), because we choose the write mode.
    Excerpt from documentation for address description:

    TEA5767 radio module from NXP - V1

    Next, 5 bytes should be sent, the description of which can be found in the documentation.
    In the first two bytes we give the frequency of our radio station - PLL, it is 14 bits.
    Fragment of documentation for description of the first two bytes for write mode:

    TEA5767 radio module from NXP - V1

    TEA5767 radio module from NXP - V1

    PLL can be calculated from the formula:

    TEA5767 radio module from NXP - V1

    where RMF is the frequency of our station in MHz.
    Take into account that in the denominator we have the frequency of the quartz that is in this module. Using the TEA5767 chip itself, you can use a different quartz there, but its value must be taken into account in this formula and taken into account in the settings for the fourth and fifth bytes - these are XTAL bits in the fourth byte and PLLREF in the fifth byte.
    For example, for the station frequency of 98MHz and the quartz 32.768kHz, which is used in this module, the formula will give us 11990.3564453125, of which PLL is the integer part of this number, i.e. PLL = 11990, which gives us 10111011010110 in binary notation.
    The first byte in this case is: MUTE SM PLL13-PLL8, where the MUTE bit is set to 0 and the SM bit also to 0, which gives us a complete byte in the form & B00101110.
    The second byte is PLL7-PLL0, which is & B11010110
    The next bytes are settings that I will not describe here - we have them described in the documentation.
    Fragment of documentation for description of the next three bytes for write mode:

    TEA5767 radio module from NXP - V1
    TEA5767 radio module from NXP - V1
    TEA5767 radio module from NXP - V1

    I am sending here & B00010000 as byte 3
    & B00010000 as byte 4
    & B00000000 as bit 5

    So to bring out the sound of our selected radio station (example 98MHz), we send in turn:
    & B11000000 or & HC0 - binary or hexadecimal notation
    & B00101110 or & H2E
    & B11010110 or & HD6
    & B00010000 or & H10
    & B00010000 or & H10
    & B00000000 or & H0

    At the beginning of my game, I sent this data to the module every 100ms - I suggest not to do it, because it introduces some disturbances in the radio's operation. This causes the sound to be interrupted for a fraction of a second - as if you were pressing a button on the TV remote control every now and then to select the same channel.

    Below is the code written in Basom for ATmega8 to operate this radio. It takes up about 25% of the memory, after resigning from calculating bytes by the program, and entering them permanently, we can go down to 6% of the memory, but I do not know if it will be possible to run it on ATtiny13 due to the lack of hardware I2C.

    Code: VB.net
    Log in, to see the code


    For the less initiated, I will explain where the following part came from, because I wrote about sending the address and five bytes, and you can see that I only send the address and three bytes.

    Code: VB.net
    Log in, to see the code


    As the settings for each station in the last three bytes are identical, these bytes written into the program are permanent. The first two change depending on the selected frequency and in order not to do it yourself - to simplify it, the program is written in such a way that it is enough to enter the selected frequency in the PLL variable, and the program itself will calculate the first two bytes to be sent. If we want to enter our frequencies into the program, we enter the frequency in MHz in the PLL variable, and the program will calculate the first two bytes by itself.

    When starting this little radio it was without problems - the loudspeaker made a sound right after loading the program to the processor and pressing the button. The biggest problem in all this was only soldering this "hybrid", but I think it will not be a problem to use Google to find a library, eg in Eagle for this baby.

    As you can see from the photos - I used a piece of wire about 10cm long as the antenna and as you can hear on the attached recordings - the radio sounds quite good
    The radio has an automatic station search function with the option of setting its sensitivity - 3 sensitivity levels. I didn't have much time to thoroughly test it. I think it would be helpful to read the current frequency from the radio here, because during the automatic search, the radio stopped at what it thought was a radio station, and I was not able to get information about the frequency, which caused me to wander in the dark in a maze of various kinds noise and silence, where sometimes we managed to find stations but not occupy their frequencies.
    Perhaps someone will share the knowledge about reading information from this module here - I could not get any information from the module in read mode, maybe I am doing it incorrectly.

    In the attachments the documentation for the described radio module and two recordings of the sound it produces, so that you can judge for yourself whether you can expect something nice from the module for less than a dollar, or you can only be disappointed, as is usually the case with Chinese gadgets.

    I hope that this description will encourage you to play with this radio module and describe your struggles and achievements here, which will expand this topic and help others get to know this baby.

    Below is a link to the next part describing the TEA5767 module
    https://www.elektroda.pl/rtvforum/topic3451947.html#17161950
    Attachments:
    • Nagranie.rar (489.31 KB) You must be logged in to download this attachment.
    • Nagranie (2).rar (546.55 KB) You must be logged in to download this attachment.
    • TEA5767.pdf (200.43 KB) You must be logged in to download this attachment.

    Cool? Ranking DIY
    About Author
    grala1
    VAG group specialist
    Offline 
    grala1 wrote 9811 posts with rating 5026, helped 1495 times. Live in city Kalisz. Been with us since 2006 year.
  • ADVERTISEMENT
  • #2 17149094
    Zuliczek
    Level 17  
    Hello, it is hard to deduce anything more from the recordings about the quality of the received signal, but what are the "feelings" from the listening session?
  • ADVERTISEMENT
  • #3 17149136
    grala1
    VAG group specialist
    I am not an audiophile or a fan of listening to music so that others would also have to listen to it, but for me it sounds reasonably well.
    There is no revelation on this amplifier and loudspeaker, because it is a loudspeaker without any housing, taken out of a walkie-talkie, but by connecting headphones it sounds really good for my ear.
    Connecting to the audio input in the car, I do not see the difference between the sound from this module and the factory radio, but as I mentioned, I am not an audiophile.
    I think it's worth spending less than a dollar on this module.
  • #4 17149140
    Zuliczek
    Level 17  
    As you mentioned, there are no problems with the quality of the received signal even with 10cm of wire in the car ??
  • #5 17149201
    piterek-23
    Level 33  
    For some time I have been looking for a small radio module, not only a small one, and even a small one. For this code in BASCOM. In a word, I have everything I was looking for :)
    Thanks a lot for a great description :)
  • ADVERTISEMENT
  • #6 17149925
    Ibuprom
    Level 26  
    Many market radios have an FM module on this cube. As long as the local toto transmitter catches, you can forget about clean reception, e.g. during the route where the transmitters are several dozen kilometers away. Stationary, it will be absolutely suitable for a car, if we value our nerves.
  • #7 17150790
    djbpm
    Level 24  
    Well, sorry that it will attach, but I already thought that a nice module for DAB +, and here an ordinary analog FM ... i.e. an analog radio module, not a digital one. Digital here is the control and that's it.
  • ADVERTISEMENT
  • #8 17150922
    pawel1968
    Level 12  
    I will share my experiences with the use of this type of modules.
    I started with this TDA 5767. At my pickup location it's terrible. The module was properly receiving up to approx. 95 MHz.
    He couldn't cope any more.
    Then the RDA 5807 hit the table. A similar situation, maybe even a bit worse sensitivity.
    Even with RDS he could receive local stations properly.
    Another module that went to the test is the famous SI 4703 from Sillicon Labs.
    And a big surprise. The quality of this system beats its predecessors.
    On a 70 cm antenna it receives all stations without any noise or distortion.
    I have just finished building my small receiver on it.
    So I recommend you this system with a clear conscience, despite the fact that it is a bit more expensive with friends, but it makes up for it in quality.
  • #9 17151680
    george2002

    Level 21  
    pawel1968 wrote:
    I will share my experiences with the use of this type of modules.
    I started with this TDA 5767. At my pickup location it's terrible. The module was properly receiving up to approx. 95 MHz.
    He couldn't cope any more.
    Then the RDA 5807 hit the table. A similar situation, maybe even a bit worse sensitivity.
    Even with RDS he could receive local stations properly.
    Another module that went to the test is the famous SI 4703 from Sillicon Labs.
    And a big surprise. The quality of this system beats its predecessors.
    On a 70 cm antenna it receives all stations without any noise or distortion.
    I have just finished building my small receiver on it.
    So I recommend you this system with a clear conscience, despite the fact that it is a bit more expensive with friends, but it makes up for it in quality.


    I confirm that I have been using SI4703 for 5 years, because then it cost ~ PLN 50 and received very good on a 5 cm cable, it is worth mentioning that it has RDS :)
    Company Account:
    GS electronic Grzegorz Stoliński
    2 Pułku Lotniczego 18, Kraków, 31-857 | Company Website: www.gselectronic.pl
  • #10 17153110
    lechoo
    Level 39  
    For comparison - this is how a similar module sounds with the RDA5807M chip, where apart from the IC there is only 32kHz watch quartz and power blocking capacitors:




    I recorded the sound through the line input of the computer, and a piece of wire was used as the antenna. You can fault the poor channel separation - perhaps the TEA5767 can handle it better, because it's more "analog" ...
  • #13 17154834
    Ture11
    Level 39  
    The module with the Quintic QN8025 chip was very nice, but I have not been able to track it for a long time (basically it is only on Aliexpress, it went up a lot). The audio quality was quite good, the sensitivity also surprising, but let's not mention the 10cm wire here.
  • #14 17158145
    gulson
    System Administrator
    arturavs wrote:


    Report:

    Quote:
    Modules actually maybe more interesting, but what does this post bring to the topic? The author of the post probably does not understand what this topic is about. The topic concerns a radio receiver for the normal band and this one shows here a transceiver for the amateur band. Nobody will listen to this radio. It has nothing to do with the topic.
  • #15 17159497
    ArturAVS
    Moderator
    I don't know how to respond to the report. Grala1 presented the module and showed how it can be quickly launched.

    Did my mention of other similar modules hurt anyone? I stated a fact.
    After that, there are many other modules. So there is no point in focusing on one.
  • #16 17160268
    jarux
    Level 12  
    Gentlemen, in relation to the topic, I have a question for you.
    I am slowly picking up the car player instead of the factory navi and I was thinking about using TEA5767 as an FM receiver in combination with the factory antenna, but maybe you have any better suggestions, preferably with Po I2C control?
  • #17 17653278
    Alpha
    Level 26  
    pawel1968 wrote:
    I will share my experiences with the use of this type of modules.
    I started with this TDA 5767. At my pickup location it's terrible. The module was properly receiving up to approx. 95 MHz.
    He couldn't cope any more.
    Then the RDA 5807 hit the table. A similar situation, maybe even a bit worse sensitivity.
    Even with RDS he could receive local stations properly.
    Another module that went to the test is the famous SI 4703 from Sillicon Labs.
    And a big surprise. The quality of this system beats its predecessors.
    On a 70 cm antenna it receives all stations without any noise or distortion.
    I have just finished building my small receiver on it.
    So I recommend you this system with a clear conscience, despite the fact that it is a bit more expensive with friends, but it makes up for it in quality.

    I am looking for something to build a receiver for myself and I am confused.
    Here is a similar thread and other conclusions:
    https://www.elektroda.pl/rtvforum/topic3124385.html
    Could anyone else share the experience of comparing these two proposals. or recommend something else?
📢 Listen (AI):

Topic summary

✨ The discussion revolves around the NXP TEA5767 FM radio module, which is compact (11x11x2mm) and priced affordably (starting at $0.72). Users report satisfactory audio quality, especially when using headphones, and note that it performs comparably to factory radios in cars. Some users express concerns about the module's sensitivity and reception quality, particularly in areas with weak signals. Alternatives like the SI4703 and RDA5807M modules are mentioned, with the SI4703 noted for its superior performance and RDS capability. The conversation also touches on the potential for using the TEA5767 in DIY projects and as a car FM receiver, with inquiries about better options with I2C control.

FAQ

TL;DR: The 11 × 11 mm TEA5767 FM module consumes only 13 mA at 5 V, and "it sounds reasonably well" [Elektroda, grala1, post #17148839]; set frequency via 5-byte I²C write; add headphones plus PAM8610 amp for full audio.
Why it matters: You can drop a sub-$1 stereo radio into almost any microcontroller project with minimal parts.

Quick Facts

  • Price: US $0.72–1.00 shipped [Elektroda, grala1, post #17148839]
  • Supply range: 2.5 – 5 V DC; current ≈ 13 mA at 5 V [Elektroda, grala1, post #17148839]
  • Tuning range: 87.5 – 108 MHz FM, stereo [NXP, 2005]
  • Control bus: I²C at 400 kHz max, address 0x60/0x61 (write/read) [NXP, 2005]
  • Output level: 75 mVrms (typ.); needs external audio amp [NXP, 2005]

What is the TEA5767 module in one sentence?

It is a tiny 11 × 11 mm board built around NXP’s TEA5767 single-chip FM stereo radio that only needs I²C commands, power, antenna, and an audio amp to play radio [Elektroda, grala1, post #17148839]

How do I power and wire the board?

Feed 2.5–5 V to VCC (pin 5), tie pin 6 to ground, add 4.7–10 kΩ pull-ups on SDA (pin 1) and SCL (pin 2), ground BUSMODE (pin 3) for I²C, connect a 10 cm wire or proper antenna to pin 10, and route pins 7/8 to an external amplifier [Elektroda, grala1, post #17148839]

How do I tune a station over I²C?

Write six bytes: address 0xC0 (write), two PLL bytes with the desired frequency, and three control bytes (e.g., 0x10, 0x10, 0x00). Frequency in MHz → PLL formula: PLL = 4 × (f + 0.225 MHz) / 32.768 kHz [Elektroda, grala1, post #17148839]

3-step How-To: set 98 MHz

  1. Compute PLL: 4 × (98 + 0.225) / 0.032768 = 11990 → 0x2E D6.
  2. Send I²C: C0 2E D6 10 10 00.
  3. Wait ≥ 50 ms before next write to avoid audible glitches [Elektroda, grala1, post #17148839]

Which audio amplifier works well?

A PAM8610 class-D module delivers several watts at 5 V and matched well in tests; headphones also work after amplification [Elektroda, grala1, post #17148839]

Is the TEA5767 reliable for car dashboards?

For city driving it is acceptable, but weak distant signals on open roads may fade because sensitivity trails newer chips; users suggest alternatives for long-range clarity [Elektroda, Ibuprom, post #17149925]

How does TEA5767 compare to RDA5807M or SI4703?

Multiple builders found SI4703 offers higher sensitivity and RDS, outperforming TEA5767 and RDA5807M, especially above 95 MHz; one called the difference “beats its predecessors” [Elektroda, pawel1968, post #17150922]

Can I read RDS or signal strength from TEA5767?

No RDS; you can poll 5-byte read mode for IF counter and stereo flag, but several users failed to retrieve data reliably without extra code examples [Elektroda, grala1, post #17148839]

Which microcontrollers and libraries are proven?

ATmega8 with BASCOM, Arduino Wire library, PIC I²C, and STM32 HAL all work because the device needs only standard I²C start/write/stop sequences [Elektroda, grala1, post #17148839]

Where can I buy it and what does it cost?

Modules sell on AliExpress for US $0.72–1.00 shipped or about PLN 12 locally, though resellers list higher prices without functional differences [Elektroda, grala1, post #17148839]
ADVERTISEMENT