Rev2 Appendix F - Details on the Math, Modulation Formulas, Lookup Charts, etc

This is a thread where specific details on the Rev2 functionality can be cataloged and archived.

The manual leaves out a lot of info about the Math, Modulation Formulas, Lookup Charts, OS Update Changes, and Other Fine Details of how the synth works.   There are many interesting observations that have been shared in dozens of different threads over the years, but the search functions of this forum are lacking, and its hard to quickly find the info. 

I'm hoping we can try and gather all the specific known details here, and then we can create WIKI or other site to further organize it.   Maybe this thread can become sticky if it becomes a good resource.   Or DSI/SEQ can add the info as an addendum / Appendix F to the Rev2 Manual.

If you have specific details and want to present them, please start with a TITLE AT THE TOP, then the details, presented as clear and precise as possible.   

OB-X8, Pro 3, P6, Rev2, Take 5, 3rd Wave, Deepmind, PolyBrute, Sub 37
Sound Sets:
https://sounddesign.sellfy.store/
Free Patches:
https://www.PresetPatch.com/user/CreativeSpiral

MODULATION LOOKUP TABLES FOR OSC FREQUENCY

Using LFO to modulate OSC FREQUENCY has a different resolution than using the MOD MATRIX to OSC FREQ.
LFO Amount of 4 = Mod Matrix Amount of 1

1. LFO to OSC FREQ Lookup Table:

LFO amount of 1   = 12.5 cents
LFO amount of 8   = 1 semitone m2
LFO amount of 16 = 2 semitones M2
LFO amount of 24 = 3 semitones m3
LFO amount of 32 = 4 semitones M3
LFO amount of 40 = 5 semitones P4
LFO amount of 48 = 6 semitones A4 (Tritone)
LFO amount of 56 = 7 semitones P5
LFO amount of 64 = 8 semitones m6
LFO amount of 72 = 9 semitones M6
LFO amount of 80 = 10 semitones m7
LFO amount of 88 = 11 semitones M6
LFO amount of 96 = 12 semitones P8 (Octave)

2. MOD MATRIX to OSC FREQ Lookup Table:

MOD MATRIX amount of 1   = 50 cents
MOD MATRIX amount of 2   = 1 semitone m2
MOD MATRIX amount of 4   = 2 semitones M2
MOD MATRIX amount of 6   = 3 semitones m3
MOD MATRIX amount of 8   = 4 semitones M3
MOD MATRIX amount of 10 = 5 semitones P4
MOD MATRIX amount of 12 = 6 semitones A4 (Tritone)
MOD MATRIX amount of 14 = 7 semitones P5
MOD MATRIX amount of 16 = 8 semitones m6
MOD MATRIX amount of 18 = 9 semitones M6
MOD MATRIX amount of 20 = 10 semitones m7
MOD MATRIX amount of 22 = 11 semitones M6
MOD MATRIX amount of 24 = 12 semitones P8 (Octave)


OB-X8, Pro 3, P6, Rev2, Take 5, 3rd Wave, Deepmind, PolyBrute, Sub 37
Sound Sets:
https://sounddesign.sellfy.store/
Free Patches:
https://www.PresetPatch.com/user/CreativeSpiral

dslsynth

  • ***
  • 1040
Modulation units are an interesting design challenge for synthesizer manufacturers.
#!/bin/sh
cp -f $0 $HOME/.signature

OBSERVATIONS of OSC SLOP BEHAVIOR

The OSC SLOP functionality on the REV2 is more complicated than I originally assumed.  This details my findings, in case anyone else was wondering how the OSC SLOP works.

TESTING PROCESS:
This is what I did.   Pretty basic if you want to replicate/test it yourself:

Start with an INIT PATCH...  for me, I switched from SAW to TRIANGLE.   If you hit a note (ie C4) over and over, you'll get a perfectly tuned C4 each time (through all sixteen voices... 0-15)

Next, turn OSC SLOP to maximum, and hit that same C4 note over and over.   Now, each strike will hit a different detuned note (up to three or even four semitones away from C4).   If you keep hitting the C4 key in rapid succession, it will appear to create a sequence that is sixteen notes long that repeats (assuming 16 voice Rev2), although that is not what is happening, as there is constant, though slow, movement happening for each voice / each osc over time.   This drift may be pronounced/quick and swing across a wide frequency range or may be more subtle/slow and just swing less than a semitone.

SPECIFIC FINDINGS:

1. For EACH VOICE, OSC1 and OSC2 seem to each have a FREE-RUNNING LFO for OSC Slop.   (ie: for any given voice that is triggered, the frequency generated initially is not the same each time you trigger that given voice (0-15)... ie: the SLOP LFO START POINT does not reset... its free running in background)   If you are using both oscillators, each seems to have a different SLOP LFO controlling it.   I tried setting OSC NOTE RESET to ON, to see if it affected the SLOP LFOs, but doesn't appear so.. they seem to be truly free-running.

2. Each OSC SLOP/DRIFT swings back and forth, but the range of the swing and offset of the LFO appears to change over time.   If you HOLD down a single note for a period of a couple minutes, you'll see the frequency swing sharp, then back flat, then back sharp, then flat, etc... this cycle continues indefinitely, but each swing seems to have a different LFO offset (ie: the center-point of the swing), and different range (ie:  at maximum slop, sometimes the total freq swing is only 50 cents or so, but later in the same voice cycle it may swing as much as 400 cents.. four semitones)... the wider the range of a swing, the faster it changes.  This makes me think there are two additional LFOs modulating the SLOP LFOs - one controlling the range and one for the offset.  The SLOP has COMPLEX ANIMATION.

3. The slop pitch movement is non-linear... as the frequency approaches its lowest or highest point, it slows down exponentially/logarithmically, coming to a seeming stop eventually, before rapidly accelerating back the other direction toward its new target frequency (based on however wide the range is and where the offset/center-point are)


CONCLUSIONS / IMPLICATIONS:

1. NON-REPEATABLE BEHAVIOR:
If you need a patch to have repeatable behavior each time it is played live or via a sequence, it seems you should not use OSC SLOP, as it appears to use FREE-RUNNING lfos to control pitch drift.   Every time a sequence of notes is played, you will get different results.   The difference will go from subtle to drastic, depending on the amount of OSC SLOP.

2. A LITTLE BIT GOES A LONG WAY: 
Since EACH OSC1/2 for EACH VOICE has their own free running lfos controlling pitch, this explains why a little bit goes a long way...  if you're using both oscillators and triggering multi note chords, there is going to be a lot of dissonance at higher values...  the pitch swing for each osc/voice may be as much as four or more semitones away from the base note, when OSC SLOP is set to maximum.   In most cases, you're not going to want more than a tiny bit of SLOP.   This is extremely pronounced when used with Unison mode as well. 

3. UNISON DETUNE vs OSC SLOP
I'm unable to tell if the UNISON DETUNE is the using the same engine as OSC SLOP... could be?   Maximum Unison Detune sounds similar to OSC SLOP at about 40% to me.   They may be completely different engines though?

4. INTERESTING SOUND DESIGN WITH EXTREME OSC SLOP
The more extreme application of OSC SLOP has interesting sound design possibilities, as there is a lot of complex stuff happening (layered, modulated lfo action on the frequency slop)   For instance, if you setup a patch with TWO OSCILLATORS, then set OSC SLOP to maximum, then modulate the OSC1/2 MIX, you are generating two tones up to 300 semitones away from the target note.   If mixed 50/50, you are generating a somewhat random two-tone-detuned-chord near the target note.   Those two tones change dynamically over time.   If you swing the mix back and forth, you go from a single tone to two-tone to the other single tone.   There's definitely some strange, eerie sound possibilities. 
« Last Edit: December 20, 2018, 04:31:45 PM by creativespiral »

OB-X8, Pro 3, P6, Rev2, Take 5, 3rd Wave, Deepmind, PolyBrute, Sub 37
Sound Sets:
https://sounddesign.sellfy.store/
Free Patches:
https://www.PresetPatch.com/user/CreativeSpiral

Interesting observations, thanks for documenting them.  I just did something similarly experimental and technical with my Moog One, trying to mimic the exact responses of the filter envelope of the Minitaur.

There is both math and music in synthesis.
Moog One <> Prophet Rev2 16V <>  Andromeda <> Kronos 61 <> Nord Stage 2 HA76 <> Integra 7 <> Minilogue XD module <> Blofeld desktop <> Behringer Model D <> Minitaur <> Slim Phatty <> Matrix 1000 <> Micron <> Privia PX-5S <>  MODX7 <> TG77 <> ASM Hydrasynth <> Perform VE <> FCB1010

TECHNICAL INFORMATION for REV2 FILTER SECTION

PLAYING THE FILTER
Here's instructions to "play the filter", with no oscillators in the mix.   This method bypasses the oscillators and gives you a self oscillating filter SINE WAVE, and opens up some interesting possibilities described below.

1. Start with INIT Patch
2. Turn off OSC1, so that both oscillators are OFF
3. Turn up FILTER RESONANCE to max 127, keeping 4 pole active
4. Sweep FILTER CUTOFF while holding down any key.
5. Optional: Set FILTER KEY AMOUNT to 64 to enable 1:1 tracking (described more below)

FILTER CUTOFF LOOKUP TABLE
Each tick of Filter Cutoff is equal to one semitone.  The Filter Cutoff value of 0 starts around the note (C -4).   Every twelve ticks equals twelve semitones (aka: one octave)

0 =   C-4  (~1.0hz) (Below Audible Range)
12 = C-3  (~2.0hz) (Below Audible Range)
24 = C-2  (~4.1hz) (Below Audible Range)
36 = C-1  (~8.2hz) (Below Audible Range)
48 = C0   (16.4hz)
60 = C1   (32.7hz)
72 = C2   (65.4hz)
84 = C3   (130hz)
96 = C4   (261hz)
-----------------------
97 = C#4    (277hz)
98 = D  4    (293hz)
99 = D#4    (311hz)
100 = E  4   (329hz)
101 = F  4   (349hz)
102 = F#4   (370hz)
103 = G  4   (392hz)
104 = G#4   (415hz)
105 = A  4   (440hz)
106 = A#4   (466hz)
107 = B  4   (493hz)
-----------------------
108 = C5  (523hz)
120 = C6  (1046hz)
132 = C7  (2093hz)
144 = C8  (4186hz)
156 = C9  (8372hz)
168 = C10 (16744hz)   (Rev 2 Cutoff actually stops at 164 which is a G#/Ab)   (Near Upper Limits of Human Audible Range)

FILTER KEY TRACKING (KEY AMOUNT)
Setting KEY AMOUNT to 64 is a "magic number", as it causes the FILTER CUTOFF to track perfectly (1:1) with the keyboard... ie:  if you play a C, the filter cutoff will be set to C... if you play a E, the filter cutoff will be set to E.   There is a starting point offset of two octaves below for the KEY TRACKING... ie:  If you play a C4 key on the keyboard, the FILTER CUTOFF will actually be at C2  (two octaves beneath the note you're actually playing), assuming the FILTER CUTOFF is set to 0.    If you set the FILTER CUTOFF to 24, then you effectively cancel out this offset of KEY AMOUNT tracking, and the note you play is the FILTER CUTOFF point.   (ie: KEY AMOUNT 64, CUTOFF 24 makes it so you are playing a tuned sine wave all the way up and down the keyboard) 

USE AS A SUB BASS FOUNDATION
Since this method produces a fairly perfect SINE WAVE, it may be a good candidate for layered patch where you want a pure sine wave sub bass as a foundation.   Kick on the sub woofer and rip out some brown notes.

AUDIO MOD with BOTH OSCILLATORS OFF
If you keep both oscillators turned off and sweep the AUDIO MOD from 0 to 127, you'll get a perfect ONE OCTAVE SWEEP of the sine wave.   I initially thought nothing would happen since OSC1 is set to OFF, but it actually produces a perfect octave sweep, with 128 ticks of resolution.   This can be modulated in the matrix or via LFOs too.

GETTING INTO FREQUENCY MODULATION
The Rev2 can get into some interesting Frequency Modulation territory, starting with the above SELF OSCILLATING FILTER setup... Now turn on OSC1 as a sawtooth, but keep OSC2 OFF, and swing the OSC MIX all the way to 127, so you're only hearing the #2 OFF oscillator.   You're just going to use the OSC1 as a source for AUDIO MOD (Modulation of Filter Cutoff).

Now sweep the AUDIO MOD, you'll hear some interesting FM results.  Start playing around with the OSC1 FREQUENCY base, OSC1 TYPE, FILTER CUTOFF base, FILTER KEY tracking, RESONANCE amount, and AUDIO MOD amount, and you'll get a wide range of possibilities including FM Bell Type sounds, searing FM synth parts, weird computer type sounds, plucks and various other sound textures.

Next, you can set up Envelopes, Gated Sequencer, LFOs or other Mod Matrix slots to animate those parameters, and you can mix in some of the OSC sound if you'd like, or layer away to create complex and interesting sounds that don't even use the direct sound of the oscillators.

STRANGE FILTER ANIMATION with ARP ON
Using the "Filter Playing Setup" above, Try increasing FILTER CUTOFF base (>50) with key tracking still set to 64, and setting the ARPEGGIATOR ON with fast BMP/Clock Divide, for some really strange computerized patterns, alien spaceship module sounds, swampy horror textures, and weird creature sounds.  Play around reducing Resonance and push up OSC1 Freq.   You can get into some very strange sound design territory, where each key generates a unique sequence, and playing chords with the arp on gives you various complex patterns.


« Last Edit: December 21, 2018, 11:19:05 PM by creativespiral »

OB-X8, Pro 3, P6, Rev2, Take 5, 3rd Wave, Deepmind, PolyBrute, Sub 37
Sound Sets:
https://sounddesign.sellfy.store/
Free Patches:
https://www.PresetPatch.com/user/CreativeSpiral

This is a thread where specific details on the Rev2 functionality can be cataloged and archived.

The manual leaves out a lot of info about the Math, Modulation Formulas, Lookup Charts, OS Update Changes, and Other Fine Details of how the synth works.   There are many interesting observations that have been shared in dozens of different threads over the years, but the search functions of this forum are lacking, and its hard to quickly find the info. 

I'm hoping we can try and gather all the specific known details here, and then we can create WIKI or other site to further organize it.   Maybe this thread can become sticky if it becomes a good resource.   Or DSI/SEQ can add the info as an addendum / Appendix F to the Rev2 Manual.

If you have specific details and want to present them, please start with a TITLE AT THE TOP, then the details, presented as clear and precise as possible.


I started a Tips and Tricks thread for the Rev 2 that might have some info you would find useful. I'm afraid any contribution I could add wouldn't be quite as wonderfully organized and thorough as what you have started here, but perhaps it might help you get some ideas to read through what's been said here.
https://forum.sequential.com/index.php/topic,1842.0.html
Mostly I just wanted to say that I sincerely appreciate what you're doing here, and am hopeful that you and others will add more information with time. What you've done already has been great for me, for reference and for expanding my understanding of the instrument. Although I view synthesis and sound design as a mostly creative endeavor, there's a part of my brain that absolutely clicks with the mathematical, logical aspect of creating a sound.
I think I got off track a bit there, but I just wanted to say thank you for the good work you're doing here, and please keep it up!

I really appreciate you documenting the filter’s sine wave behavior and the suggestion to use it as a sub oscillator for bass on layer b.

Amp Attack Envelope Curve
Here's some visual reference material regarding the timing and shape of amp attack on Rev2.  Data points taken every 8 values, from 0-127.   Measured attack times are approximates within a very small margin.

Amp Attack Value  ~Milliseconds
03 ms
710 ms
1531 ms
2375 ms
31135 ms
39195 ms
47260 ms
55390 ms
63605 ms
71735 ms
79950 ms
871260 ms
951830 ms
1033060 ms
1116080 ms
11914220 ms
12724660 ms

Also, attached are a couple images that show all of the attack times, so you can get a sense of the exponential nature of attack values, and an image showing the overall shape of the attack volume over time (in its natural state / not modified by any mod sources).





« Last Edit: February 02, 2019, 10:59:04 PM by creativespiral »

OB-X8, Pro 3, P6, Rev2, Take 5, 3rd Wave, Deepmind, PolyBrute, Sub 37
Sound Sets:
https://sounddesign.sellfy.store/
Free Patches:
https://www.PresetPatch.com/user/CreativeSpiral

Thanks it looks exponential but I failed to find a fitting curve though.

Thanks it looks exponential but I failed to find a fitting curve though.
I copied the data into a spreadsheet, and could not find a good exponential, power law or hyperbolic fit. (You can always find a polynomial if you add enough terms.)

Maybe it's just a piecewise approximation like a "log taper" potentiometer.

creativespiral: How repeatable were these measurements?  I assume you followed the attack with a 0 decay/sustain/release so that you could tell where the attack ended...

Using LFO to modulate OSC FREQUENCY has a different resolution than using the MOD MATRIX to OSC FREQ.
LFO Amount of 4 = Mod Matrix Amount of 1
Maybe worth noting: For modulation of OSC FREQ by Envelope 3, there is no difference in modulation amounts between the mod matrix and envelope destination.  2 amount units = 1 semitone (at the envelope's peak).

Creative, do you have any interest in documenting the results of modulating the filter envelope by itself?

I know you've got a major announcement forthcoming regarding simulating VCO response versus DCO behavior.  And you've touched on filter response.  Seems to me the deviation of envelope response by self-modulation is something right up your alley.

If not, it's all good.  Just wanted to thank you again for your detailed observations and documentations.
Moog One <> Prophet Rev2 16V <>  Andromeda <> Kronos 61 <> Nord Stage 2 HA76 <> Integra 7 <> Minilogue XD module <> Blofeld desktop <> Behringer Model D <> Minitaur <> Slim Phatty <> Matrix 1000 <> Micron <> Privia PX-5S <>  MODX7 <> TG77 <> ASM Hydrasynth <> Perform VE <> FCB1010

I have carefully measured the Amplifier ADR times and here are my findings:
  • the curves are bumpy, not smooth, a bit like they were not generated by a calculation
  • the 3 curves look identical but scaled vertically (i.e. producing different times)
  • the curve profile looks like a sigmoïd, not an exponential but I haven't been able to fit it.
  • I started the same exercise with the auxiliary ADR and found again the same profile
As a conclusion I think there must be a table inside the REV2 ROM with a time profile that is then scaled and used everywhere.

Prophet Rev2 - Note Number Modulation Lookup Table
Below is a lookup table for important values associated with using Note Number as a source in the modulation matrix.  Note Num modulation can achieve many desirable and advanced effects, but you have to be ready to do some math if you want a good understanding and control over it.



Important Notes About the Table:
The "Value Per Key" and "61-key Range" are the two fields that you're probably going to want to start from.  If you know you want the output to be a specific amount per key, then reference "value per key".   If you know the total value range you want from the lowest key on the keyboard to the highest, then reference the 61-key-range as your starting point to get the Note Num amount that you should use.

Next, check the First Key Offset.  Since MIDI Notes/Keys start at MIDI Note #0 (C-1), the Note Number Modulation starts there... and there's 36 sub and low bass notes before you get to the first key on the Prophet Rev2 keyboard (in standard octave range).   If you're okay with the first physical key on the board having that First Key Value, then you're good to go. 

But you may want the first key to start at '0' output value in many cases.  If you want this behavior, you need to offset the value of your target by a negative amount (-) equal to the First Key Offset.  For instance, if you're targeting an Osc Mix Level that you want to increase over the keybed, and the First Key Offset for your Note Modulation Output is +9, then you may want to use another mod slot to cancel out the first key offset:

Source: Note Num
Dest: Osc Mix
Amount: 32     (gives an output of 9 at first key... Midi Note#36)

Source: DC
Dest: Osc Mix
Amount: -9

Utilization

1. Controlling Bass vs Mid vs High range effects
There are various different cases where it's advantageous to treat lower notes differently than higher notes.  If I'm setting up PWM/Shape Mod LFOs, I often want the bass PWM be less pronounced (it gets flubby otherwise).   If I'm setting up performance modulation with Pressure or Mod Wheel affecting cutoff, lfo vibrato, or various other effects, I'll often setup Note Num modulation to make the effects less pronounced on bass notes... it can give more clarity and definition.

2. Controlling Tuning and Intonation, Fine Tune Control over Cutoff
You can use low amounts of Note Num modulation routed to Osc Frequency to mimic intonation / tuning offsets... squashing or stretching tuning.  There are many advanced topics related to this which I may go into later, but there's a lot of interesting territory to be explored by Note Num modulation with Frequency, fine tuning via Voice Modeling / Gated Sequencer scaling, and playing with cross modulation between LFOs.   Also, you can get fine tune control over cutoff.  Two interesting data points above:   256 is the value needed to route via Note Num to Osc Freq to replicate the Osc Key Tracking Switch (ie: if you turn off osc key track and setup three note num mod slots with 256 total value to osc freq, you get the same effect)  Also, 128 is the value needed to route to Cutoff to be equivalent to setting Key Amount to 64. 

3. Osc Mixing, Shape Mod, Other Mix Levels over the Keybed
You can setup various destination to have a perfect swing from 0 to Max Value, starting at the first physical key and ending at the last (or even more compressed in some cases)   You may need to use up a bunch of mod slots, but it can be done.  I posted this example of swinging Osc Mix from 0-128 over the keyboard:

Source: Note Num
Dest: Osc Mix
Amount: 127

Source: Note Num
Dest: Osc Mix
Amount: 127

Source: Note Num
Dest: Osc Mix
Amount: 19

= Total of 273 Note Num Modulation gives output of 127.97 over 61-key range

Source: DC
Dest: Osc Mix
Amount: -77

The DC offsets the First Key Amount of 76.78 down to about 0, so the first physical key starts at 0 mix, and the last physical key is right about 128.   

There are many other advanced modulation techniques related to Note Num Modulation.  Making this table has helped me out on many occasions...  Hopefully you guys will find it a helpful reference.   

- Jason

I'm gonna release some videos soon with more examples of Note Num modulation in patch editing. 
« Last Edit: March 27, 2019, 12:46:11 AM by creativespiral »

OB-X8, Pro 3, P6, Rev2, Take 5, 3rd Wave, Deepmind, PolyBrute, Sub 37
Sound Sets:
https://sounddesign.sellfy.store/
Free Patches:
https://www.PresetPatch.com/user/CreativeSpiral

Explanation of the Velocity and Pressure Curves: (This was posted on another thread by moderator cbmd, but it seems like it fits here...)
Quote
Velocity:
Curve 1: linear
Curve 2: 1.5 exponential, 0 offset
Curve 3: 2.2 exponential, 10 offset
Curve 4: compressed, 26 offset
Curve 5: custom curve, 33 offset
Curve 6: 1.5 exponential, 33 offset
Curve 7: 2.3 exponential, 50 offset
Curve 8: compressed, 33 offset

Pressure:
Curve 1: 3.0 exponential, 1 offset
Curve 2: 1.8 exponential, 1 offset
Curve 3: custom
Curve 4: 3.0 exponential, 1 offset
Note that the description for Pressure Curve 4 is not accurate but a correct description is not available.  Also from that thread, the following from support:
Quote
It's good to note that the velocity curves only affect the raw output of the keybed to the internal synth engine, and not received MIDI data. If you wanted to alter the velocity response coming out of the computer, you would do so in the computer.

Recursive Envelope Modulation
Here is an article describing Recursive Envelope Modulation.   The specific attack and amount values are for the Sequential Pro 3, however the same general principles apply to the Rev 2.  I know info about this topic has been requested here a few times.   

https://www.presetpatch.com/article/Recursive-Envelope-Modulation-on-Synthesizers

Recursive modulation can be used to adjust the contours/shapes of the envelope stages.   You can get a snappier attack to match the envelope performance of other classic synths or for more percussive type sounds.

Or alternatively, you can achieve a more gradual, linear type of swell than the standard envelope shape - which can be useful for slowly evolving pad type of sounds.

Some examples from the article:










OB-X8, Pro 3, P6, Rev2, Take 5, 3rd Wave, Deepmind, PolyBrute, Sub 37
Sound Sets:
https://sounddesign.sellfy.store/
Free Patches:
https://www.PresetPatch.com/user/CreativeSpiral