Skip to content

EuroPi Contrib Docs

Welcome 👋

This site is a clean, searchable view of the documentation found in the official EuroPi repository under: software/contrib

  • A user-friendly way to browse and read contrib script docs
  • Content synced from the official EuroPi repository
  • Updated regularly as new scripts/docs are merged upstream

Nothing changes 🙂 Please keep contributing to the official EuroPi repo as usual:


A quantized scale/arpeggio generator

Author: chrisib
Labels: quantizer, scale, arpeggio

A probability script based on Mutable Instruments Branches

Two channels of probability-based routing, where the digital input will be routed to one of two outputs based on a weighted random chance, controlled by a knob per channel, and the analogue input for channel 1

Author: Bridgee
Labels: Random

Smooth random voltages based on bezier curves. Inspired by the ADDAC507 Random Bezier Waves module.

Author: chrisib
Labels: Random

A simple gate sequencer implemented using a 6-bit binary counter.

Author: chrisib
Labels: gates, sequencer, binary

Mirrors a gate/trigger input, with adjustable skip probability across channels.

Author: awonak
Labels: random, triggers

Pixels bounce around on the display and trigger gates when hitting the edges.

Author: Jorin
Labels: gates, random, simulation, triggers

A clock multiplier or divider. Each channel has an independently-controllable modifier, multiplying or dividing an external clock signal on din.

Author: chrisib
Labels: clock, clock multiplier, clock divider, gates

A probability utility with an output based on a percentage choice between 1 or 0

Using the threshold knob and analogue input, users can determine whether a 1 or a 0 is preferred by the weighted random choice each time the digital input is triggered, or an internal clock depending on the mode

Author: awonak
Labels: Clock, Random, CV Generation

A gate and CV sequencer inspired by Mutable Instruments Grids and the Music Thing Modular Turing Machine

Users can morph between patterns and CV sequences during operation, with 3 gate and 3 CV outputs based on the current pattern, programmed randomness, and CV input, running from an external clock

Author: gamecat69
Labels: sequencer, gates, triggers, drums, randomness

A semi-random LFO that uses John Conway’s Game Of Life to produce CV and gate signals.

Author: chrisib
Labels: lfo, gates, randomness

6 channels of control voltage recording

Record 6 banks of 6 channels of control voltage, and then play them back at a consistent rate set by an external clock. Recording of CV can be primed so that you can record a movement without missing a beat

Author: anselln
Labels: sequencer, CV, performance

A pseudo-random gate and CV sequencer that uses a realtime clock to generate patterns.

Requires installing and configuring a realtime clock module, connected to EuroPi’s external I2C interface for best results.

Author: chrisib
Labels: sequencer, gate, cv, random, realtime clock

A loopable random gate sequencer based on a binary tree. Inspired by the Robaux DCSN3

Author: chrisib
Labels: sequencer, gates, triggers, randomness

A trigger sequencer designed to interact with the Moog DFAM. Allows DFAM to play sequences of different lengths and adds a reset button & patch point.

Inspired by the Sonoclast MAFD.

Author: chrisib
Labels: trigger, dfam

Clockable and free-running LFO and random CV pattern generator

Author: gamecat69
Labels: clocked lfo, sequencer, CV, randomness

An attack release envelope with optional sustain and looping functionality. Envelopes are triggered or gated by the digital input, and the envelope is output, along with a copy of the digital input and an inverted copy of the envelope.

Author: roryjamesallen
Labels: Envelope Generator

Euclidean rhythm generator. Each channel can generate an independent euclidean rhythm.

Author: chrisib
Labels: sequencer, gates, triggers, euclidean

Convert incoming triggers to gates or gates to triggers. Buttons allow manually creating gates/triggers, knobs control the duration of the output signals.

Author: chrisib
Labels: gates, triggers

A script which attempts to answer the question “What would Steve Reich do if he had a EuroPi?”

Author: gamecat69
Labels: sequencer, gates

A variation of the Consequencer script specifically geared towards driving voices

2pairs of gate and CV outputs are available to drive two voices, as well as 2 drum gate outputs. As with the consequencer, the patterns can be smoothly morphed between while performing

Author: seanbechhofer
Labels: sequencer, gates, triggers, drums, randomness

6 tempo-related LFOs with adjustable wave shape

Users can run up to 6 LFOs with one internal master clock, with wave shapes of either sine, saw, square, semi-random, or off. The division of the master clock that each LFO runs at, as well as each of their wave shapes, can be adjusted during operation

Author: roryjamesallen
Labels: LFO

Control the levels of CV1-6 using sliders in a web interface. Requires installation and configuration of a Raspberry Pi Pico W or Pico 2 W.

Author: chrisib
Labels: cv, http, wifi

Dual-channel 8-bit trigger+gate+cv sequencer based on the binary representation of an 8-bit number.

Author: chrisib
Labels: sequencer, gate, trigger, cv

Compares AIN to K1 and K2, outputting 5V digital signals on CV1-CV5, and an analogue output signal based on comparing all 3 sources.

Author: chrisib
Labels: logic, gates, binary operators

Treats both inputs as digital on/off signals and outputs the results of binary AND, OR, XOR, NAND, NOR, and XNOR operations on outputs 1-6.

Author: chrisib
Labels: logic, gates, binary operators

Six syncable LFOs with variable wave shapes. The clock speed of each LFO is slightly different, with an adjustable base speed and CV-controllable spread.

Inspired by Expert Sleepers’ Otterley module.

Author: chrisib
Labels: lfo

A master clock and clock divider.

Author: gamecat69
Labels: clock, gates, triggers

A gate sequencer that uses Morse code to generate the on/off pattern.

Author: chrisib
Labels: gates, sequencer

Two channels of sample/track and hold based on a single trigger and CV source

Users have a copy of the original trigger signal, a sample and hold and a track and hold of the analogue input, and the all above but with the gate inverted, available from the CV outputs

Author: seanbechhofer
Labels: gates, sample&hold, track&hold

A clone of the Addac 508 “Swell Physics”. Uses a trochoidal wave to simulate ocean surge, outputting control voltages and gates depending on the relative heights of 4 buoys floating on top of the wave.

Author: chrisib
Labels: LFO, gate, sequencer, physics

Interface program for sending & receiving Open Sound Control (OSC) packets over UDP. Compatible with TouchOSC and other programs that support OSC over UDP.

Requires a Raspberry Pi Pico W or Pico 2 W with a properly-configured wifi connection to your other devices.

Author: chrisib
Labels: osc, wifi

A re-imaging of ALM/Busy Circuit’s Pamela’s “NEW” Workout. Turns the EuroPi into a clocked modulation source with multiple wave shapes, optional quantization, euclidean rhythm outputs and external start/stop trigger input.

Author: chrisib
Labels: clock, euclidean, gate, lfo, quantizer, random, trigger

An irregular LFO based on a basic 1-dimensional physics simulation. Outputs triggers when a particle bounces under the effects of gravity. Outputs control signals based on the particle’s position and velocity.

While not technically random, the effects of changing the particle’s initial conditions, gravity, and elasticity coefficient can create unpreditable rhythms.

Author: chrisib
Labels: gate, lfo, sequencer, random, trigger

A pseudo-random gate generator that uses the realtime clock to track the phase of the moon as a seed. Based on Pet Rock by Jonah Senzel

Requires installing and configuring a realtime clock module, connected to EuroPi’s external I2C interface for best results.

Author: chrisib
Labels: sequencer, gate, random, realtime clock

A clock divider whose divisions are based on the Fibonacci sequence.

Author: seanbechhofer
Labels: triggers, sequencer

Six independent oscillators which output on CVs 1-6.

The base pitch is set by the analog input, which is interpreted as a V/oct input with 0V = C. Knob 1 allows for detuning of the 6 voices, and as the knob is turned clockwise, the spread between them increases. Button 2 toggles the maximum detune between a half step and a major 9th. Knob 2 sets the polyphony mode.

Author: t-schreibs
Labels: oscillator, poly

A sequencer that advances notes according to a polyrhythmic clock, inspired by the operation of the Moog Subharmonicon sequencer

Users can run two simultaneous polyrhythmic sequences clocked by the same external clock. Quantised outputs are available, with the note for each step, and the polyrhythm it runs at, being easily changed to write the sequence

Author: awonak
Labels: polyrhythms, sequencer, triggers

Creates interesting polyrhythmic gate patterns while also allowing probabilities to be set on gates.

Given values for and upper and lower rhythmic ratios, Probapoly will create a looping pattern as short as possible with no repetition of the pattern within the loop.

Author: gamecat69
Labels: sequencer, performance, gates, polyrhythm, probability

Quantizes input analog signals to a customizable scale. Additional signals output the same note shifted up or down to create harmonies across multiple oscillators.

Author: chrisib
Labels: quantizer

A tool for exploring sounds and control voltage combinations by navigating a 2D plane

The two knobs allow users to scan in 2 separate axis, with the value of each knob available as a CV output. There is also a CV output for the difference between the two knob positions, and then the lower row of CV outputs is the inverse of each jack above. The outputs can also be rotated as inspired by the 4MS Rotating Clock Divider

Author: roryjamesallen
Labels: n/a

An oscilloscope script to monitor the analogue and digital inputs

The current values of the analogue and digital inputs are displayed in an oscilloscope style on the OLED display, and copies of both signals, as well as an inverted gate signal, are available from the CV outputs

Author: mjaskula
Labels: example, utility

A 2-6 output sequential switch. The analogue input is mirrored to one of the outputs, with the specific output changed every time a trigger is received.

Author: chrisib
Labels: random, sequential switch

Random CV, optionally quantized, voltages based on controllable normal distributions. Inspired by Magnetic Freak’s Gaussian module.

Author: chrisib
Labels: random, quantizer

CV analyzer that produces gates & CV outputs based on the slope of the incoming signal

Author: chrisib
Labels: gates, CV

Random CV with adjustable slew rate, inspired by: https://youtu.be/tupkx3q7Dyw.

3 random or analog input s&h voltages with changable slew smoothness. New voltages assigned upon each digital input trigger. Top row outputs move towards target voltage according to slew rate set by knob 1. Bottom row outputs immediately change to new target voltage.

Author: awonak
Labels: random, s&h

A source of chaotic modulation using systems of differential equations such as the Lorenz System

Users have the x, y, and z values of the output of each attractor model available as CV outputs, as well as 3 gate signals related to the relationships between these values

Author: seanbechhofer
Labels: gates, triggers, randomness

A re-imagining of Jasmine and Olive Tree’s Traffic module. Triggers are sent to both inputs generating CV signals based on which trigger fired most recently and a pair of gains per channel.

Author: chrisib
Labels: sequencer, gate, triggers

A script meant to recreate the Music Thing Modular Turning Machine Random Sequencer as faithfully as possible on the EuroPi hardware.

Author: mjaskula
Labels: sequencer, random, triggers

Generates static voltages on CV1-6. Useful for when you need a reliable, fixed voltage source as an input. Some useful applications include:

  • transposing a sequencer
  • shifting a bipolar LFO or VCO to be unipolar
  • sending a fixed voltage to a VCA to amplify a signal to a fixed level
  • calibrating other modules

Author: chrisib
Labels: cv, voltages, non-interactive


Proof of Concept Scripts

These scripts are NOT included in the standard menu.py, but can be added if desired.

An example script for the menu system

This script can be copied and altered as a starting point for your own scripts that are to be menu compatible, and make use of the save state functionality

Author: mjaskula
Labels: example

An example demonstrating the use of custom fonts.

Author: François Georgy
Labels: example

An example showing the use of knob banks and lockable knobs.

Author: mjaskula
Labels: example

A simple example showing how to use configuration points and the settings menu to create an application GUI.

Author: chrisib
Labels: example