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.
This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.
Skill Level: Noob - Some basic soldering is required, but it is limited to a just a few pins, basic through-hole soldering, and couple (if any) polarized components. A basic soldering iron is all you should need.
See all skill levels
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
Based on 5 ratings:
1 of 1 found this helpful:
This looked like a fun gadget to hook up to a raspberry pi. Was able to find example code online to get it started up quickly and now I just have to fine tune how I want it to work.
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…
I’m designing a Tophat for Halloween and I wanted a radio to play out it. This does the job. Next time I’ll make sure to buy a logic level converter so I don’t destroy the IC.
It worked great on headphones, the only thing I would have liked is a tutorial on how to add your own antenna to this board. I’m using it on a Raspberry Pi and won’t be using headphones. I wrote a Node JS wrapper library to control it through i2c on a Raspberry Pi: https://www.npmjs.com/package/node-rpi-si4703
To use an antenna, solder the last pin on the edge facing side. I wish there were an FM/AM version available for this.