Digital Signal Processing

Please Read

The following downloads and designs are the copyright of Cumbria Designs and are provided free for non commercial use. In return for using any of the material provided below, we ask that you make a donation to a registered humanitarian charity. How much and to which charity is up to you of course. We hope that you find these downloads a useful addition to your projects.

All programs are offered without warranty and liability against Cumbria Designs for any loss resulting from their use. Unless offered, source code is not available.

DSP Project Area

Welcome to the DSP section of our website. This is a new field for us so far it it has been a highly rewarding and interesting journey. We're launching this section with a useful Windows program called "FIR Designer". This intuitive little application was developed partly as a learning exercise but mainly because we couldn't find anything similar for free on the internet. The program allows you to design and develop a range of "rectangular" windowed FIR filters for 16 bit DSP processors. Filters include high pass, low pass, bandpass, Hilbert and "Twisted" +/- 45 degree pairs. Two window functions are provided, Blackman and Hamming, which will suit most applications. Graphical output of the impulse and frequency responses are produced along with text listing of the filter coefficients in hex and decimal. Once you are satisfied with a design, the resulting filter kernel file can be saved to a suitable location for editing with a standard text editor such as Notepad or for copying into your application. Three file formats are available; decimal, 16bit hex suitable for processors such as Microchip's dsPIC series and 24 bit hex for the popular ADSP21xx DSP devices.

NEW! "Eden dsP" Groups.io Group

Have you built or are you considering building an Eden dsP module? Then the Eden dsP Groups.io site is for you! The group features a forum for news support and exchange of ideas along with a files area offering code examples and projects. More details at; https://groups.io/g/EdenDSP

FIR Designer Download and Installation

FIR Designer is written for Windows operating system and has been tested with Windows XP, Windows 7 and Windows 8.1. To be able to run FIR Designer you may need to download and install Microsoft Net Framework 4 or higher. This is a free application from Microsoft and is available for download from here;

Once you have installed Microsoft Net Framework,

1. Download FIR Designer from here; FIR Designer either opening the compressed file or saving it to a convenient location.

2. Open the FIR Designer folder and double click on the "setup" file to install.

3. You may be presented with a publisher warning, click OK and the application will install itself and run.

Please read the help file, which is displayed by pressing the "Help View" button, for instructions on how to use FIR Designer and acknowledgements to those who have contributed to its development. We hope that you find this a useful tool for designing and developing your next DSP project!

The Eden DSP Module

This simple but versatile dsPIC33E/F based design offers an ideal route into practical DSP. join the Eden DSP group for software, projects support and more! https://groups.io/g/EdenDSP

The current version is 1.3, links to the documentation files are given below.

Processor Compatibility

The following 64 pin TQFP package dsPIC processors have been confirmed to operate with the PCB;


MIPS Notes
dsPIC33FJ64GP306 40 Superceded by the 'A' version.
dsPIC33FJ64GP306A 40 PCB originally designed for this device.
dsPIC33FJ128GP306A 40 Larger memory version of the 360A.
dsPIC33EP512GP806-I/PT 70 Peripheral pin mapping required to present CODEC interface onto correct pins. Some port pins will not align with silk screening. Large flash and RAM, almost twice the throughput of the FJ devices.
dsPIC33EP512MC806-I/PT 70 Recommended device. Peripheral pin mapping required.

Eden dsP PCB Version 1.2

This new version incorporates the following changes;

  • 24 Series SOIC EEPROM on I2C port 1

  • Head Phone outputs AC coupled

  • 3v3 Power header for external circuits

  • +5v Power header for external circuits

  • Increased I/O with optional pull ups

  • ICSP pin out now matches the PicKit 3

  • Same board size (100mm x 64mm) and fixing centres as earlier versions

Please visit our kits page to order securely on-line. Tax and shipping will be applied according to the destination.

For documentation on this and earlier versions, please visit the Yahoo Groups Eden dsP site;


Demonstration Software

Here are a selection of programs written for the Eden DSP Module that may also be easily adapted for other dsPIC platforms. Most of these are "work in progress" and will be updated as development proceeds.

  • Flashing LED. A simple way to check that your Eden DSP module is running. Flashing LED

  • FIR Filter demonstration. A narrow band 301 tap audio filter sampling at 8kHz. To change the filter simply update the kernel file using FIR designer. FIR Filter Demo

  • DSP IF. Now we're starting to get ambitious! A 13kHz DSP receive SSB/CW IF system with switched bandwidth filtering, de-noiser and auto-notch. (See the Rishworth presentation slides for more details). Note that the AGC system has yet to be implemented. A phase accumulator/look up table routine with interpolation is used to generate the sine and cosine carriers. A more elegant Taylor/McClaurin series based sine generator is on the "to do list" as a replacement for this (see below) . DSP IF Rx

  • Sine Wave Generator. The sine wave program uses a polynomial series to efficiently and accurately compute the sine of a 16bit angular representation of phase. In short, it is a small piece of code that can be used to make audio tone generators or to generate the sin/cos carrier signals in DSP IF systems. This demonstration program serves to show how the code is constructed and how it is used. With a little adaptation it could form the basis for an audio signal generator or multi tone source for IMD measurements. In due course I will incorporate this into a revision of the DSP IF to replace the table look up carrier oscillators. Sine Wave Demo

  • Direct Conversion Receiver. This program configures the Eden DSP card to behave as phasing receiver "back end" accepting I and Q audio inputs from a quadrature detector to produce audio out on both channels. The demodulator works in USB or LSB, and a selection of filters are included for speech and CW bandwidths. The program also incorporates an LMS auto-notch and de-noiser. My sincere thanks to Brian George G3ZOH who carried out the testing and assisted development using his Softrock Ensemble II. Two projects folders are presented, one for MPLAB v8.x and the other for use with MPLAB X .

DC Receiver MPLAB v8.x

DC Receiver MPLAB X

The Rishworth DSP Presentation

The slides used in the presentation to the GQRP Club at Rishworth, entitled "DSP for under 50", can be downloaded from the link below.

DSP for under 50