Skip to content

Sigma

This script is inspired by Magnetic Freak’s Gaussian module. Please see the user manual for details on the original module and a deeper dive into the mathematics used in this script.

The Gaussian or Normal distribution is a bell-shaped curve often used in statistics. Unlike rolling a d20 in Dungeons and Dragons, where there is an equal chance of the roll being 1, 2, 3, …, 19, or 20, a normal distribution is more likely to produce numbers in the middle of its range and less likely to produce numbers at the extremes. The way in which this probability changes is determined by the standard deviation of the curve, written using the Greek letter Sigma in statistics.

Inputs:

  • din: an external clock signal to trigger sampling. The pulse width of this signal controls the output pulse width
  • ain: assignable CV control (can be disabled, or assigned to control mean, standard deviation, jitter or bin mode)
  • b1: shift button; hold to change k1 and k2 modes
  • b2: cycles through ain routing
  • k1: mean control / shift: jitter control
  • k2: spread control / shift: binning/quantizer mode select

k1 or k2 will act as an attenuator for the assigned control (mean/spread/jitter/binning).

Outputs are divided into 3 pairs: cv1 & cv 4, cv2 & cv 5, and cv3 & cv 6. cv1-3 output gate signals with a duration equivalent to the duty cycle of the incoming clock on din. cv4-6 output random control voltages according to the spread & mean controls and the binning mode.

The following description assumes the binning mode is set to continuous.

Changing k1 will move the average output voltage of the outputs. Keeping the knob near-vertical will keep the averate output close to 5V.

Increasing k2 will increase the standard deviation of the outputs. At the lowest setting the outputs will be effectively locked to the mean set by k1. As k2 increases the spread of output voltages increases.

By default all six output channels update simultaneously. By applying positive voltage to ain the outputs can be desynchronized, updating at random intervals. cv1 & 4 will always trigger in-time with the clock on din, but the other pairs will trigger at normally-distributed intervals after cv1.

The CV outputs on can be configured to either oscillate between fixed voltage levels, output quantized 1V/Octave pitch levels, or a continuous smooth voltage.

In Bin mode the output voltage will oscillate between values chosen from the levels below:

# BinsCV Output LevelsDelta (V)
20V, 10V10V
30V, 5V, 10V5V
60V, 2V, 4V, 6V, 8V, 10V2V
70V, 1.7V, 3.4V, 5V, 6.6V, 8.3V, 10V1.7V
90V, 1.25V, 2.5V, 3.75V, 5V, 6.25V, 7.5V, 8.75V, 10V1.25V

In Quantize mode, the output voltage will be quantized to 1V/Octave scales with the following resolution:

Quantize ModeDelta (V)
Tone0.16667
Semitone0.08333
Quartertone0.41667
Continuousinf*

Output will be in the range 0-10V

* Not actually infinte, but as high-resolution as the DAC chips will allow