State Variable Filter LPF noise

Started by MrStab, December 29, 2016, 08:34:57 PM

Previous topic - Next topic

MrStab

C7's orientation error is in the original diagram. i'm surprised how often it comes up on this forum but no-one seems to have noticed till now!
Recovered guitar player.
Electronics manufacturer.

Rob Strand

#61
Quoteokay, i think i get what you're going for with the R5 thing. i'll give that a go tomorrow.

Quote
with inverter gain lowered, am i right in thinking that a lowered R6 is limiting the problem at-source, whereas compensating with R16 is bad because it puts us right on the edge again?
Sometimes you do the you do get that local fix effect.   For this case (lower inverter gain and smaller R6) it seems the reason is quite subtle and is related to the whole loop (U3 ->  U1 -> BC pot -> SVF).   The puzzle is why no oscillation when the the gain is restored by R6.    From what I can see reducing R6 works because it reduces the phase-shift in the whole loop.  While this effect works without the cap across R7 but having the cap there seems to put the reduced phase shift in the right band of frequencies.  Just to make things harder to understand the bandwidth of U1B is helping.   I'd like to give you a nice clear explanation and point the finger but there's too many interacting things going on.
My explanation above is wrong - to be revised.  I don't know at this point!

Quote
i've tried as high as 10k for R6 with the inverter gain lowered, and that's click-free, too
That's a good indication things have settled.   Once the gain around the loop is reduced it's not uncommon for oscillation to be disappear.

If it helps your wiring at all.  Rather than split R15 into two series it is possible to put a series C + R network across R15.   This is *absolutely identical* in function it just requires a different cap value; which we don't know yet anyway.   At low frequencies we want the resistance to be 4.7k as it was before, so that means just leaving the existing 4.7k in place.  At high frequencies we want 2.0k  so  we make R = 3.5k  so R in parallel with 4.7k equals the target 2k (C shorts out and puts R=3.5k in parallel with the 4.7k to give 2.0k).  I'd use a lower value of R say 3.3k to start maybe caps around 100pF to 500pF.

Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

MrStab

i know i shouldn't be thinking in such crude visual terms, but i can't help think about the "dip" in Spice i mentioned way back. maybe it's a clue. it's not anywhere near as prominent direct from the SVF outputs, nor the inverter, but seems to be an artefact of the diffamp process. with R6 at 20k and R15 at 4k7, above is the output from U1A in full Boost and below is the output of U1B:



maybe i'm talking crap but it's been vaguely poking the back of my brain as a potential issue for a while now. i can't put my finger on why, though - i need to sit down & visualise the subtraction going on.

you said i should try splitting R5 before, then mentioned R7 - did you mean one or the other or should i try both? i might hold out for a while in case another revelation comes up, as this is still a new development. i have to rehearse for a gig most of tomorrow so i can give it some thought (...while i should be remembering the next verse).

cheers!
Recovered guitar player.
Electronics manufacturer.

Rob Strand

#63
Quoteyou said i should try splitting R5 before, then mentioned R7 -
Sorry about that.   I'm not switched-on today at all - it's like the drink driving version of posting - it's dangerous!

For the split resistor I meant R15 (I at least got that right).  I'll try to clean-up the other posts.





Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

MrStab

no problem, at least it's not the post-drinking version of driving! :D

R15 is a lot easier to access than resistors in the SVF section, i'll get on it asap.
Recovered guitar player.
Electronics manufacturer.

MrStab

#65
success! i hope!

i adjusted all the values somewhat - R6 and R15 are currently 10k, which should provide roughly +/-15dB gain from U1A. in parallel with R15 is a 4k7 resistor followed by a 2n2 cap. through the noisy POS USB interface i use to mess around at night, there's no centre-click!

naturally i want to double-check this tomorrow, through an actual guitar amp, but for now it seems to have done the job. that gives a roll-off of about 15.4KHz, so if it is cured then i'll try lowering the cap a bit.

i didn't realise that the resistors in this configuration should be considered paralleled for the high-frequency gain btw, now i know. makes more sense. the actual corner frequency calculation would just be 4k7 though, right?

thanks a ton for your help, Rob! i'll let you know if it does definitely work. in addition to a decent show, this has been a good end to a day that began with our bassist telling us he was violently ill at the last minute. lol
Recovered guitar player.
Electronics manufacturer.

MrStab

#66
confirmed! no more noise through a loud amp! i've yet to return the Frequency pots to voltage dividers, but i'm pretty confident. i changed the cap to 1n5 for a 22.6KHz roll-off, still no click. so definitely ultrasonic. can't thank you enough, Rob!
Recovered guitar player.
Electronics manufacturer.

Rob Strand

Quoteconfirmed! no more noise through a loud amp! i've yet to return the Frequency pots to voltage dividers, but i'm pretty confident. i changed the cap to 1n5 for a 22.6KHz roll-off, still no click. so definitely ultrasonic. can't thank you enough, Rob!

No problem at all - that's really great news!
It's been quite a tricky one, I get the idea, but when I look at the details it shouldn't have been so hard!
It was getting to the point where I nearly bread-boarded it myself.

(BTW - glad you sorted it out.   I've been afraid of posting more junk as I haven't sept so well over last few days.)


Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

MrStab

#68
still working fine, apart from some noise. i can't figure out if it's just the nature of the SVF beast at this range (1-16KHz) or related to the inverter problem. i still have some articles to get through re. general noise reduction, but i'm curious about any possible correlation.

it's only a potential problem when the highs are boosted, which is what you'd expect, really. minor hiss is audible when BC is flat - there is some minor bleed (noise) with this band in BP mode as well, which leads me to think it's probably not the shelving circuitry. no unwanted noise coming out of other bands.

i've read this is one of the rare instances in Pedal Land where op-amp choice matters a lot. the TLC274 datasheet says 25 nV/√Hz @ 1k, so i may try TLC2274 which is about 9, iirc. they're not too cheap, though, so i'm not betting my bottom dollar on that being the problem just yet. (edit: just realised i have some 2274s, no major improvement)

reducing R7 & R8 to about 6k does help, i can't tell what helped more, though: the fact i lowered the gain, or that i lowered the impedance. i might try again later in a different room with a different amp, but my past experience suggests that's not the problem (just a router and PC in here, a good coupla metres away).
Recovered guitar player.
Electronics manufacturer.

Rob Strand

#69
Quotereducing R7 & R8 to about 6k does help, i can't tell what helped more, though: the fact i lowered the gain, or that i lowered the impedance. i might try again later in a different room
Without changing the amount of gain and Q' etc.  I suspect you won't be able get far.   If you have high resistances it is often a source of noise.   I'd be looking at the integrators, as there are largish 500k pots.  The rest of the circuit doesn't look too bad in terms of scaling.

If you imagine scaling the *all* resistors and caps around the integrators (ie. 33k, 12k, 500k and 1n)  by a certain factor  then the circuit should behave the same from a frequency response perspective.   By making the resistance smaller and the caps bigger you decrease the noise.  Once you decrease the noise from the resistors below a certain point then the opamp noise starts to dominate again and so to improvement further you have to find a new opamp and possibly reduce the resistors further.  In some circuits changing from bipolar inputs to cmos input opamps helps as the input noise *current* no longer contributes noise.

The problem with this stuff is you have to analyse the fine details of the circuit and weigh-up where the main noise contributions come from.   If you change *all* the opamps often this helps because in a circuit with many opamps the noise all adds up.  However if one part of the circuit is causing trouble then you might be able to get just as much noise reduction by scaling down that one area and leaving the opamps (or do both).

One way to find out if the integrators are noisy is to set-up the frequency pots to the 33k end, listen to the noise.   Now change the integrator caps from 1n to 10n and set the frequency pots so the wiper is at about 100k from the top (opamp end) and listen to the noise again.   The aim here is both configurations produce the same frequency - maybe check by ear.  It's not a precise test but it might give you an idea.  - I did a quick check in spice and it seems like you should get more than 9dB noise reduction from the integrator which you should be able to hear.    (I only looked at the integrator not the whole circuit.)   So to some degree this does show the integrator scaling is potential problem area.

Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

MrStab

*kicks self* the noise is greatest with the full 500k in the signal path. given what i've tried, i think it's quite likely to be that. i used to make these pedals (BP only) with 100k pots without issue, but settled on sourcing C500k so i could use em in wider-range, single-band pedals too. the problem didn't make itself anywhere near as obvious in BP mode either, so i thought the CMOS op-amps had let me get away with such a high value. wish i hadn't just bought a bunch of C500k's. lol

i don't actually know a good source of dual C100k pots. i'm well & truly done with AliExpress - i had a good deal going for a while, but then i got stuck with some really poor-quality ones. i know linear pots are recommended for their tracking, but every reverse-log unit i've built has been more than accurate enough for guitar use.

i'll try to aim for the same frequency with different R/C conditions as you suggest and let you know how it goes.

cheers!
Recovered guitar player.
Electronics manufacturer.

Rob Strand

#71
Quotei don't actually know a good source of dual C100k pots
The 100k's would help.

Keeping the frequency range to a minimum is good also.  Too much range makes the pot hard to set consistently.  I like 10:1 you can go maybe 20:1.

Interestingly the connection of the frequency pots to ground (via the 33k') appears to be quite detrimental to noise!
If you just lift the 33k's the reduction in noise when the frequency pot is at the 33k end is substantial (> 4dB). At the other pot extreme it has not effect.  The frequency range is reduced by about 1.36.   If you want to reclaim the frequency range use the 500k pot but reduce the 12k's to say 10k and up the cap to 1.2n (33k's obviously evicted).
----------
Edit:
----------
Here's the result of various configurations of 100k pot, 500kpot, pot gnd lifted, pot to ground via resistor.
The other parts around the integrator were scaled to have the same min and max frequency.
(To compare apples to apples I used exact scaling of the other parts resulting in weird part values.)

Values are relative (A-weighted) noise of one integrator and frequency pot set to the lowest frequency.

Opamp FET input 25nV/rtHz.

500k "to gnd"  (as is)          0dB
100k "to gnd"                      -3dB
500k lifted                          -6.0dB
100k lifted                          -9.1dB

Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

MrStab

just saw your latest post as i was about to post this one, definitely wasn't expecting those 33ks to play that big a role! as it happens, i changed those (see below). thanks a lot for the noise readings, gives me a better picture of why the below might've helped:

--

ok, so i reduced the pot to 100k, reduced R12/R13 to 6k2 to roughly compensate (too low?), R9/R10 to 1k and C2/C3 to 10n. i also lowered R7 and R8 again (i'd returned them to 20k), and through this combination of changes, i think i have noise at a minimum.

it's barely audible when the BC pot is flat. at full Boost, it's there, but reduced. that's 15dB on top of a full-spectrum pre-gain stage of 10dB (switchable to unity), so i think it's the best i can reasonably ask for. some hiss is pretty much inevitable in that situation, right? i'm testing straight into the FX return of a 100W combo with one 12" speaker. i'll try and get a quick recording of guitar signal vs. noise later, not the most scientific data but should give a reasonable idea.

performing these tweaks on the preceding bands could also help. actually, here's a question: i put the "High" band last in this build as i thought maybe it'd avoid having unwanted highs worsened by two subsequent (lower-frequency) stages, but now i'm thinking it's the opposite, ie. the final High stage will worsen noise accumulated by the bands before it. so would it be better for noise performance to have the High band first or last? having it first (which would put it on the bottom, visually) could make the interface a bit confusing as EQs with their pots stacked vertically usually have the highs nearest the top, like on mixing desks. but ofc that's not priority!

FWIW i chose to lower R7 & R8 in particular as i figured the method of boost/cut in this circuit allowed for some attenuation in the SVF section. there doesn't seem to be a gain penalty from U1A's output and both HPF & LPF are reduced equally.

thanks again!
Recovered guitar player.
Electronics manufacturer.

MrStab

is that effect of the ground resistors proportional or fixed? ie. will having reduced them by the same factor as the pots negate any improvement?
Recovered guitar player.
Electronics manufacturer.

Rob Strand

#74
Quoteok, so i reduced the pot to 100k, reduced R12/R13 to 6k2 to roughly compensate (too low?), R9/R10 to 1k and C2/C3 to 10n. i also lowered R7 and R8 again (i'd returned them to 20k), and through this combination of changes, i think i have noise at a minimum.
6.2k is correct.  For that mod I would have scaled equally by 5 ie use R9 & R10 = 12k/5 = 2k4 and C = 5*1n = 5nF.    They keeps everything the same.  I'll have to check what happens with the 1k's.  It will make the frequency range wider.

2nd post
Quotes that effect of the ground resistors proportional or fixed? ie. will having reduced them by the same factor as the pots negate any improvement?
Basically having them in there makes the noise worse.   I'd have a very strong motivation to remove them as the circuit works fine without them and they don't add any "goodness".  It's kind of like putting a divider before an opamp then up-ing the opamp gain to compensate.  The noise source is just before the opamp gain-stage so it gets amplified.  The larger you make the ground resistors relative to the pot resistance the more it looks like the circuit they doesn't have them at all (imagine making them 100MEG).

Quotebut now i'm thinking it's the opposite, ie. the final High stage will worsen noise accumulated by the bands before it. so would it be better for noise performance to have the High band first or last?
Yes!  It is best to put the HF stages early in the chain.   If you have a accumulation of  noise sources before a HF boost the HF boosts the accumulated noise and the signal. If you put the HF boost before a noisy block of circuit you are effectively making the input signal stronger but not the noise, so the signal to noise is better.  (That's how pre-emphasis/de-emphasis works.)

QuoteFWIW i chose to lower R7 & R8 in particular as i figured the method of boost/cut in this circuit allowed for some attenuation in the SVF section. there doesn't seem to be a gain penalty from U1A's output and both HPF & LPF are reduced equally.
I'd have to check the details. Generally if you reduce the amount of boost you perceived noise will be lower and to some degree it doesn't matter how you do it.  If the gain ends-up being the same I'd expect the overall result to be close.

I probably should have tried sticking the modified integrators in the real circuit.  I didn't have time to do it.  There's many combinations of no pot ground lift/pot ground lift, 500k/100k, 25nV opamp/9nV opamps to get find where the true sources are.  A quick check showed the improvements for the whole circuit are nowhere as good as for a integrator (I expected this).

Here's the three mods:
- lift ground of pot  (reduce noise by -2dB)
- change to 100k pot (reduce noise by -1dB)
- change opamps from 25nV/rtHz to 9nV/rtHz  (reduce noise by -3dB)
Unfortunately it is difficult to assign an independent noise decrease to each one.   On it's own one effect might be weak as it is not the dominant noise noise, but if you take the dominant noise source away then it will have stronger effect on the smaller remainder.   For example if I do the first two mods and the opamp noise last, the step in noise is more like -5dB.   It's a game of nudging the noise down.

The total of the opamps appears to be dominant.  Lifting the pot is next,  but the large improvement is only at the low frequency pot setting.  Then finally the 100k change.   Nonetheless, any combination of these mods is worthwhile.

The following are equivalent:
Original:      500k pot, 33k to gnd, 12k to opamp, 1nF
Ground lift:  500k pot, no connection to ground, 8.79k to opamp, 1.37nF
For the 100k mod in either case divide all these resistors by 5 and multiply all caps by 5.
After that pick the closest standard value.


Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

MrStab

#75
just tried lifting the ground resistors and no major improvement. as you say though, it's a combination of things, so maybe i've reduced it to the point that the extra -2dB wouldn't be very noticeable. currently the setup is: rheostat, a TLC2274 with 9nV/rtHz, 100k pot and 1k/10n RC network, and R7/R8 reduction. so those mods besides the ground-res-lifting must've been the biggies.

much food for thought about the Frequency pot arrangement on this thread, actually. the only advantage i can think of to the voltage divider configuration is that it's easier to fine-tune the low end of the frequency range, but i can see that a 10k pot would give me almost the same low end (~1.44KHz).

i've been trying noise sims in Spice btw, but got a bit overwhelmed when i wasn't sure where the problem even was. or if i was using that function properly. your data is much more helpful than what i managed.

after typing all that, i realised the inverter's passband gain was at -0.5 to allow +/-15dB with the original values, but the R7/R8 reduction needed compensating for, so i restored it to -1 (ie. both R14/R15 are now 20k). the noise is louder, but still improved.  i'll mess around and see what balance of R7/R8 vs. R15 makes the least noise, actually. probably negligible.

i have the luxury of being able to have the shelving gain differ from that of the peak, so maybe i could leave it at 12dB or so, but i'd need to see how much that limits usability. i did manage to get some tones that measured on the Richter Scale earlier with a hard 12dB cut earlier. all the times i told bassists not to use guitar amps have been invalidated.

i'll try this band in isolation when it's sane o'clock just to see what the situation is, and whether i should keep tweaking before i move it to the front. i'll get that recording, too.

cheers, Rob!
Recovered guitar player.
Electronics manufacturer.

MrStab

i took a quick phone recording with the High band isolated (just a unity-gain buffer on the input), R7/R8 at "stock" 20k and the inverter at -0.5 gain. naturally the crappy phone mic distorts and kills lows, and there might be the odd noise like the board moving about slightly, but it should give a basic idea:

https://www.dropbox.com/s/z8sqiocwkfai70e/svfnoise3.mp3?dl=0

and just for good measure, here's one with the High band in its original position, with 3.2 gain and two flat SVF stages before it:

https://www.dropbox.com/s/eu52fzpvccsb1mz/svfnoise2.mp3?dl=0

different balances of R7/R8 vs. R15 result in the same level of noise, so not really relevant. do you think the hiss is inevitable at this point? i could maybe try tweaking the anti-oscillation RC network in the inverter's Fb loop, i haven't touched that since the "centre click" problem was solved, but i can only see that eating into the wanted spectrum. i can't really think of any conditions i can change with my test equipment or environment, other rooms and a Marshall DSL100 have the same result. still testing with a battery.
Recovered guitar player.
Electronics manufacturer.

Rob Strand

#77
Quotejust tried lifting the ground resistors and no major improvement.
With your current mods the incremental improvement might only be 1dB (and only when the freq. pot is at the lower frequency end.)

Quotei've been trying noise sims in Spice btw, but got a bit overwhelmed .
It's easy to overwhelmed - tricky stuff to get right.  I'm not sure what noise results your simulator produces but there are often many noise values output. Some are the contribution from only one circuit element.  Some values are noise-squared/Hz and some are noise/square root Hz.  Also the raw values aren't that useful or require good judgement to interpret.  Better is to make an A-weighted noise meter in spice: First the output through an A-weighted filter (which you make in spice) then, a non-obvious step, is to integrate the noise-squared, then take the square root.   You should plot the cumulative integral over frequency, it should start to level off at 10kHz or so.  (If not then noise measurement has a odd property and you need to re-interpret the results or use a different noise metric.)

Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

Rob Strand

Quotenaturally the crappy phone mic distorts and kills lows, and there might be the odd noise like the board moving about slightly, but it should give a basic idea:
I can hear some noise but it's a bit tricky for me to get a handle on the base-line signal level.    Like when you crank the gain to full on an amp  You get a lot of noise but you know when you play something it's going to take out the windows and doors.

Quotedifferent balances of R7/R8 vs. R15 result in the same level of noise, so not really relevant. do you think the hiss is inevitable at this point?
If one of those configurations is better it is probably the one with the lower R15 value.  Yes, you do reach a point where you start grasping for every dB.  It's a long process squeezing out noise and sometimes you have to make compromises with performance.   One thing I did try early on was to scale-down *all* values in the circuit by a factor of 2; other than the integrators which we already changed.  You would expect an improvement but it was only like 0.5dB or so.   For a circuit with 22k resistors and FET input opamps that amount of reduction was all I was expecting (1dB max).
Quote
i could maybe try tweaking the anti-oscillation RC network in the inverter's Fb loop, i haven't touched that since the "centre click" problem was solved, but i can only see that eating into the wanted spectrum
Yes you can gain a lot here.  Personally I don't like a lot of HF junk on shelving EQ's for bass but other guys do.  It's a matter of taste and to some degree the nature of the tone of the bass.

Send:     . .- .-. - .... / - --- / --. --- .-. -
According to the water analogy of electricity, transistor leakage is caused by holes.

MrStab

admittedly that stuff about the noise measurements is way over my head, but i'll read up on the basics (and re-read your last paragraph a few thousand times) when i have some time. as far as i can tell, LTSpice shows the square root, and requires that the input source and test node be specified (for which i chose U1A's output).

i'm having another noise issue with a dated USB interface since my last PC build unfortunately, so i can't get a better recording at the moment or it'd seem 20 times worse!

with any other pedal, i'd gladly kill off everything above 6KHz or so. that would save a ton of hassle! so many times i've wished i could just do that here. it's the occasional non-guitar-amp use i'm trying to cater for. i'm doubtful anyone would have a need to boost everything past 1KHz by 15dB, and the flat noise compared to bypass seems reasonable to me. when i box it up properly again i might get a tad less noise. i'm making all the changes a bit more "permanent" right now, and i'll give it a proper acid test tomorrow.

talking bout bass: i gave one of my BP-only EQs to a bassist friend of mine a few years ago, and (for some reason) he used it on a recording in such a way that it sounded like a guitar! i actually asked "who's that?". i was really impressed. maybe that's why he doesn't seem to be in that band anymore. lol
Recovered guitar player.
Electronics manufacturer.