Description: This is an evaluation board for the Silicon Laboratories Si4703 FM tuner chip. Beyond enabling you to tune in to FM radio stations, the Si4703 is also capable of detecting and processing both Radio Data Service (RDS) and Radio Broadcast Data Service (RBDS) information. The Si4703 even does a very good job of filtering and carrier detection. It also enables data such as the station ID and song name to be displayed to the user.
Using this board, you will be able to pick up multiple stations just as well as with a standard FM radio. The board breaks out all major pins and makes it easy to incorporate this great chip into your next radio project. The power bus, the 3.3V and GND pins are broken out For communication. The breakout provides access to SDIO and SCLK for I2C communication while RST can be used for easy resetting. The SEN pin enables the user to change the mode of functionality of the IC. The last two pins broken out are GPIO1 and GPIO2 which can be used as general input/output pins, but also can be used for things like the RDS ready, seeking or tuning functions.
Keep in mind, by plugging headphones into the 3.5mm audio jack, you effectively use the cable in your headphones as an antenna! Therefore, this board does not require an external antenna if using headphones or a 3.5mm audio cable longer than 3 feet.
Based on 1 ratings:
I’ve been looking at this FM tuner board for a while and considering its use for adding FM capability to an old automotive AM tube radio (long story). One of the things I was looking into was how to display the frequency information without detracting from the look of the AM radio when the FM tuner is turned off. Shawn’s post using the Fio v3 and micro OLED display inspired me to recreate his project using an Arduino Pro 3.3V, 8 MHz (since I didn’t need the battery capability).
I integrated the SparkFun FM Tuner Evaluation Board and Micro OLED Breakout v1.0 with the Arduino Pro using the hookup guides for the 4703 and OLED display from the SparkFun site. I added a SPDT, center-off toggle switch to handle up/down inputs, and a SPST momentary pushbutton used to select the different control modes.
I placed the Arduino code for this in GitHub, with the Required library - Si4703_Breakout_Modified. From Shawn’s video, I think I have all of the functionality covered for the Fio device he demonstrated (minus the battery, of course). I also added a couple of modes of RDS display to the code as this was something I wanted for my car radio application.
To make the RDS work the way I wanted it to, I chose to modify the Si4703_Breakout Arduino library that the SparkFun hookup guide uses. I included the modified library, Si4703_Breakout_Modified, on GitHub as well. The changes are mostly around the readRDS routine, but I also made one of the private functions from the library into a public function so I could call it directly from my code.
I’ll post some pictures and possibly a video demonstrating how this thing works when I can get around to uploading them. The UI is different from Shawn’s demo, but again I was tailoring it to what I want in the car radio.
The Si4703 Board and the Micro OLED display Boards work beautifully! I plan to integrate the OLED display into all kinds of projects now that I’ve been able to play with one. As an aside, since I hooked up both boards in this project per the SparkFun online hookup guides, all of the demo code for each board will run on the combined assembly. This means that the Arduino code for this project can be easily modified to display an analog clock, mini-pong game, or rotating cube as a screensaver display instead of the RDS and frequency information I am currently displaying. Just a thought…