For novel ideas about building embedded systems (both hardware and firmware), join the 40,000+ engineers who subscribe to The Embedded Muse, a free biweekly newsletter. The Muse has no hype and no vendor PR. Click here to subscribe.

A Cheap DDS Signal Generator

Summary: A signal generator from China offers mixed performance. But what do you expect for $50?

eBay is a treasure trove of test equipment. It’s astonishing the deals one can get on used equipment. Need an oscilloscope? If you can live with yesterday’s technology there are lots of excellent Tek, Agilent and HP versions there for surprisingly low prices.

Vendors offer plenty of brand-new gear on that site as well. Some Chinese vendors sell indigenous gear. How good is this stuff? I bought a no-name signal generator, which is labeled “SSD Signal Generator/Counter” from the site for $50. It was shipped directly from China and arrived in about 10 days.

You can see it has no enclosure, but does sport a small display with pretty decent controls. In fact, the push buttons have a very crisp action. The knobs, too, feel professional. The topmost has detents, and probably is an encoder. The other two are clearly pots. Those have no calibration marks, so to understand the signal being produced one must observe it with a scope. There’s no power switch; DC comes from a wall wart, and as long as that is plugged in, the unit is on.

The offset adjustment range almost lets one get a completely below- or above-zero range. But when those extremes are approached the waveform saturates and distorts, as the following pseudo-triangle wave shows:

A square wave’s duty cycle can be adjusted from 0 to 99%, though at the extremes a slow rise time creates a lot of distortion.

The rise time on the analog output is 35 to 40 ns regardless of frequency. That’s awful for a lot of the work I do, but isn’t far off of some more expensive (couple of hundred dollars) equipment I’ve tested. Poking around, it turns out an Altera FPGA generates an 8 bit digital signal fed to an R-2R network which is followed by a low-pass filter, which explains the sluggish rise time.

With a max frequency of 10 MHz 40 ns may not be a problem for your projects. But consider: 10 MHz is a 100 ns period. As the square wave output gets much above 6 MHz it starts to look a lot like a sine wave. Triangle waves look pretty sine-y above 8 MHz.

The TTL output is much better at 8.5 ns.

Sine waves are uniformly beautiful (with the exception of a small harmonic described below). Square waves below 600 KHz look great, too. But at 1 MHz the duty cycle rapidly varies between about 49.45 and 50.78%, increasing a little as the frequency goes up. You can see both the slow rise time and the jumping duty cycle in this scope shot:

Very strange.

I was a little disappointed by the accuracy of the generated signal. Selecting a 10 MHz sine wave produced one at 10.019878 MHz. But it was almost spot on at 5 MHz.

A counter accumulates pulse counts well, and the unit measures frequency to about 1 count of accuracy. That’s 1 Hz at low frequencies at 100 Hz at 10 MHz.

No manual is supplied, so some functionality is a bit mysterious. Load and save commands exist; probably to save setups. An intriguing log/linear selection didn’t seem to do anything.

At $50 you can’t expect a lot from a piece of test equipment, but I did feed the 10 MHz sine wave into my spectrum analyzer, and found harmonics as seen here:

There are peaks at 5 and 15 MHz which are 52 dB down from the fundamental, and as well as one at 20 MHz, which is 33 dB down from the center. That’s not much energy. Every DDS signal generator I’ve tested has harmonics. My HP 8640B signal generator shows no discernable harmonics, but it uses a cavity oscillator rather than digital synthesis.

Despite the nits, for $50 it’s not a bad little unit, particularly for home use. Figure on pretty good sine wave performance, and decent square waves at low frequencies.

Published August 12, 2015