• Welcome to ASR. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

AliExpress cheap low distortion analog sine generator - review and measurements

Thanks a lot @audio_tony for the links and for your advices.

With eBay pictures, I’ve found it on Ali too : https://a.aliexpress.com/_EJBepS4, https://a.aliexpress.com/_EQZkJlS.
More expensive than other boards, probably less noisy too. I’ll do some comparisons.

I think I will use a small DIY centralized 5V linear power supply to power this oscillator as well as other stuff (like an ADC ...) powered by USBc. I’ll take care not to use the soldered plug of the DC-DC converter.
 
Given the price, I'll give this oscillator a try.
The distortion probably depends on the appearance of certain capacitors and resistors, I'm not sure all units are equally good.

Does anyone know how to set the frequency to 10 kHz ?
Hey Jan,
The coneheads here are too wound up chasing crazy numbers to actually give any useful information so here:
If you hit the vendor link in the original post, it takes you to the product listing with a picture of the part locations.
You can page the picture down to the schematic that shows you which parts do what. Presuming that you've seen oscillators before and can recognize the frequency-determining components, there you have it. Just get out your slice rule, scale the part values to get what you want.
 
You can page the picture down to the schematic that shows you which parts do what.
I didn't even notice that previously!!

The capacitors that control the oscillation frequency on the board are selected and paired using a digital meter. The resistor that controls the oscillation frequency is a 3.3K resistor and a 200 ohm 3296 multi turn potentiometer connected in series. The pairing is adjusted by measuring with a digital meter to ensure the accuracy and low distortion of the output frequency.

matters needing attention:
In theory, R10=2R13, C3=2C4, Minimal distortion.
2. The data in the figure is a value of 1KHZ. If there are other frequencies, besides R6, R7, C1, and C2 that need to be adjusted accordingly, R11 should also be modified according to the frequency.
For example: 50HZ, R11=447K, 60HZ, R11=408K.
 
Hey Jan,
The coneheads here are too wound up chasing crazy numbers to actually give any useful information so here:
If you hit the vendor link in the original post, it takes you to the product listing with a picture of the part locations.
You can page the picture down to the schematic that shows you which parts do what. Presuming that you've seen oscillators before and can recognize the frequency-determining components, there you have it. Just get out your slice rule, scale the part values to get what you want.

Thanks a lot @Ixnay.
Unfortunately your message didn't help me much.

I already knew the schematic and comments around.
But I’m not comfortable with this kind of oscillator and I don't trust simplistic formula without explanation, especially about an ultra-low distortion oscillator.

Fortunately, the WEB is a goldmine for those who take the time to search.
https://sound-au.com/articles/sinewave.htm provides excellent explanations about State Variable Filter Oscillator and tips to reduce distortion.
 
Last edited:
@pma (and others):
Thanks for this testing. I had a couple of these purchased a few years ago but hadn't used yet. After reading this, I fired one up and noticed clipping on the negative side with a peak to peak output of ~28V. So, I won't even bother yet to try to measure distortion. Did any of you have to do anything to your oscillator to bring the output level down to a sensible level? A couple of pics attached: oscillator image and waveform on scope.
mlloyd1
 

Attachments

  • my_osc_20260123_small.png
    my_osc_20260123_small.png
    2.4 MB · Views: 78
  • scope_0.png
    scope_0.png
    28.5 KB · Views: 62
no, my two samples worked out of the box with a peak to peak output of 21.3V well centered around 0V.
Perhaps something wrong around the amplitude stabilization control (D1,D2,D3, TL071, JFET, 1/2 NE5532...) ?

But I have to adjust the frequency, it is around 920 and 930 Hz in my case.
And to check the distortion with an appropriate tooling. I just don't see any harmonic on the FFT of my scope, better than an average AWG.
 
no, my two samples worked out of the box with a peak to peak output of 21.3V well centered around 0V.
Perhaps something wrong around the amplitude stabilization control (D1,D2,D3, TL071, JFET, 1/2 NE5532...) ?

But I have to adjust the frequency, it is around 920 and 930 Hz in my case.
And to check the distortion with an appropriate tooling. I just don't see any harmonic on the FFT of my scope, better than an average AWG.
thanks for replying. interesting. are yours a recent vintage or older? mine are from 2017.
 
First quick mesure with an E1DA ADC iso grade B in stereo mode.

tr2.jpg

Good for the price and quality seems to be consistent across samples.
The oscillator is powered by a small isolated +5V -> ±15V booster.

A Chinese 3590S 1KΩ potentiometer at the output doesn't seem to degrade performance and should ease the usage.

Still some work to adjust the frequency (an DUT doesn't care but a notch filter does), get the other running at 10KHz, try to optimize SNR and THD and to put them in a housing.

Open-housing-1.jpg
 
After building a kind of powerbank with linear 5V regulators to power the oscillator and the E1DA ADC iso, APU ... (useless at least for loopback testing, I had almost the same results than with my bench power supply or even an USB charger) I'm back with the oscillator.

The first task is to achieve a frequency close to 1kHz in order to use the E1DA APU.
On my two (recent) samples, R6 and R7 are 3.6K, not 3.3K as on the schematic.
I replaced them by two 3.3K 1% 50ppm MF0 Yageo ones. Luckily, C1 and C2 are around 54nF so I was able to trim the frequency around 1KHz.
The frequency is now close to 997Hz (after at least 30 minutes of warm up, before the frequency is not stable and the distortion very high).

A quick test showed me that despite their blue color, the original resistors look more like carbon resistors than metal film resistors.
They suffer from a very high negative temperature coefficient (estimated at several hundred ppm/°C, I'm too lazy to measure it precisely), while the Yageo resistors that replace them are less than 10 ppm/°C (20°C-70°C), well below their specification of 50 ppm.
C1 and C2 capacitors have a quite strong positive temperature coefficient. Does anybody knows capacitors with low temperature coefficient I could use ?
Does that explain the long warm-up time ?

The best I had measured with an E1DA ADC iso grade B and after trimming VR to minimize H2 was

tr25-R-ULD.jpg


But the oscillator's noise level is close to the ADC one, I'm not sure these figures are really accurate.

So I (finally) tuned my APU and generated a calibration file for REW, using my AVG, my RMS voltmeter and my oscilloscope (my RMS voltmeter doesn't go above 3KHz).

Why the generic calibration file from E1DA is 0dB away from the notch frequency and 30dB at that frequency, while Archimago's is 30dB away from the notch frequency and 0dB at that frequency, remains a mystery to me.

I generated my own (~ +20dB away from the notch frequency (the actual APU gain) and ~ -10dB at the notch frequency) which corresponds to reality.
It seems to me that the N, THD, THD+N, etc. values displayed by REW in the RTA window are therefore correct and require no arithmetic.
But maybe I missed something ?

My first measure with the APU and its calibration file was :

tr25-R-ULD-APU-cal.jpg

The noise value is 7dB lower. Why not, thanks to the APU's the noise level seen by the ADC if far higher than it's own noise level. It seems realistic to me.

But the THD is three times higher than that measured previously !
I trimmed the VR again on the oscillator and the result was a little bit better :

tr25-R-ULD-optim-APU-cal.jpg

Then I added a 1K load (a Chinese 3590S potentiometer), trimmed again VR and :

tr26-R-ULD-optim-APU-cal-1K-3590s.jpg

The THD is now closer to the first measurement.
With multiple loads, not forgetting the impedance of the ADC or APU, I realized that the oscillator was sensitive to these factors and required VR adjustment to minimize THD.

I also noticed that the THD increased significantly at low output levels with a simple 1K potentiometer at the output. I don't have this problem with my AWG, a DG811 which has a lower output impedance.

I found a way on diyAudio to control the level by varying the voltage across R12. I'm experimenting with it, but the control isn't perfect and the stabilization time at low levels is extremely long (almost a minute for an attenuation of ~25dB). I'll keep you updated on my results.

Oh, by the way @mlloyd1, I noticed that D1 seems to be soldered backwards on your circuit board.
That could well be the cause of your problem.
It looks like R12 is 2M, whereas it's marked 2.2M on the schematic (and on my copies), but I don't think that makes much difference.
 
I wasn't satisfied with the output potentiometer. It introduces high-order harmonics, and the THD increases drastically at low output levels (precisely those that are barely usable).
Is this the effect of the cheap, wire-wound, multi-turn potentiometer ? Probably.

So I tried, as indicated on diyaudio, to vary the bias of the AGC and I added a voltage divider at the output :

Variable-polar.jpg
Output-divider.jpg


R16 limits the bias around 0V because at this level the oscillator becomes unstable and takes several minutes to stabilize.
I also replaced R2, R3, R12 and to minimize the THD, R4 (now 900R) with metallic resistors.

The HI output varies from 430mV to 6.9sVRMS, the LOW from 81mV to 1.3VRMS.

But the frequency also varies depending on the output level. This is particularly noticeable in my small enclosure, which incorporates the 5V to ±15V converter.
The original oscillator has a temperature coefficient of approximately +200 ppm/°C.
With C1 and C2 replaced by mylar capacitors, which are slightly less sensitive to temperature, and R6 and R7 replaced by metallic resistors, the coefficient is approximately -360 ppm/°C.

In the original version, the positive coefficients of the capacitors and the negative coefficients of the carbon resistors partially compensate for each other. However, when they are replaced with metallic resistors, only the coefficient of the capacitors matters.

Since I didn't have a COG MLCC for C1 and C2 (±30 ppm/°C), I reused carbon resistors for R6 and R7, as originally intended. The temperature coefficient is now approximately +160 ppm/°C and the frequency drift versus the output level is :

DeltaFvsLevel.jpg


Carbon resistors R6 and R7 degrade THD by a factor of 4 compared to metal resistors.
Fortunately, this only occurs at output voltages close to the maximum. The THD even drops below that of metal resistors for levels below 4VRMS.

THDvsLevel.jpg




tr34-1.jpg
 

Janfi67,​

Thanks for your suggestions. Yes, on my boards, the middle diode needs to be reversed to match all the pictures I've seen of these oscillators. And when I lifted R12 to measure, it was indeed only 2Meg.
But, both these changes didn't remedy the problem, and the clipping moved to the positive side. :facepalm:
I'll play with it for more diagnosis when I get some time again; maybe in a week or so ...
Looks like you're having interesting results.
1778624675116.png


1778624501866.png
 
Some news about my work on the oscillator.

R1, R2, R6, R7 and C1, C2 changed to metallic resistors and MLCC C0G capacitors. Their temperature coefficient is very low and the oscillator frequency is now very stable (less than 0.1Hz for the 1KHZ from cold to warm). I used either TTH capacitors (quite expensive) or SMD 0803 (0.03€) soldered on a SO-223 to DIP adapter.
The THD still depends on the load and output level but less than with the carbon resistors.

To minimize THD, I initially chose an output level close to the one I would use most often (between 1 and 2 VRMS).
Then I adjusted R3 to reduce H3 as much as possible.
Then R10 to minimize THD, but this is not really necessary.
Then R4 to minimize THD, mostly H2.
Now R3=150KΩ, R10=1.15MΩ and R4=1.3KΩ.
Then I trimmed again VR1 to minimize H2.

I tried to replace the 1S1588 to Schottky signal diodes without success.

Measures with a E1DA ADC iso and APU (+6dB boost) at 1VRMS (in red, APU input is shorted) :

tr37-1KHz-17dB-N1.jpg


and 2VRMS

tr37-1KHz-11dB-N1.jpg


To get 10kHz on the second oscillator, I replaced C1 and C2 with 4.7nF capacitors and proceeded as with the 1kHz oscillator.
I changed only R3 by a metal 200KΩ.
Tuning R11 had no effect and the THD was a little bit disappointing :

tr37-10KHz-17dB-N.jpg


tr37-10KHz-11dB-N.jpg


Then I replaced the original JRC5532DD by a T.I. NE5532D from a reputable source manufactured in March 2024 if I'm reading the date code correctly. The difference is significant, THD is reduced by half (it has virtually no effect at 1kHz where I left the original JRCs):

tr37-10KHz-17dB-5532.jpg


tr37-10KHz-11dB-5532.jpg


The peak at 57 KHz comes from the ±15V switching power supply used for the oscillator, the one around 45 kHz from the USB charger used to power everything.

To avoid crosstalk between the 2 oscillators in the same case a strong copper shielding is required. The 1KHz oscillator and its outputs are completely separate from the rest.

Boitier ULD.jpg


Still very cheap and now much easier to use
 
Last edited:
Why pursue such a complex approach when REW provides sufficient functionality for standard home measurement purposes?I obtained this result in REW using a €20 Fujitsu Futro, with the signal routed from a USB sound card via Toslink to the AV processor, and returned through Toslink.I am entirely satisfied with the outcome.

B.jpg
 
This is a fully digital loopback.
Completely not related and applicable to topic discussed here - measuring amplifiers.
 
Why pursue such a complex approach
I don't know about OPs, but AFAIAC if I only have one signal source I cannot properly qualify or quantify it -- it might have a problem, and how would I know? I have various analogue low-distortion oscillators I have built over many years, but none lower than 0.02% or so, which simply does not count nowadays. I have just purchased and received one of these boards to use as a sine source for the analogue True RMS very-low distortion meter I started building in, err cough 2002, and which when finished (another cough) will give me an independent check on my high quality digital stuff. It's nice to have something as a reference where I simply don't have to worry about aliasing or noise shaping or quantising or anything else digital. But it's a back up to my digital measurements, and no doubt the board will be modified extensively (sine/cosine outputs, buffer, tweaked FET gate drive (edit: already optimised) and switched frequencies are already on the list, with a possible sweep mode to come...). Buying this little board was in every way less of a PITA than finishing the one I started years ago!
 
Last edited:
  • Like
Reactions: DY2
You're right @Extreme_Boky, it could. But by how much?
Have you ever measured the pin to pin capacitance of a DIP socket? And compared it to the capacitance of the adjacent traces on a printed circuit board?
 
Back
Top Bottom