Pedal LFO Controller

Started by JKowalski, April 29, 2009, 06:39:04 PM

Previous topic - Next topic

JKowalski

This was an odd idea I had a little bit ago, since I was trying to develop useful and precise LFO's for various pedal applications. I had so many interesting waveform creation ideas floating in my head - I wanted to put them all in everything, but for obvious reasons that was impossible.

I decided that I could put a simple standard LFO in all of my modulation pedals, and add a LFO IN jack for external modulation. I could do this for tremolos, vibratos, chorus, even simple things such as wahs, distortions.

Then, I build one massive multi-LFO pedal controller with, say, 6 onboard LFO's with a variety of different waveform creation techniques. I could set a "standard" for all my pedals in terms of LFO levels, say, 0-4.5V so everything is compatible. That way I can have a TON of possibilities for modulation of a TON of different effects, without losing any space in my pedals. I could stick the "LFO board" on top of my pedal board, out of the way.

So, here's a list of the different things I plan on incorporating into this design. I would appreciate any suggestions on additional features!

- One arbitrary real-time waveform generator (8 slide pots controlling shape of wave, sequenced and smoothed)
- One master Sync LFO
- Four Slave LFOs (each LFO can be run individually, or switched to match the SYNC LFO frequency)
- All non-arbitrary LFO's will have sine, tri, square, and duty cycle adjustable
- Each non-arbitrary LFO will have a tap tempo controller

Obviously this has alot of digital - digital waveform sequencing, digital LFO base waves for syncing...

This is a great project for a microcontroller, I think. However, I don't know anything about microcontrollers. I know for sure that I can do this with standard digital IC's, but does anyone suggest that I learn how to use microcontrollers for this? I have alot of patience, and a desire to learn, so it's not at all over my head.

Taylor

One feature that's fun is to be able to sync LFOs in or out of phase with each other. This way, they're in the same tempo, but when one's up, the other's down, etc. You can use this to dynamically pan between two signal paths, etc.

The Tremulus Lune has this ability, so you may want to look at it for inspiration on how to implement this.

JKowalski

#2
Thanks for the tip, that does sound interesting. I'll have to look into that!

I drew up a block diagram of what I mentioned before, and I realized that there will have to be a TON of components for this thing. Oh well, I was planning on putting it in a big box anyways - and I was wanting a big project!

Here's the diagram, if anyone is interested in how I am going about this thing (as a basic idea, still open to any and all suggestions)

NOTE: I added the ability to tie the outputs back into inputs of other LFOs for LFO frequency modulation. Also, the multiplexer should have it's own clock LFO in addition to the MASTER and TAP TEMPO controls. I may also add another multiplexer in, tied to the same 8 inputs but with a different clock, for dual outputs.

I'm getting more and more excited about this project every second! I think it would be really neat to have the ability to instantly sync a bunch of different effects, including the ability to tap tempo and modulate almost anything on a pedal board. Not to mention having VCLFO, duty cycle, and tri-wave abilities for them all too!


JKowalski

#3
Okay - this has got me absolutely stumped.

For each oscillator - I want the original oscillation to be a square wave (because I need to be able to use an external clock, and the clock from the MV-52 to control it). That square wave will have a duty cycle adjustment. Then, it will go into wave shaping circuitry for sine and triangle.

Okay - My original plan for the duty cycle was to convert the square wave into a sawtooth and then put it into a comparator with a adjustable reference. However, this was not easy - I could not find a way to get a linear sawtooth out of frequency ranges between 0.5Hz and 20Hz. Then I started thinking digital: Have the square wave clock frequency input control a 4-bit binary counter. This counter will reset every cycle. The outputs of the counter will go into a weighted sum amplifier, to give me a 16 step staircase sawtooth. This sawtooth will go into a comparator - the comparator's reference voltage will determine the duty cycle (it's complex, because I want the duty cycle to be precise, and not affect the frequency of the oscillator). So that will give me a clock source at the original frequency with a 16 mode duty cycle selection, precise - regardless of frequency.

Alright! If I were to do that - I would need to multiply the rate of the input clock by 16 to control the counter and still give the same frequency sawtooth - I totally forgot this was not an easy task.

So what I am asking is this. Is there a way to either

a) easily multiply the rate of a square wave
b) convert a square wave into a linear, frequency independent sawtooth wave

This problem will obviously also apply to when I need to do the final conversion into a tri wave.



If I ever manage to get this all working (will take a while), I will draw up a schematic and layout for a stand-alone version of one of the oscillators on this project. So you can put a LFO that has:

Tap Tempo
Sine/Tri/Square
Precision Duty Cycle Adj.
External FM
0.5Hz-20Hz Range

In any of your projects

We'll see how this goes...  :icon_rolleyes:


owenjames

Quote from: JKowalski on May 03, 2009, 12:51:56 AM
However, this was not easy - I could not find a way to get a linear sawtooth out of frequency ranges between 0.5Hz and 20Hz. Then I started thinking digital: Have the square wave clock frequency input control a 4-bit binary counter. This counter will reset every cycle. The outputs of the counter will go into a weighted sum amplifier, to give me a 16 step staircase sawtooth. This sawtooth will go into a comparator - the comparator's reference voltage will determine the duty cycle (it's complex, because I want the duty cycle to be precise, and not affect the frequency of the oscillator). So that will give me a clock source at the original frequency with a 16 mode duty cycle selection, precise - regardless of frequency.

So what I am asking is this. Is there a way to either

b) convert a square wave into a linear, frequency independent sawtooth wave



I am not sure about a) but for B look up 'schmnit triggers' (horowitz and hill has a good explaination if you have that book). A voltage rises linearly until the rising (or falling) edge of a squarewave triggers it and it falls immetiatly to ground (i.e. sawtooth wave) they can also be used to make triangle waves if you have it discharge into the right size capacitor

Owen Out!

JKowalski

Perhaps I did not explain B) correctly. For my purposes, an integrator will not work.

I am trying to create a "perfect", amplitude stable triangle wave. If I used the simple capacitor charging technique, then the sawtooth wave will have a widely different amplitude at different frequencies. This will not be suitable - because I am using a comparator to adjust duty cycles. I would have to change the range of voltages that the comparator refrences on to keep an accurate duty cycle adjustment at different frequencies.