Experiment with TEA5767 FM radio module and 0.96″ 128×64 OLED display module

Experiment with TEA5767 FM radio module and 0.96″ 128×64 OLED display module

I purchased few TEA5767 FM radio modules from eBay with little more than a doller per piece some time ago. So far I did not have time to play with those. I recently purchased two 0.96″ 128×64 OLED modules based on SSD1306 controller from eBay as well for about 5 dollars per piece. I made a small breakout board for the OLED display. The driving circuit is quite simple. I designed it to use the internal voltage booster to drive the OLED panel and I am using it with the Zigduino clone (ATMEGA128RFA1) I designed and it runs on 3.3v, therefore I did not put any level converter on the I2C lines. However, if you are planning to use the display with a 5v arduino, you will need a level converter on the I2C lines. Here is how the breakout board came out to be:

I also came up with a breakout board for the TEA5767 FM tuner module. The module looks like this:

I have put the PCF8563T RTC chip on this board for later use. Here is the how the breakout board came out to be:

Eagle schematic and board files: TEA5767RTCModule.zip (23.44 kb)

I found the TEA5767 driver code for arduino from http://kalum.posterous.com/arduino-with-tea5767-single-chip-radio-and-no#!/ and modified it little bit to use the OLED display. I have modified the code use two LEDS on my board to indicate mono or stereo reception. When mono reception is detected only the green LED lights up and the blue LED also lights up when stereo audio is received. Also three other LEDS on the board would indicate how strong the station signal is; the stronger the signal the more LEDs will light up.

Here is the arduino sketch (I am using Arduino 0023, as I have not modified the zigduino clone files for v1+ compatibility): FMClockRadio.pde (14.80 kb)

Finally, here is the video of the test:

 

Resources:

1. Zigduino clone firmware from PiCopter project: http://www.instructables.com/id/Picopter/

2. OLED driver library: http://www.geekonfire.com/wiki/index.php?title=I2C_OLED_Panel(128×64)

3 thoughts on “Experiment with TEA5767 FM radio module and 0.96″ 128×64 OLED display module

  1. Eric-Jan

    Please, could you add a zip/rar file with the driver and script files,
    (Arduino FMchip display)because one site you refer to is closed down.

  2. Biser Georgiev

    To me the following compiler errors.
    What change?

    fmclockradio.ino: In function ‘void set_radio_freq(int, double)’:
    fmclockradio.ino:209:10: error: ‘class TwoWire’ has no member named ‘send’
    fmclockradio.ino: In function ‘int tea5767_read_status(unsigned char*)’:
    fmclockradio.ino:234:21: error: ‘class TwoWire’ has no member named ‘receive’
    fmclockradio.ino: In function ‘void tea5767_search_up(unsigned char*)’:
    fmclockradio.ino:338:10: error: ‘class TwoWire’ has no member named ‘send’
    fmclockradio.ino: In function ‘void tea5767_search_down(unsigned char*)’:
    fmclockradio.ino:395:10: error: ‘class TwoWire’ has no member named ‘send’
    Грешка при компилирането.

    1. pial Post author

      Hi Biser,
      Please note this code was written on a older version of the arduino IDE. I believe the wire library has been re-written and the send and receive functions have been replaced by write and read. Please read the wire library document (https://www.arduino.cc/en/Reference/Wire) and make the changes accordingly and then the build should be fine.

Leave a Reply

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


− three = 5

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>