Tsunami Wavemaker

Status: Making waves...

A need arose at some point in the past to have a wave generator for whatever reason. This need had come up in the past and had led me to snag a sample Analog Devices' AD9835 DDS/DAC which is controlled over some serial protocol similar enough to SPI. It's now been idle in the parts cabinet for quite some time. With renewed interest and some free time I started prototyping with an MSP430 Launchpad since I had been searching desperately for an opportunity to put one in an application. It became clear that this idea was run over when I took a look at a practical set of considerations for the system:

  1. Character LCD would be nice
  2. Some buttons, maybe a continuous rotary switch
  3. µC should have SPI hardware
  4. Amplifier up to 25MHz minimum
  5. No concern for power consumption
  6. DDS is 5V

The tiny MSP430 on the Launchpad eliminates a practical implementation of the LCD since it lacks enough IO pins to share with DDS and buttons. It also has trouble interfacing with the DDS since the DDS only sees 4.something+ volts as HIGH and the MSP430 only has push-pull outputs, requiring external circuitry to drive the DDS. That sucks. The solution to that was to grab a big dsPIC30 (native 5V) that had been sitting around. They're speedy little buggers, especially for DSP applications but they generally are a bit short in the RAM department. They're also quite pricey if you don't take free samples. Development tools are free with liberal use of their non-free components combined with a custom build of the open source components (see here).

Early prototyping completed, I drew up a board using a PIC24FJ256GB106 (3.3V with more RAM, OSB OTG, and more useful peripherals) instead and sent the design off to Seeed to be printed. Also new to this design are a buffer based on the 60MHz MCP663 (also sampled...) and some capacitive touch buttons.


Tsunami schematic

Tsunami schematic

Eagle Files

Keep in mind that this PCB design has the DDS on a breakout board for the regular TSSOP16 package, since that's how I had it before and I'd rather not risk messing up the only one I've got with two more rounds of hot air to move it.

Code hasn't been adapted from the dsPIC30 setup yet, but I will post a link to the repository when this starts.


I now realize the only components I bought (didn't sample) are the oscillator, pin headers, passives, and the LM317. Anyways, prices are listed as the best found on findchips.com in small quantities.

Back to more useless crap

Valid XHTML 1.0 Strict