Icoboard Software Defined Radio Platform

The Icoboard is a plug-in for the Raspberry Pi with a Lattice iCE FPGA onboard. Combined with a cheap A/D converter, [OpenTechLab] build a software-defined radio using all open source tools. He found some inexpensive converters that cost about $25 and were fast enough (32 MHz) for the purpose at hand. The boards also had a digital to analog converter and he was able to find the data sheets. You can see a video with the whole project covered, below.

The video, by the way, is pretty extensive (about an hour’s worth) and covers the creation of a PC board to connect from the Icoboard to the converters. There’s also a 3D printed frame, and that’s explained in detail as well.

One thing that isn’t covered yet is actually doing software defined radio with the hardware. The test setup takes a signal on the input side of one converter, feeds it to the FPGA and the FPGA simply mimics it back via the digital to analog converter. That works, so the rest as they say, is mere details.

We are sure [OpenTechLab] will have more videos that start using this platform. There are two previous videos that cover setting up the Icoboard, if you need those. Of course, we’ve talked about the iCE FPGAs quite a bit. You might want to read our basic tutorials to get you started. After that, you can learn how to make a PWM generator with the device.

8 thoughts on “Icoboard Software Defined Radio Platform

  1. I find it weird that a 32MSPS ADC is used, but in front of it is a TL072 op-amp with unity gain bandwidth of 3MHz as a buffer. Same for the transmit side.
    But good finds on quite affordable ADC & DAC chips.

        1. Yep! I have seen various versions of 125MSPS TxDAC’s in GSM and 3G cellphone BTS gear I have scrapped. So it’s a legit high performance part.
          Should make some fpga board interface for those or FX2.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.