Building an Arduino single chip radio is pretty straightforward. Perhaps the hardest part is handling the tiny surface mount chip.
If you feel like experimenting with a receiver-on-chip, it’s not really that hard. Shown above is a project by Raymond Genovese described at All About Circuits. He produced a multi-band radio by connecting a Silicon Labs Si4844 chip to an Arduino, TFT display and a few buttons and components.
Lots of vendors, such as Mouser and DigiKey, provide a selection of the Silicon Labs chips for $5 to $15 dollars. The trick is finding a vendor that sells single quantities. For many of us, though, the hard part is working with surface mount SMT devices. These are very tricky to handle and solder without the right equipment and experience.
Fortunately, you can mount the tiny device on a carrier board which provides access to the pins in DIL format, as shown above. You can buy SSOP to DIL adapters on eBay and elsewhere for a few dollars. Some vendors also sell some of the Silicon Labs chips pre-mounted on an evaluation board. For example, SparkFun sells the Si4703 FM tuner in this format.
Once you get past mounting the Silicon Labs chip, the rest is pretty easy. Communications between the receiver-on-chip and the Arduino is by two pins using I2C. The good news is that instructions on controlling these chips are very well documented. Also, formatting commands and data flow is straightforward if you have experience with I2C bus.
Arduino Single Chip Radio Alternatives
Silicon Labs is not the only vendor selling cheap receiver-on-chip solutions. A few experimenters have even produced complete kits. This one, on Tindie, uses the KTMicro KT0915 chip which gives shortwave coverage. Alternatives that do FM only include the RDA5807 (DSP) and NXP TEA5767 (analog) devices.
Would I recommend building an Arduino-controlled radio using a consumer-level receiver-on-chip? Not really. As far as a well performing radio goes, you would probably achieve more playing with an RTL-SDR.
But I admit there would be some fun and learning in hooking up an Si4844 from scratch and bringing it to life with some code and an Arduino. If you decide to do this, keep in mind that these chips have limited sensitivity on AM and SW – in the order of 15 μV. Unless you are using a really good antenna, you might want to add a low noise amplifier at the front end. You can find an Arduino library on Github that handles many of these chips.