EM3207 (v1.1) - MN3207 based EHX Electric Mistress (9V) clone

Started by Thomeeque, June 03, 2011, 09:27:39 AM

Previous topic - Next topic

Thomeeque

Quote from: davidefender on August 05, 2011, 10:45:40 AM
I worked a lot with uC, most with ATmega.. my opinion is that the LFO can be generated not exactly as needed. If you have to reach that freq, it's quite impossible to generate triangle waves (due to the relative slow frequency of the PWM), but you can *easily* get a square wave from 0 to V+ with that specification (LFO speed and clock speed)...  ;D

Primary idea is to replace Clock VCO (LM311+4013) by uC, we want squares at the outputs. Triangles are how should be clock period (1/fCLOCK) swept. Idea to replace both LFO+VCO by uC is secondary (because to me it seems that it would be maybe even easier to do it this way than to try to combine analog LFO and uC VCO).

T.
Do you have a technical question? Please don't send private messages, use the FORUM!

davidefender

ok.. so, let's recap:

we need a square wave with a frequency between 60KHz and RANGE (max 2560KHz), right? let's call this signal CLOCK
we also need another signal, LFO that sets the CLOCK frequency change speed, so if the LFO is 1Hz, the CLOCK will pass from 60KHz to RANGE in 1 second, right?

What is the LFO frequency sweep requirement?

..ok so, refering to this datasheet: http://www.atmel.com/dyn/resources/prod_documents/doc8025.pdf  at the beginning of page 99
we can use Timer/Countero as the CLOCK source this way:
The frequency of the waveform generated by this Timer is: Fio / (2 * N * (1 + VALUE))
Fio -> 16MHz (the uC crystal)
we choose a prescaler (N) of 1
VALUE is a 8-bit register, so we choose a min of 2 and a max of 133 for the VALUE parameter... this is not a great solution because we have too few values (only 130), I wonder if there's a smarter solution..

12Bass

The LFO modulates (sweeps) the BBD clock with a range somewhere between 0.3 Hz and 10 Hz.  Many claim that a hypertriangular LFO waveform sounds the most natural for flanging.
It is far better to grasp the universe as it really is than to persist in delusion, however satisfying and reassuring. - Carl Sagan

Thomeeque

Quote from: davidefender on August 05, 2011, 01:02:33 PM
we need a square wave with a frequency between 60KHz and RANGE (max 2560KHz), right?

we need a square wave with a frequency between RANGE (min. 60KHz) and 2560KHz

Quote from: davidefender on August 05, 2011, 01:02:33 PM
let's call this signal CLOCK

OK

Quote from: davidefender on August 05, 2011, 01:02:33 PM
we also need another signal, LFO that sets the CLOCK frequency change speed, so if the LFO is 1Hz, the CLOCK will pass from 60KHz to RANGE in 1 second, right?

CLOCK will pass from RANGE to 2560KHz and back in 1 second

Quote from: davidefender on August 05, 2011, 01:02:33 PM
What is the LFO frequency sweep requirement?

cca 0.04Hz (25sec) to 10Hz

Quote from: davidefender on August 05, 2011, 01:02:33 PM
The frequency of the waveform generated by this Timer is: Fio / (2 * N * (1 + VALUE))
Fio -> 16MHz (the uC crystal)
we choose a prescaler (N) of 1
VALUE is a 8-bit register, so we choose a min of 2 {~2667kHz} and a max of 133 {59.7kHz} for the VALUE parameter... this is not a great solution because we have too few values (only 130), I wonder if there's a smarter solution..

Yes, exactly, it would definitely make audible "steps" at slow rates :(

T.
Do you have a technical question? Please don't send private messages, use the FORUM!

12Bass

Ooops.... missed a decimal place there....   :icon_redface:

As to the LFO, smoothness is a necessity for natural-sounding flanging.  Step flanging might be interesting, however....
It is far better to grasp the universe as it really is than to persist in delusion, however satisfying and reassuring. - Carl Sagan

Mark Hammer

#65
Quote from: 12Bass on August 05, 2011, 01:40:13 PM
The LFO modulates (sweeps) the BBD clock with a range somewhere between 0.3 Hz and 10 Hz.  Many claim that a hypertriangular LFO waveform sounds the most natural for flanging.
It sounds better for slow speeds, where the feel for how the notches move through the low end of the spectrum is important.  But once you get up above 1hz, where relatively little time is spent at the low end of the sweep anyway, it probably makes no difference, and probably even sounds worse for speeds above 2hz or so, where the sudden upward sweep can sound jarring, as if there is some sort of 10% LFO duty cycle in effect.

All things in context, eh?

The Line 6 Liqui-Flange has stepped flanging, much like hooking up a flanger clock generator to a S&H rather than an LFO, and it sounds very nice.  With a bit of regeneration, it's pretty much like a slightly different Maestro S&H.  Sadly, Line 6 elected not to include such a patch in the M5/M9/M13 series.

Thomeeque

Quote from: 12Bass on August 05, 2011, 01:40:13 PM
 Many claim that a hypertriangular LFO waveform sounds the most natural for flanging.

Many claim that a hypertriangular clock frequency sweep sounds the most natural for flanging.

Beauty of  EMs clock VCO is that input voltage controls period (T) (not frequency) in linear fashion, so linear triangles at the input cause linear period sweep, which means that frequency sweep is hypertriangular (f=1/T).

Hypertriangular LFO signal would lead to hyper-hyper-triangular frequency sweep in case of EM :)

T.
Do you have a technical question? Please don't send private messages, use the FORUM!

Thomeeque

Quote from: Mark Hammer on August 05, 2011, 02:44:05 PM
The Line 6 Liqui-Flange has stepped flanging, much like hooking up a flanger clock generator to a S&H rather than an LFO, and it sounds very nice.

My emulator allows random steps, that sounds interesting too :)

So steps and random steps could actually make nice bonus features, but we still need smooth sweep available..

T.
Do you have a technical question? Please don't send private messages, use the FORUM!

Mark Hammer

Quote from: Thomeeque on August 05, 2011, 02:50:18 PM
Quote from: 12Bass on August 05, 2011, 01:40:13 PM
 Many claim that a hypertriangular LFO waveform sounds the most natural for flanging.

Many claim that a hypertriangular clock frequency sweep sounds the most natural for flanging.

Beauty of  EMs clock VCO is that input voltage controls period (T) (not frequency) in linear fashion, so linear triangles at the input cause linear period sweep, which means that frequency sweep is hypertriangular (f=1/T).

Hypertriangular LFO signal would lead to hyper-hyper-triangular frequency sweep in case of EM :)

T.
Hypertriangular works for anything where there is a slow sweep.  That's why we don't use it for chorus or tremolo.  Thomas Henry had a "Smooth phaser" project in Electronic Musician years ago, that used a hypertriangular LFO.  It used an SSM2040 for the 4 OTA-based phase-shift stages, but you don't need to use that..

Eduard_Solderingironhands

#69
Hello,

My (half-baked) idea was to replace the complete LFO + VCO part (4013 / 339) by a microcontroller. The only input would be the voltage from a pot to get the user input for desired sweep rate, using the build in A/D converter. The sweep setting could have a resolution of about 250 - 500 steps, because we can not use precision A/D conversion (this would require to stop the timer for at least 8 ticks while converting which could cause glitches).
I thought of using two timer with a fixed sampling rate. One timer with a relatively low sampling frequency performing a mathematical function which simulates the LFO and does the A/D conversion. The second timer has a very high sampling frequency. The high sampling rate timer just increments a counter. The LFO-function calculates the actual duration of the pulse and the according number of high sampling rate events. If the counter reaches the limit the output is toggled and the timer will be reset.

Best wishes

Ralf





Can you give me the schematic of a stompbox that make me play like David Gilmour?

GodSaveMetal

Quote from: Thomeeque on August 05, 2011, 06:03:53 AM
Quote from: oldschoolanalog on August 04, 2011, 06:44:13 PM
@Ralf: Check out the MN3007 EM here. Tried & verified. Lots of successful builds and documentation as well.

Just small note here:

If you like 9V EM with MN3007 retrofit, you should like original EM3207 v1.1 (without mods I'm working on now) as well - it should be practically same thing.

Actually, if somebody would care to make some small demo of 9V EM with MN3007 retrofit, it would be just brilliant!! :)

Cheers, T.

The circuit of your proposal is very small!! I made the Jorge's pedals and is enormous; please man how I adaptate the MN3007 for the PCB of yours???? the 3207 are fails and only the 3007 are goods in PERÚ please I want to do that!!!

ORK


Thomeeque

Quote from: Mark Hammer on August 05, 2011, 04:12:53 PM
Hypertriangular works for anything where there is a slow sweep.  That's why we don't use it for chorus or tremolo.  Thomas Henry had a "Smooth phaser" project in Electronic Musician years ago, that used a hypertriangular LFO.  It used an SSM2040 for the 4 OTA-based phase-shift stages, but you don't need to use that..

My point is that EMs sweep already *is* hypertriangular with triangular LFO signal, you don't want to make it more hypertriangular (by making LFO signal hypertriangular).

Here's a snippet from Hyperflange.PDF, where reason for hypertriangularity for flanger is explained:



Btw. A/AD flanger uses apparently same 1/x principle.

Quote from: Mark Hammer on August 05, 2011, 04:12:53 PM
That's why we don't use it for chorus or tremolo.

Actually, Boss CE-2 clock VCO seems to be hypertriangular too (see here) - it's just not that obvious, because fMAX/fMIN ratio is much smaller..

I would say that it's not about not using hypertriangularity for faster sweeps (it IMO makes sense everywhere where frequency is swept, no matter how fast), you just use much smaller fMAX/fMIN ratios (~depth) (and maybe sinus instead of triangles) with faster sweeps.

Tremolo sweeps volume - it is IMO different ballpark, but actually hypertriangularity could make sense here too.. but "naturally sounding" tremolo is maybe too abstract term..

T.
Do you have a technical question? Please don't send private messages, use the FORUM!

Thomeeque

Quote from: GodSaveMetal on August 05, 2011, 06:02:08 PM
The circuit of your proposal is very small!! I made the Jorge's pedals and is enormous; please man how I adaptate the MN3007 for the PCB of yours???? the 3207 are fails and only the 3007 are goods in PERÚ please I want to do that!!!

I'll look at it tomorrow.. T.
Do you have a technical question? Please don't send private messages, use the FORUM!

GodSaveMetal

Quote from: Thomeeque on August 05, 2011, 06:37:28 PM
Quote from: GodSaveMetal on August 05, 2011, 06:02:08 PM
The circuit of your proposal is very small!! I made the Jorge's pedals and is enormous; please man how I adaptate the MN3007 for the PCB of yours???? the 3207 are fails and only the 3007 are goods in PERÚ please I want to do that!!!

I'll look at it tomorrow.. T.

Great man thanks for your work in this incredible pedal!!!!

davidefender

Quote from: Eduard_Solderingironhands on August 05, 2011, 06:00:14 PM
The second timer has a very high sampling frequency. The high sampling rate timer just increments a counter. The LFO-function calculates the actual duration of the pulse and the according number of high sampling rate events.

The A/D is not a problem, the ATMEGA has built-in 10-bit converter: 1024 steps are enough. The problem remains the "very high sampling frequency", as you can see from my post, a 16MHz crystal is not enough to reach that frequency values. The problem here is not that we cannot produce such signal, but that the uC is too slow to produce a "continous" sweep between 60k and 2M...

For a great result we should have something like a 100MHz or 1GHz oscillator!!  :icon_eek:

sugonidamaso

hi T!just saw this subj/thread.i mean wow!should i say smaller/easier version of your em1022.i made the earlier version of mistress retrofit(great topic :icon_razz:).my problem is that its too big.haven't got a nice enclosure to it (having a 14x20pedalboard).majority of my pedals are in a 1590b enclosure.so compact.anyways,my question is that 2n5087 is not available in my area.i just substitute it by 2n4250. is there any difference?newbie here :icon_redface: :icon_redface: :icon_redface: :icon_redface:.thank you!more power!
" The greatest inspiration is often born out of desperation--so be DESPERATE! "

Thomeeque

Quote from: sugonidamaso on August 06, 2011, 05:24:08 AM
hi T!just saw this subj/thread.i mean wow!should i say smaller/easier version of your em1022.i made the earlier version of mistress retrofit(great topic :icon_razz:).my problem is that its too big.haven't got a nice enclosure to it (having a 14x20pedalboard).majority of my pedals are in a 1590b enclosure.so compact.anyways,my question is that 2n5087 is not available in my area.i just substitute it by 2n4250. is there any difference?newbie here :icon_redface: :icon_redface: :icon_redface: :icon_redface:.thank you!more power!

You mean to substitute 2N5087 by 2N4250 in the clock circuitry (Q2 in EM3207 v1.1), right? I have substituted it by different PNP in my "standalone replica of the clock" at the beginning and it worked, but when I have put 2N5087 there later I have got quite different readings. I did not try to findout why. So I cannot tell honestly. You definitely can try to use it and I'm 99% sure that it will work, but you may (or may not) get little different frequency range and sweep.

Good luck, T.
Do you have a technical question? Please don't send private messages, use the FORUM!

sugonidamaso

Thank you so much T!looking forward to build this one.will transform the old EM retrofit to this one. ;D ;D ;D ;D ;D
" The greatest inspiration is often born out of desperation--so be DESPERATE! "

Eduard_Solderingironhands

#79
Hello,

o.k. I think it is not possible to drive a MN3207 directly by an Atmega. A maximum frequency of 2.5 MHz would require a timer event at 5 MHz. Even if overclocking the Atmega this is too sportive.

Best wishes

Ralf
Can you give me the schematic of a stompbox that make me play like David Gilmour?