MXR Style Envelope (Vowel) Filter

Started by Mr. Lime, December 17, 2024, 10:58:23 AM

Previous topic - Next topic

PRR

Quote from: Aleph Null on December 20, 2024, 12:57:13 AMI took "no alerts or emails" to mean the opposite.

I had to play with it a LOT to figure the "logic" it uses. 'Alert' and 'emails' don't get separate options? May have been coded by a group who did not agree.
  • SUPPORTER

Eb7+9

Quote from: ElectricDruid on December 18, 2024, 11:21:41 AMI suppose it's also a way to differentiate your stuff, if that's something you're doing and no-one else is.


at the time people weren't hurrying themselves to go sniffing inside a pedal to see "how" it worked and leave themselves feeling all knowledgeable and stuff - that's something that happened later when people dropped their focus on playing music and moved to playing show-and-tell on the internet... Keith Barr was a little smarter than merely trying to differentiate himself from others by his design strategies - his aim was to produce something that had a certain minimum of performance against a low parts-count ... a game of tradeoffs, with a couple of semi-miraculous outcomes - the Auto Filter being one of them.

no, there's a clear performance advantage here - several, in fact ...

maybe you could breadboard this filter circuit (running on manual PWM) if you haven't yet, and put it side by side with an op-amp equivalent filter running on resistance (optical or dual-pot) - take the Mutron-III filter section as a common example, or Craig Anderton's active filter, or any other really ... then, deriving some first-hand conclusions instead of waiting for someone else to answer basic questions about electronics for you ... from there analysis to explain the difference - if that's within your scope of capabilities

known for disappearing to the Caribbeans on his sailboat for months and suddenly re-surfacing with a notepad full of ideas - many of them workable - that's why Keith Barr is seen as THE goat by some of us who strive to do original design workings ... too bad there's nobody like him around these days

have yourselves some wonderful holidays

Mark Hammer


Mr. Lime

I already have an optical op-amp Mutron filter which I hardly use. Also I have a PCB laying around for the MXR EF which I would love to finish during the holidays.
Probably I would expect lower noise and potentially more headroom when op-amps are used but on the other hand many people praise the MXR circuit. Since the inverters in the MXR EF circuit are not designed to clip, I wouldn't guess their potential disadvantage against op-amps shouldn't be much of a problem. Not sure about the parallel filter setup I was suggesting in the first post, as this might add more noise.


R.G.

Quote from: Eb7+9 on December 21, 2024, 12:43:16 PM[...]people weren't hurrying themselves to go sniffing inside a pedal to see "how" it worked and leave themselves feeling all knowledgeable and stuff - that's something that happened later when people dropped their focus on playing music and moved to playing show-and-tell on the internet[...]

no, there's a clear performance advantage here - several, in fact ...

maybe you could breadboard this filter circuit (running on manual PWM) if you haven't yet, and put it side by side with an op-amp equivalent filter running on resistance (optical or dual-pot) - take the Mutron-III filter section as a common example, or Craig Anderton's active filter, or any other really ... then, deriving some first-hand conclusions instead of waiting for someone else to answer basic questions about electronics for you ... from there analysis to explain the difference - if that's within your scope of capabilities
[...]

J.C., it's reassuring to know that in a world with everything changing daily, you're still the same old J.C. you used to be; vague allusions, snootiness, evasion and all.

The best of the holiday season to you and yours.
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

Mr. Lime

Another approach would be using the CD4069's mosfets as variable resistors instead of the PWM generation.
This way the PMW circuit could be ditched and the a StompLFO could be used directly.
Something similar to this:


Thread to circuit

For the envelope detector part a rearrangement to feeding the StompLFO would be useful as I read somewhere that there would be a kind of additional filtering of the ripple when the detector is tied to Pin 2 OFFSET.

I also read in the datasheet that there is a protection up to 20V which means it's not too critical if the envelope detector reaches above 5V peaks. Still the working range should be optimized for 0-5V.

For many years I'm still wondering how a sufficient full wave rectifier envelope detector that works great with a StompLFO would look like? Attack and Release controls would be all that's needed because of the StompLFO Offset and Depth controls that are able to interact with the detector and determine the range and polarity of the sweep.

I already ordered Harry Bissell's envelope detector as Eurorack which should arrive next month but for an onboard detector in a stompbox, I would highly prefer something more simple.

This would also be a great addon for Tom's Filter FX DIY Kits..

 

Eb7+9

Quote from: Mr. Lime on December 22, 2024, 12:00:40 PMSince the inverters in the MXR EF circuit are not designed to clip ...


They soft clip at both rails ... but you need lots of signal to get there

You could say they "are" rail-to-rail gain stages ...

Zwachi

Can't the STOMPLFO PIC not be used for driving the 4066 switches directly via it's PDM output?

Thanks for help!

ElectricDruid

Quote from: Zwachi on December 30, 2024, 06:02:02 AMCan't the STOMPLFO PIC not be used for driving the 4066 switches directly via it's PDM output?
Good question. There's two reasons why it might not work:

1) Voltage.
StompLFO is 5V, so the output pulses are 5V. You can run the 4066 at 5V I presume, but does it have level shifters (or just schmitt trigs) on the switch inputs if you run the chip at a higher voltage?

2) Timing
The StompLFO's output can get up to 2MHz. Can the 4066 switch that fast? Mostly PWM phasers and similar use frequencies in the 10's of KHz, not 100's or MHz.

Should just give it a try, I guess...

Zwachi

Thanks for the input.


According to the TI datasheet, the 4066 should be capable to handle up to 15V and 6 MHz or above:




Thanks for help!

Eb7+9

#30
Quote from: ElectricDruid on December 30, 2024, 07:32:29 AMGood question. There's two reasons why it might not work:

1) Voltage.
StompLFO is 5V, so the output pulses are 5V. You can run the 4066 at 5V I presume, but does it have level shifters (or just schmitt trigs) on the switch inputs if you run the chip at a higher voltage?

2) Timing
The StompLFO's output can get up to 2MHz. Can the 4066 switch that fast? Mostly PWM phasers and similar use frequencies in the 10's of KHz, not 100's or MHz.

Should just give it a try, I guess...



in 2014 I designed and built this (full) stereo PWM phaser using your "Elec Druid TAPLFO 2D" chip
it runs its PWM at around 31khz if I recall correctly

in this design my 4066 and signal path run at 9v, your IC at 5v ...
and here's the simple interfacing trick I used:

the 0-5v TAPLFO PWM output goes to a pair of "inverse comparator" configured op-amps
this easily produces taller clock pulses, inverted from each other

from this we can produce wet-wet (opposite direction) outputs


here's what it sounds like running only one channel ... in mono


in the end this experimental phaser was capable of producing way too much phasing range ...
extending into zipper territory at full DEPTH
(which is better than the other way around ...)

later on I opted for a second design, this time running off an Arduino putting out a 42khz PWM clock
and based on a way simpler linear (triangle only LFO) time modulator ...
which (btw) also included a vertical OFFSET adjustment to help steer away from the "zipper" range

the later option, I think, is crucial for getting the most out of the architecture

still, your TAPLFO produced a good sounding unit using this minimalistic drive/interface circuit

cheerios amigos ...
~jcm//2025


Mr. Lime

Quote from: Eb7+9 on January 02, 2025, 02:41:17 AMin 2014 I designed and built this (full) stereo PWM phaser using your "Elec Druid TAPLFO 2D" chip
it runs its PWM at around 31khz if I recall correctly

in this design my 4066 and signal path run at 9v, your IC at 5v ...
and here's the simple interfacing trick I used:

the 0-5v TAPLFO PWM output goes to a pair of "inverse comparator" configured op-amps
this easily produces taller clock pulses, inverted from each other

from this we can produce wet-wet (opposite direction) outputs


in the end this experimental phaser was capable of producing way too much phasing range ...
extending into zipper territory at full DEPTH
(which is better than the other way around ...)

later on I opted for a second design, this time running off an Arduino putting out a 42khz PWM clock
and based on a way simpler linear (triangle only LFO) time modulator ...
which (btw) also included a vertical OFFSET adjustment to help steer away from the "zipper" range

the later option, I think, is crucial for getting the most out of the architecture

still, your TAPLFO produced a good sounding unit using this minimalistic drive/interface circuit

cheerios amigos ...
~jcm//2025


May I ask why taller clock pulses were needed?
Have you tried directly feeding the 4066?

Cool pedal, I have an Behringer Bi Phase laying around and would love to use some digital LFO for CV as well.

Eb7+9

#32
Quote from: Mr. Lime on January 02, 2025, 10:01:26 AMMay I ask why taller clock pulses were needed?
Have you tried directly feeding the 4066?



with 40xx CMOS logic you generally want your inputs to go full swing in order to produce full swing outputs and continue on down the logic chain and maintain strong transitions and noise immunity ... but with CMOS analogue gates (4066) you can open/close them "sufficiently" without having to go fully all the way in both directions ... the idea is to have the CMOS inputs go as far as possible away (up and down) from the transition point which is "somewhere around mid-rail ...

I have archived pictures of this build showing the circuit working with both 5532 and TL072 op-amps operating as open-loop comparators ... I didn't take notes so I'm not sure what I stayed with in the end, or whether I later went with rail-rail op-amps ... I doubt it, otherwise I wouldn't have taken pics with the other two op-amps working inthis capacity ... obviously, I compared performance with the TL072 and 5532 ... to give an idea the TL072 has 1.5v dropout and 5532 2.0v ... which means the comparator output swing would be roughly 1.5v to 7.5v for the TL072 and 2.0v to 7.0v for the 5532

Now, if you tried driving the 4066 powered by 9vdc directly from the PIC powered by 5vdc you'd have a 0-5v pulse driving 4066 inputs with its cross-over voltage lying very near to the upper part of the pulse ... it might work still but maybe unreliably, hard to tell ... depends where the transition point is on your particular 4066 IC ...

of course, if you were powering the 4066 at 5vdc instead of 9vdc you'd be golden and everything would work perfectly using direct drive ... in my Arduino WAH this is what I do, where the 4069 Inverter stages (signal path) all run at 5vdc like Arduino but from their own regulated feed

the reason why I didn't go 5vdc throughout in my first Stereo Phazer is because I'm using two parallel (Phase-45 style) two-stage all-pass circuits which run on op-amps ... I was obviously aiming to maximize internal signal headroom without having to rely on rail-to-rail op-amps - as I don't typically use them (I tend to buy cheaper op-amps in bulk) ... maybe not the best design choice one might argue but that's what I did there // plus, it's always interesting to see what one can get away with - especially using a relatively average (and not too expensive) op-amp like the TL072 and still obtain great results ... all in the name of tinkering and learning from hard examples eh!

if, in the worse case, you supplied a 5532 op-amp with 5vdc you'd end up with 1 volt of signal headroom ... which is something I'm not sure you'd want for performance specs ... in this case rail-to-rail would be the obvious way to go, and they do make low-noise/low-distortion versions.

good luck!

===

btw, thanks to whoever hacked my account to prevent me accessing the forum ... you'll have to try harder ... :)

Mr. Lime

Thank you very much for the explanation.

I think I would go with ordinary TL074 op-amps in the filter section.


The STOMPLFO PIC would ask for a 5V voltage regulation anyway, so feeding the 4066 with regulated 5V too might be obvious?

So according to the datasheet Zwachi posted, with 5V VDD a control repetition rate of 6 MHZ is still achived and the PDM output from the PIC with 2 MHZ is fine?

 

amptramp

If you are looking at a 4066 for any reason, it might pay to look at a 74HC4066 as an alternative.  You can run control input frequencies up to 30 MHz.

Eb7+9

#35
Quote from: Mr. Lime on January 03, 2025, 05:40:50 AMSo according to the datasheet Zwachi posted, with 5V VDD a control repetition rate of 6 MHZ is still achived and the PDM output from the PIC with 2 MHZ is fine?


um, you sure those aren't typos ??! ...

what's a PDM output ??! ... shouldn't that read PWM ?!

the 4066 doesn't run anywhere near 2Mhz in these kinds of circuits ...
generally somewhere between 30khz and 45khz ... (scope the MXR PWM circuits when you get a chance)

that number, along with encoding resolution, are chosen before plugging code into the PIC
as they trade each other off ...

the "Elec Druid" PIC runs its PWM output at 31khz, per the data sheet:

Elec Druid 3D DATASHEET

Mr. Lime

Quote from: Eb7+9 on January 03, 2025, 02:47:58 PMum, you sure those aren't typos ??! ...

what's a PDM output ??! ... shouldn't that read PWM ?!

the 4066 doesn't run anywhere near 2Mhz in these kinds of circuits ...
generally somewhere between 30khz and 45khz ... (scope the MXR PWM circuits when you get a chance)

that number, along with encoding resolution, are chosen before plugging code into the PIC
as they trade each other off ...

the "Elec Druid" PIC runs its PWM output at 31khz, per the data sheet:


PDM = Pulse Density Modulation

STOMPLFO

The PIC has 31.25KHz sample output rate, with 2MHz PDM output

ElectricDruid

Quote from: Eb7+9 on January 03, 2025, 02:47:58 PM
Quote from: Mr. Lime on January 03, 2025, 05:40:50 AMSo according to the datasheet Zwachi posted, with 5V VDD a control repetition rate of 6 MHZ is still achived and the PDM output from the PIC with 2 MHZ is fine?


um, you sure those aren't typos ??! ...
No, I don't think so. The datasheet does seem to say the control input can switch at up to 6MHz.

Quotewhat's a PDM output ??! ... shouldn't that read PWM ?!
Nope. PDM is "Pulse Density Modulation". It's like a variation of Pulse Width Modulation where instead of the whole high period being all together and then the whole low period being together, they're both borken up into smaller periods and then mixed up. Obviously that raises the overall output frequency for most outputs (0.1%/99.9% duty cycle might still look much the same though, since one high pulse mixed into a lot of low periods looks the same wherever you put it!) which makes the filtering much more effective.

Quotethe 4066 doesn't run anywhere near 2Mhz in these kinds of circuits ...
generally somewhere between 30khz and 45khz ... (scope the MXR PWM circuits when you get a chance)
Yes, that's generally true, which is why there was a question mark over whether the 4066 would be able to do this directly at this kind of rate.

Quotethat number, along with encoding resolution, are chosen before plugging code into the PIC
as they trade each other off ...

the "Elec Druid" PIC runs its PWM output at 31khz, per the data sheet:

Elec Druid 3D DATASHEET
Yes, the TAPLFO (and also the VCLFO) do run the output using a standard PWM at 31.25KHz and a 10-bit resolution. The sample rate is also 31.25KHz. Note these two things don't have to be the same - for example, we could output each individual sample value twice, and run the PWM rate twice as fast as the sample rate (the VCDO actually does this, 62.5KHz sample rate, 125KHz PWM). There isn't much point calculating samples *faster* than the PWM can output them, so you won't see examples *that* way around!

The STOMPLFO is a different beast. It uses the same 31.25KHz sample rate, but uses a PDM output which runs at up to 2MHz (for the 50/50% midpoint-value case - frequencies further from the centre value are lower) and iirc I think it's a 14-bit output. So if the 4066 could handle the speed it would be a very good option. We would also need a simple, cheap level shufter that can cope with that speed too to get us from the STOMPLFO's 5V  output to the 4066's 9V input - unless we choose lower headroom? Dunno. That's another design choice.

HTH

Eb7+9

Quote from: ElectricDruid on January 03, 2025, 06:50:39 PM... instead of the whole high period being all together and then the whole low period being together, they're both borken up into smaller periods and then mixed up.


I see, thanks for your explanation ... What PIC are you using here??!

ElectricDruid

Quote from: Eb7+9 on January 04, 2025, 11:36:17 AM
Quote from: ElectricDruid on January 03, 2025, 06:50:39 PM... instead of the whole high period being all together and then the whole low period being together, they're both borken up into smaller periods and then mixed up.

I see, thanks for your explanation ... What PIC are you using here??!

The StompLFO is a 16F18313, but the crucial thing for the PDM is that the chip includes the NCO module. There are quite a few that do, and they'd all be capable of this. It has a "pulse output mode" (I think that's what it's called, I'd have to check) that's pefect for generating a PDM output.