PSoC is an ideal platform to built a software defined radio (SDR), without relying on a PC for the SDR processing! Some years ago Simple circuits build one using the PSoC 3 ( Currently their hardware is'n available anymore. So I converted their design to the very cheap ($10) Cypress PSoC 5LP evaluation board.

PSoC SDR design

This project is still under development, keep an eye on this site for further updates.





So the goal of this project is to build a software designed radio (SDR) receiver for the ham bands. First I soldered header strips to the J1 and J2 headers of the PSoC 5LP evaluation board, and put it into a small breadboard. This makes experimenting a lot easier. There are some groups/people experimenting with PSoC and SDR, but not much code is publicly available. Here are some links: The first links exactly describes what I have in mind, unfortunately it stays with that idea, no more updates since two years. The second one is a very nice one, it is mainly a group of people with clever ideas and a good design, but unfortunately no code yet. The third one uses a PSoC in a na SDR Receiver, but leaves the real SDR decode still to the PC, so it looks like the PSoC is just used as an ordinary microcontroller. Please correct me when I’m wrong. The last one is the one I was looking for, a nice description in ham radio magazine QST, and all code available. It’s based on the PSoC 3. So what I did is I took this code stripped off all unnecessary parts and build a basic SDR radio based on their design. For the RF front end, I used the popular softrock design. I still had a softrock version 6.0 laying around, with an si560 VFO, controlled by an mbed controller. Details can be found here: mbed - Si570-Based Universal HAM Radio VFO

Softrock version 6.0 for 40m band

The block diagram, slightly modified after simple circuits, with in the red part the softrock. The other blocks are implemented on the PSoC.

Block diagram

As follows:

PSoC SDR design

You see most of the blocks from the block diagram back in the PSoC topdesign, except for the demultiplexer, adder and delay line. These functions are implemented in software on the PSoC. An automatic gain control is also implemented in software. When it clips, the blue led will flash. As I said already the majority of the design is copied from simplecircuits. The PSoC kit is powered from the softrocks LM78L05 voltage regulator, which seems to be enough. I measured around 30mA power consumption. For audio output I used a small battery powered speaker. Here is a picture of part of the softrock schematics with the connections to the PSoC kit:

 softrock schematics with the connections to the PSoC kit

Some pictures of the test setup:

test setup top view test setup front view

And of course, the proof of the pudding is the …listening:

Final Remarks:

By adapting the simple circuits design to the PSoC 5 kit I had this software defined radio quite fast up and running. For the future I have a lot of improvements and additions in mind. First of all I will check whether adding an extra ADC and removing the multiplexer will improve the quality. The PSoC 3 used by simplecircuits does not allow two ADCs, but the PSoC 5 does. The Si570 control currently done with an mbed will also be implemented in the PSoC, together with the encoders and display. I will try to add more modes, and finally try to make a transmitter, using the softrock rxtx 6.2. All parts are already available, the only thing I’m lacking is time.

The code can be found on Github, see link below.