CV line noise is modulating my VCO!

synth1

this is how my synth is going but i’ve been having an issue.

the keyboard works digitaly and uses a serial-to-parallel shift register → R2R DAC to provide the CV line for the VCO.

but whenever the CV is connected there’s a lot of noise. That i suspect is noise in the CV line modulating the VCO

i tried to get rid of the noise by making a low pass filter but i ended up making a glide/portamento feature (which i’m gonna end up using :joy:) the “filter” ended up being a regular passive low pass with a buffer afterwards with a 47k to 1M resistance and 1nF capacitor (104)

but i want to know if anyone knows how to get rid of that noise?

1 Like

What kind of noise? Like white noise? A hum?

104 is 100 nF (i.e. 10 x 10^4 pF), not 1 nF. That’s an RC time of to 4.7 ms to 0.1 s, or a corner frequency of 1.6 to 34 Hz, which is why it’s behaving as a “glide/portamento” circuit. To cut high frequency noise without “portamento” you’d need a much smaller resistance or capacitance.

1 Like

i wrote the 104 code because i wasn’t 100% sure of the real value :joy:

definitely not white noise it sounds more like a harsh FM

Since it’s past midnight i won’t be able to make a sound sample
but i’ll do that tomorrow.

image

This is pretty much how the circuit is right now

i wonder where i could add that lower capacitance capacitor

Maybe if you put a recording of the noise somewhere where we can listen to it we will be able to recognize it, or at least the problem will become more clear.

Oh, and while you are at it, tell us how you made the R2R DAC so that we can see whether that in itself could cause noise on the CV line. Maybe post a schematic or a hand drawn version showing some details? And finally tell us how you power the contraption. Another known potential source of noise.

I’ve recorded a short video trying to explain more of what’s happening.

Here’s the schematic

Try to come up with tests/experiments that will section specific parts of your circuit off and simulate their working, thus testing whether they are the root of the problem. E.g:

1, start checking your power supply. This will be tricky if you do not have an oscilloscope. Check whether the output is constant while you play the instrument and hear the ‘modulation’. If the power supply’s voltage varies, so will the R2R network’s output and therefore the oscillator. Maybe you have another 5 Volt supply you can use temporarily test the DAC? Then find out whether that eliminates the problem. If it does, the 5V power is the cullpritt.

2: Try to hook up a CV voltage using a potentiometer connected to the power supply (one pin to +5, one to GND, middle pin to CV line) and see whether this will give a stable tone or also result in the audible modulation. If there is none, then you know the DAC circuitry is the problem.
If there is a modulation problem, then this can be in the oscillator itself.

Let us know what your results are.
Remember to introduce one change and see what effect it has, otherwise you will have problems determining what is happening and why.

Well, to me the obvious cause of the noise is the digital circuitry (a microcontroller) that’s used to poll the keyboard and send SPI data to the shift register. I can try to search a different cause but i think that’s it.

i think the best approach would be to try to filter the noise in the CV line :thinking:

But in the meantime i’ll try your sugestions and see what comes up.

If the values on the outputs of the shift register are changed only when a new key is pressed, the output of the dac should be constant. If the keyboard is scanned continuously one way to implement this would be to only set a new value in the serial buffer if there is a change. Are you doing that or are you continuously shifting in the same value if no new key is pressed?

When listening to the video I heard a change of pitch that was quite large at t = 30s. But maybe you are speaking of some other noise? At what time exactly in the video is it audible?

Whenever the CV line is connected to the oscilator you can hear the “noise”
whenever i press a key a new pitch is set but when i let go of the key the pitch goes up a bit (this is not intended and i don’t know what causes it but it’s an interesting vibrato feature :thinking: )

The could be a sign that the input voltage to the DAC is not stable. Maybe it drops a bit when you press a key and restores to its original value when you release the key?

i guess. But i still don’t have a reliable way to tell this
i think i could improvise an arduino osciloscope but i think the ADC on the arduino nano is pretty slow so i don’t know how much better it would be.

the steady state voltage on the DAC doesn’t seem to fluctuate when using my cheap multimeter. But again i don’t think the multimeter would be able to catch the noise on the CV line anyway.

it would be nice to have some sort of filter but i don’t know where to put it
maybe before the buffer or after the amplifier?
those are the only places i can think

What is the answer to this question?

it’s scanned as fast as possible asynchronously and compared with the previous state.
the keys are wired in a shift register daisy chain so it’s like SPI as well.

Oke, is the state of the DAC set every time or only when there is a change?

Maybe if you set the same value repeatedly (there is no need to do this, but you may have implemented it this way) there is some noise as a side effect. You can try this by changing the software.

Only when there’s a change
there’s also a MIDI line in the system that also only happens when a change occurs
the MIDI is sent to the yellow board on the bottom right side of the synth

If you change the scan frequency (insert a sleep(10) or something), does the noise then change as well?

Oh, so i think i’ve figured out the source of the noise and it isn’t modulating the VCO it’s just your usuall digital switching noise leaking into the signal path.

That is: a decoupling issue :roll_eyes:

after adding decoupling caps around the digital circuitry i still can hear the noise.
Only uppon disconnecting the digital circuitry from the analog circuitry the signal becomes clean.

so far i’ve beeing using ceramic 106 caps not sure if the ESR is enough for a decoupling cap but it’s what i have…

should i be doing something differently?

10 µF ceramics? That’s… unusual.

Are there bypass caps around the analog ICs? One 100 nF (104) ceramic from each power pin to ground, as close to the IC as practical. And 10 µF (electrolytics, usually) from power rails to ground near the power supply connection.

Is there one power supply or more than one? Are all grounds connected?

One power supply, same ground, no decoupling caps near analog ICs (why?), i don’t have 10u electrolytics (do they have lower ESR compared with ceramic?)

the only decoupling caps i have on the system (that are meant for shorting the digital noise) are on the digital board where it receives +12 from the power supply.
i also got caps on the DAC board (+5 and +12 lines) .

As I understand it bypass capacitors are used to stabilize chips against incoming noise, rather than to block outgoing noise, so you’d want them near the analog chips too:

10 µF ceramics are uncommon. I see Tayda does have 10 µF MCCs; that’s the largest MCC they have. I normally use electrolytics.