OMOD - TheTechnobear/SSP GitHub Wiki
OMOD - octo modulator
an easy to use modulation source providing 8 clockable modulation sources.
Documentation
Note: This is the primary page for documentation on this modules
- Wiki - https://github.com/TheTechnobear/SSP/wiki/SRVB
- Forum - https://forum.percussa.com/t/srvb-by-thetechnobear
Developer: TheTechnobear
I develop these plugins for free, please consider supporting my efforts with a donation. https://ko-fi.com/thetechnobear
Parameters
Name | Desc |
---|---|
Freq | Frequency of primary modulator |
Wave | Waveform for primary modulator |
Amp | Amplitude for primary modulator |
Phase | Phase of primary modulator |
Sub A-G Freq | Frequency of A-G sub modulator |
Sub A-G Wave | Waveform for A-G sub modulator |
Sub A-G Amp | Amplitude for A-G sub modulator |
Sub A-G Phase | Phase of A-G sub modulator |
Note: waveforms availble Sine, Triangle, Saw, Ramp, Square, Blep Tri, Blep Saw, Blep Sqr
Blep are anti-aliased, rather than mathematical waveforms.
Inputs
Name | Desc |
---|---|
Freq | Frequency of primary modulator |
Clock | clock for primary modulator |
Reset | reset all modulators phase |
VOct | V/octave input for primary modulator |
Outputs
Name | Desc |
---|---|
Main | output of main modulator |
Out A-G | output of A-G sub modulator |
EoC Main | end of cycle main modulator |
EoC A-G | end of cycle A-G sub modulator |
Buttons
Name | Desc |
---|---|
Reset | Reset phase of all modulators |
LFO | Low frequency mode |
General Usage
I created this modules as I often want to have lots of modulation within my patches, and often I want that modulation to be correlated. To provide this, we have a module which has one primary frequency... which sets the general 'speed' of modulation. then we derive up to 8 sub signals which can be faster or slower from this main frequency (by setting a ratio)
note: Ratio is a 'multiplier', so 10 = 10x the main modulator , 0.25 = 1/4 of the main modulator.
what is nice about this approach, is we can now modulate the main frequency... and the sub signal will all follow 'automatically'.
furthermode, by using the 'clock' cv input, we can clock the main modulator, and now all modulations signals will be derived from a clock, so we are tempo sync'd.
note: you if you want things to sync, you will want to send a reset, if you change things like freq/ratio/phase , to ensure the phase is where you expect.
so whilst we want this 'relationship' between moduators... we want the variation. in this sense all sub modulators are independent... they can have different waveforms, amplitudes and also a phase offset.
Tips
OMOD can also be used as a form of harmonic oscillator ! (hence the voct input). use the V/Oct input, and then set ration for sub oscillators can provide many different tones. The blep waveforms become particularly useful in this use-case.
Phase - dont overlook phase, esp. when clocking...get 'off the grid' its tempting to have everything in sync, so clock to your tempo, then have divisions/multiplications of that tempo. but what if we want to have a modulation that is sync'd but to a off beat or something else? this is where Phase is useful... use the clock input that gives us a cycle of 1 bar. sub A ratio = 1 , square, phase = 180... we now have a square wave than pulses MID bar (e.g on 3 of a 4/4 sig)
also, small phase differentials can be really interesting even on non-clocked modulation
Clock - how is it used? how do I use midi clock? the clock input is used to derive the speed of the main oscillator (overrides freq and v/oct).
it is used as a traditional modular clock source... so forget things like midi ppqn ;) this means, basically its considered the phase of the main oscillator...
k, thats sounds 'technical' but its not... basically, if you want to the main oscillator to run at 1/4 speed, simply send in 1/4 clock.
a typical setup is therefore :
CLKD -> OMOD -> modulation where CLKD can provide the clock signal you want e.g. at 1/4 (and you will likely want to send a reset at some point) i.e. a 1/4 trig from clkd into omod wil give a waveform (e.g. Triangle) of the same speed.
from there, of course, we can derive waveforms that are slower (and faster) than that clock input !
so how do we 'midi sync', very simple.. CLKD will take a midi clock (from MIDI), which can then be passed into OMOD, at the division you want to use.
clock sync. does it keep in sync? how accurate is the waveform sync. Perfect ... if the clock is stable, and you sync the phase.
internally OMOD calculates the frequency of the clock input for every tick! this is mathematicaly very accurate.
however, in practice if you start changing the frequency of the clock e.g. if the midi clock is poor. then whilst the frequnency of the modulators will track nicely, they are likely to become out of 'phase'.
this is where 'reset' becomes important.... when things change, you will want to 'reset' the phases of the modulators to ensure they are sync'd.
you can do this in many different ways... e.g. CLKD has a reset signal , which is enough for most use-cases.
however,if your track is regularly changing tempo, or you are usign a 'bad' midi clock, then my approach is usually to send some kind of 'signal' to occasionally sync to a musical division. e.g. you might send a note at the every 8 bars.
how regular you do this, really is down to how much your clock is drifting... which is really down to variatons in your source clock. yeah, its a bit hacky when using midi, but that because MIDI Clock does not have any 'musical position' e.g. it doesnt tell midi slaves when bars start etc. (unlike say, MIDI timecode or Ableton Link.) so we have to work with what we have ;)
Change Log
- 1.0.0 initial EAP release