FM Radio Receiver Module
The FM Radio Receiver Module uses an RDA5807SS FM stereo radio tuner chip, which provides an easy way for your microcontroller to receive local FM radio stations. Using the onboard antenna and headphone jack, you can easily create your own portable radio!
- Onboard standard 3.5 mm TRS stereo headphone minijack provides easy audio output
- Supports the worldwide frequency band (76 to 108 MHz)
- No external antenna required
- 10-pin DIP package ready for breadboard or through-hole projects
- Easy I2C interface with virtually any microcontroller
- Power Requirements: 2.7 to 5.5 VDC @ 25 mA
- Communication: I2C
- Operating temperature: 32 to 121 °F (0 to 50 °C)
- Dimensions: 0.70 x 0.65 x 0.34 in (1.78 x 1.65 x 0.87 cm)
- Portable radio
- Digital radio alarm clock
Theory of Operation
The FM Radio Receiver Module uses the RDA5807SS FM stereo radio tuner chip to tune to FM radio stations on the worldwide frequency band. You can program this chip directly using and I2C interface through the SDA and SCL pins (for more detailed information, see the Register Table section).
An I2C interface transfer begins with a START condition, a command byte and data bytes. Each byte is followed by an ACK (or NACK) bit, and then the interface transfer ends with a STOP condition. The command byte includes a 7-bit chip address and a Read/Write bit. The ACK (or NACK) is always sent out by the receiver. During a write transaction, data bytes are sent from the microcontroller, and during a read transaction, data bytes are read from the FM Radio Receiver Module.
The FM Radio Receiver Module will send an ACK after every byte, and the microcontroller should issue a STOP condition when register programming is finished. Detailed timing diagrams can be seen in Figure 1 and Figure 2 below.
The FM Radio Receiver Module also features an onboard stereo headphone jack. When headphones are plugged in, the ground wire of the headphone’s cable functions as an antenna. However, should better reception be needed, and external antenna can be connected to the FM Radio Receiver Module’s ANT pin.
|1||SDA||I/O||Serial Data Line|
|2||SCL||I||Serial Clock Input (0 to 400 kHz)|
|3||ANT||-||External Antenna Connection Option|
|4||ROUT||O||Right Audio Output|
|5||LOUT||O||Left Audio Output|
|6||GPIO1||I/O||General Purpose Input/Output 1|
|7||GPIO2||I/O||General Purpose Input/Output 2|
|8||GPIO3||I/O||General Purpose Input/Output 3|
|9||VDD||P||Supply Voltage -> 2.7 to 5.5 VDC|
|10||GND||G||Ground -> 0 V|
Pin Type: P = Power, G = Ground, I = Input, O = Output
Communicating with the FM Radio Receiver Module is done through an I2C interface. A write operation is defined as data going from a microcontroller to the FM Radio Receiver Module, and a read operation is defined as data going from the FM Radio Received Module to a microcontroller. Below is a table of the most commonly used registers, their functions and default values.