Synth Guitarp — a pitch-tracking synth chord/arpeggiator

Basically, this patch lets you play a four-note synth chord from your guitar. But more, it will change the chord each time you play a new pitch (sometimes–it can be a little finicky), and when you hear a chord you like, you can “lock” it into place, playing it up and down the neck. You can also send it through an arpeggiator, with a few neat options. Or, you can program in a chord to use.

It’s a lot of options. I’m going to jump into the controls, because I think it’s actually easier to explain the patch as I explain those. A quick note: I am using firmware 1.04, which allows for the renaming of modules. If you want to be able to see the names of these modules, in the patch, please update to 1.04.

Front page (page 0–titled synth):

This page deals mostly with the synth voice.

Top row:
PWM — the depth of the pulse width (duty cycle) modulation. If you want to adjust the rate of the PWM, there is an LFO on the page titled “oscs” which controls it. This is also the page you would go to if you wanted to change the oscillator waveform. A word of caution: triangle and sine oscillator waves are MUCH louder than square and sawtooth waves.
Portamento (a slew limiter module) — adjust the rate to change the portamento of the synth. I find that a little bit helps make some of the pitch-tracking jumps a bit less… odd-sounding.
Octave shift (pushbutton) — transposes the sound from 0/no shift, to -1 octave, to -2 octave (especially important in conjunction with the arpeggiator).

Second row:
Filter frequency — higher numbers create a brighter sound.
Filter resonance — controls the resonance of the filter. This control is pretty heavily attenuated, because highly resonant filters will clip.
Latched chord (pixel) — This sits below the octave shift button. When no chord is latched, it is off. It lights up to indicate when you have latched a chord.

Third row:
Filter envelope depth — controls the positive or negative depth of the ADSR on the filter.
ADSR — I put this on the front page so you could adjust settings to your liking. The ADSR is shared between the filter and the VCA.

Fourth row:
Filter LFO depth — controls the positive or negative depth of the filter LFO.
Filter LFO — you can change the waveshape here, along with the rate. Default is triangle, but I like using random quite a lot.
Envelope or gate button — this controls whether the VCA is opened by the ADSR or by a arpeggio gate (an LFO, more on this in a second). The former will be much more like normal playing, whereas the latter will be rhythmic.
Arpeggio speed/gate — the rate of this LFO controls the rate of the arpeggio (and the gate signal applied to the VCA when the above button is activated). The swing amount controls the length of the gate (how long “notes” are), with numbers closer to -100 producing longer gates, and numbers closer to 100 producing shorter gates. At -100 (and sometimes close to it), the arpeggio will be deactivated, because it no longer receives a varying CV signal and the VCA will be open continuously.

Page 1 (titled arp and scale):

Arp type (pushbutton in the far right, top row) — selects the arp type: up, down, or random. So, a note about this. Up/down/random are all a little different from normal arpeggios on synths. Because the notes of the chord are randomly chosen, so is their order. Sometimes, an “up” arpeggio will go from a higher note to a lower note and vice versa. In that way it is more like a “manual” or “played” arpeggio. This setting does, however, dictate the order in which their octaves are played, with up arpeggios having rising octaves and down arpeggios having falling octaves. Random will proceed in a random order.

Scale select (pushbutton on the far right, second row) — chooses the scale from major, natural minor, harmonic minor, and melodic minor. Notes in randomly generated chords will be chosen from this scale.

Saved chord (pushbotton on far left, bottom row) — pressing this will use a “saved” chord. I’ve programmed in a chord, but this can be overwritten easily by adjusting the value modules to the right of this pushbutton.


Left, latching: This locks a chord into place. Each time a new pitch is detected, random modules take a new value. These values are attenuated to cover a two octave range and then are fed into quantizers, which provide a scale. These scaled notes are then sent to oscillators 2-4, with oscillator 1 always tracking the pitch of the input. When you find a chord you like, you can “lock” it into place. When you want to change the chord, just press this footswitch again. (There is an indicator light on the first page to let you know whether a chord is locked in place.)

Middle, latching: Switches from chord to an arpeggio that uses the notes of that chord.

Right, latching: changes the range of the arpeggio, from one octave, to two octaves, to three octaves, back to two octaves (then back to one octave as it cycles back).

This one’s kind of a doozy until you get the hang of it, I’ll be the first to admit. I would start with just playing around until you hear a chord you like. Lock that into place. Play the chord a little. Turn on the arp. Hear how that sounds. Change the octave range. Basically, use the footswitches, then dive into the other controls.


I fixed the issue with low volume. I also added a “threshold” control to the front page. Adjusting this will affect the sensitivity of the envelope triggering. (This control was always there, just hidden on some random page.)

Sound clip:

0:00-0:23 — I play around until I find a chord I like, then I lock it into place.
0:23-1:39 — Then I turn on the arpeggiator, set initially to a two octave range. I change the octave shift so that covers some lower notes. Then I change the types, from up, to down, to random. The ADSR is set to control the VCA, which is why the arpeggio cuts off.
1:39-2:16 — I change the filter LFO waveform to random. First I play a chord through it, then I switch to arpeggio, then back to a chord.
2:16-2:46 — I switch over to a gate controlling the VCA, and I play pitch-tracked chords as the gate creates a rhythm.

Chat about this patch on Discord! Download (110)
Appreciate 3
One comments on “Synth Guitarp — a pitch-tracking synth chord/arpeggiator
  • Christopher H. M. Jacques on said:

    I am experiencing some technical issues with my ZOIA that make revising this patch very difficult at the moment, however:

    It has come to my attention that I saved this patch at a very low volume. (I spent some time chasing down clipping problems; I probably changed it and forgot to change it back.)

    If you want to go hunting for the audio output, it is on the top right corner of page 2 (the third page). There is a gain control that you can adjust there, and remember to save the patch again after you have!

  • Leave a Reply