Description: A local convenience store (Dollarama in Montreal, Canada) offers an appealing FM radio for just $3. The idea of interfacing this radio with an Arduino presents a fun challenge. Although the primary goal is not to create a radio, the desire to experiment with it is strong. The radio features a simple two-button user interface and is powered by either two AAA batteries or a CR2032 coin battery. The hardware design is based on the TDA7088 integrated circuit, with possible variations including SC1088, SA1088, CD9088, D7088, or YD9088; the radio in question contains the YD9088 IC. A quick online search yields a datasheet that, while not very informative, does provide a basic application circuit. The most challenging aspect of this project involves soldering to the surface mount components of the radio. The minimum configuration requires only two wires for interfacing with the front-panel buttons. The other two wires will connect the Arduino's onboard voltage regulator (3.3 V) to power the radio instead of using the battery, which should be easier to attach. Wires are soldered to the capacitors on the side connected to pins 15 and 16 of the IC, minimizing the impact on the radio's usability since the buttons remain untouched, which may be important for debugging. For those with less experience in soldering, it is possible to solder to the traces after removing the buttons. Additional wires attached to pin 1 and the earphone jack connector are not utilized in this project and can be excluded. The electrical drawings of the shield include a 1 kΩ potentiometer. The initial version was built using a resistor divider as shown in the Reset signal line. However, the IC is sensitive to the voltage level on the Scan input, sometimes failing to change stations or resetting unexpectedly. Adjusting the potentiometer to achieve a voltage of approximately 3.1 to 3.2 V at pin 15 is recommended. This can be measured with a digital multimeter (DMM) by temporarily increasing the delay in the code to 10,000 or even 20,000. An audio jack must be plugged into the earphone jack to function as an antenna; headphones or a USB speaker cable works well for this purpose. It should be noted that the default value of 50 may not be sufficient to effectively receive strong RF signals. Experimenting with sending a few 's' characters simultaneously (e.g., 'ss', 'ssss') can enhance performance. However, setting the delay higher than 50 is discouraged, as it may result in missing interesting broadcasts due to excessive jumps.
The project involves creating a simple interface between the FM radio and an Arduino microcontroller, utilizing the YD9088 IC for radio functionality. The radio's straightforward user interface consists of two buttons that control station scanning and power. The integration process begins with careful soldering to the radio's surface mount components, specifically connecting to pins 15 and 16 for button interfacing. The Arduino will provide power via its onboard voltage regulator, which simplifies the setup by eliminating the need for battery power.
To ensure proper operation, a potentiometer is used to fine-tune the voltage level at the Scan input of the IC, which is critical for reliable station changes. The project requires attention to detail in soldering and voltage adjustments, as the IC's sensitivity to input levels can lead to erratic behavior if not correctly managed. Additionally, the use of an audio jack as an antenna is essential for optimal radio reception, as the radio relies on external wires to capture radio signals effectively.
Overall, this project serves as an engaging way to explore interfacing techniques between an inexpensive FM radio and an Arduino, while also providing insights into the functionality of radio circuits and the importance of precise voltage control in electronic designs.I`ve been visiting local convenience store (Dollarama, here in Montreal, Canada) and notice nice looking FM Radio, just for only $3. Why not to try to interface it to my lovely Arduino Idea looks quite challenging, the same time what is the point in interfacing a DSP radio shield to arduino I don`t need a radio, I want to have fun experimenting
with it, so lets go to the bare metal! You, probably, could find the same or very similar radio all around the globe, with two buttons user interface, powered by two AAA or one CR2032 coin battery (like in my case), and low price. Hardware design based on IC TDA7088 (depending on the manufacturer, may be clones SC1088, SA1088, CD9088, D7088, or YD9088).
My radio has YD9088 inside. Quick search on a Google, brings a data sheet. I`d say, It`s not very informative, but at least it shows basic application circuit. The most difficult part of this project, is soldering to surface mount radio components. In minimum configuration just two wires, interfacing two front-panel buttons. (Other two, for powering up the radio from arduino +3. 3 V on-board voltage regulator instead of battery, should be much easier to attach). I solder wires to the caps, on the side, which connected to the pins 15 and 16 of the IC. In this case, there is minimum impact on usability of the radio, as buttons were not touch. May be important for debugging. If your soldering skills are not as good as mine, you could solder to the traces, removing buttons. On the pictures below you would find two more wires, attached to pin 1 and to earphone`s jack-connector, but they are not in use in this project, and you could left them out. If you look at the electrical drawings of the shield, you would notice 1 k pot. I build a first version using just two resistors divider, as it shown in Reset signal line. But it turns out, that IC is quite capricious for the voltage level it senses on the Scan input. On some occasions, it refused to change a station, and in some it flipped to reset . Trim the pot, to get voltage at pin 15 about 3. 1 3. 2 V. It would be easy to measure voltage with DMM, temporary changing delay in this section of the code: to 10000 or even 20000.
You may need something to be plugged in the earphones jack, as radio is using wires like an antenna. Headphones, or USB speakers cable, works quite well. BTW, the default value 50 may not be enough to push a radio up with strong RF signal. Try to send a few s simultaneously, ss or ssss . Setting delay higher than 50 is not recommended, as jump may be to wide, so you likely to miss something interesting in broadcasting.
The Arduino Eye Shield is a circuit board that can be plugged on top of the Arduino, enabling it to interpret analog video (PAL or NTSC) from a camera or other source. This provides the Arduino with visual capabilities, allowing...
A straightforward project involves using an Arduino to rotate a GH-2 camera on a fluid head by specified degrees to capture 360-degree panoramas. The motor control is uncomplicated, and there is a wealth of DIY motor projects available. Assistance is...
A servo motor is programmed to be controlled by two buttons; one button rotates the servo to the left and the other button rotates it to the right. When the servo is in motion, an LED corresponding to the direction...
A simple Arduino MIDI-to-DMX control was created for a robot band named Science Fiction Children. The setup consists of two inexpensive LED Par56 lights from Stairville, a basic DMX dimmer pack, and Ableton Live for sound management. The objective is...
A tutorial on LCD communication was planned for a later date due to high demand. A circuit was already assembled for testing a new LCD provided by element14. The tutorial explains how communication functions with modern LCD character displays, showcasing...
A potentiometer is a simple knob that provides variable resistance, which can be read into the Arduino board as an analog value. In this example, a potentiometer is connected to one of the Arduino's analog inputs to control the rate...
FM transmissions can be received within a range of 40 km. In fringe areas, the signal may be very weak. FM DXing refers to the practice of receiving distant stations (1500 km or more) on the FM band (88-108 MHz)....
This post outlines the steps taken to build an Arduino-based thermostat, as demonstrated in accompanying videos. The first video showcases a preliminary version of the menu system, providing an overview of the features. The second video presents the completed thermostat,...
The Arduino can communicate over various networks, including Ethernet, Bluetooth, Wi-Fi, XBEE, and GPRS. A Telit GM862-GPS module, which has GPRS and GPS capabilities accessible via AT commands, has been repurposed for use with the Arduino. The GM862's logic pins...
We use cookies to enhance your experience, analyze traffic, and (if you allow) serve personalized ads.
By clicking Accept All, you agree to our use of cookies.
Learn more