The design goals and circuit has evolved during development.
My current prototype has two separate channels.
Each channel has it's own set of interval, octave and waveform-selectors.
- Available intervals: unison, maj 3rd, perfect 4th, perfect 5th and a major 6th.
- The octave-selector has six positions: -2, -1, unison, +1, +2, +3.
- The waveform-selector also has six positions.
Five waveforms are implemented in the prototype: square, triangle, saw, stepped triangle and stepped saw. I haven't yet fully decided on the last waveform. I'm contemplating pulsewave with adjustable (and/or modulated) pulsewidth.
The synthesized waveforms are sent to a voltage controlled amplifier, which is controlled by the raw guitar signal. This means playing dynamics are retained, and synthesized notes decay naturally, along with the guitar signal. It also eliminates stuttering and glitches at the end of notes.
Each channel also has a 'hold'-function, which when activated holds the note played indefinitely. The held note can be set to follow the guitar amplitude, or remember the amplitude at the time of activation, and stay there.
Lastly, the two channel outputs and the original guitar signal is sent to a mixer.
A 'balance'-knob sets the relative amplitude of the two channels. And a wet/dry-knob adjusts the amount of raw guitar input vs. synthesized signals.
I've had so much fun playing with the prototype.
The possible combinations of intervals, octaves and waveforms makes it very versatile.
Next up is some finishing touches and optimization(/minimization..).
The circuit is very complex, with a huge number of components. All of which could be replaced with just a single microcontroller. But what is the fun in that?
|Prototype circuit. Lots of chips.|