MusicBrainopen hardware · est. NL

Component

Marbles random sequencer

v0.5.108

Rhythm & sequencingMutable Instruments

A random generator that picks notes and rhythm (Mutable Instruments Marbles).

Software v0.5.108

Board overview

Overview

A random generator that picks notes and rhythm (Mutable Instruments Marbles).

A port of the random generators from Mutable Instruments Marbles: a self-playing source of rhythm and melody. The t section makes two streams of random gates (t1, t2) around a clock (tK); the X section makes three random pitch CVs (X1–X3), quantised to a scale, that you can patch straight into a V/Oct input. Y is a slower random CV.

Déjà vu is the musical part: at 0 every step is new; turning it up brings back steps from memory more often, and around the middle the loop locks. Loop sets its length (1 to 16 steps). Bias decides whether t1 or t2 fires more often, Jitter makes the timing loose, Spread and Bias X shape how wide and where the notes fall, Steps goes from smooth to stepped, and Scale and Range pick the scale and the octave range. The tempo follows the patch tempo (♩ in the toolbar); with ExtClk on, the Clk jack drives it instead.

Controls

ControlRangeDefaultWhat it does
Tempo10 … 480 bpm120The tempo (follows ♩ in the toolbar).
Spread0 … 10.5How widely the X notes are spread.
Bias0 … 10.5Whether the notes tend to land low or high.
Jitter0 … 10Loosens the timing of the t gates.
Bias X0 … 10.5Whether the X notes tend to land low or high.
Steps0 … 10.5From smooth random voltages to stepped notes in the scale.
Déjà vu0 … 10Repetition: 0 = always new, around the middle the loop locks.
Loop1 … 168Length of the déjà vu loop in steps (1–16).
ModelCoin / Clus / DrumCoinHow t1 and t2 are chosen: coin toss, clusters or drums.
ScaleMaj / Min / Pent / Pelog / Bhai / ShriMajScale for the X notes: major, minor, pentatonic, pelog, bhairav or shri.
Range+2V / +5V / ±5V±5VRange of X: 0 to 2 V, 0 to 5 V or ±5 V.
ExtClkoff / onoffFollow the Clk jack instead of the internal tempo.

Ports

PortDirectionSignalWhat it carries
ClkingateExternal clock, used when ExtClk is on.
R+incvBends the tempo, ±1 = ±2 octaves.
DV+incvAdded to Déjà vu.
Sp+incvAdded to Spread.
t1outgateRandom gates, stream 1.
t2outgateRandom gates, stream 2.
tKoutgateThe master clock.
X1outcvRandom note CV in volts, quantised to the scale.
X2outcvSecond random note CV.
X3outcvThird random note CV.
YoutcvSlow random CV, on the clock divided by 16.

How it works

The module runs the original TGenerator (random gates with the déjà vu memory) and XYGenerator (random voltages with the quantiser and the preset scales). It runs in MusicBrain's control domain, 1000 times a second, so gates have 1 ms resolution, which is plenty for clocks up to several hundred BPM.

The X outputs are in volts at one volt per octave (0 V is C4): ±5 V, or 0 to 2 V or 0 to 5 V with Range. R+ bends the tempo by up to two octaves either way; DV+ and Sp+ add to the Déjà vu and Spread knobs. The browser simulator compiles the same code to WebAssembly.

Runs on

  • Teensy 4.1 (the MusicBrain Brain): less than 0.1 % CPU per instance, measured on firmware 0.5.108.
  • The browser: the editor's simulator runs the same C++ code as WebAssembly, so what you hear while patching is what the Brain plays.

Try it

In the editor's example set: 🎲 Generative jam (Marbles), 🗣️ Warps vocoder, 🥁 808 jam (Peaks), 🌌 Krell (zelfspelend), 🌌 Krell, 🎲 Generative jam.

Editor: https://editor.musicbrain.nl

Sources & licences

  • Based on Mutable Instruments Marbles by Émilie Gillet, open source under the MIT licence (vendored in firmware/lib/mi-marbles).
  • The MusicBrain wrapper is MIT licensed as well. This is a software port, not the Mutable Instruments hardware.

Versions

  • October 2026 (editor): the Tempo knob follows the patch tempo, tap tempo and MIDI clock.
  • Simulator (September 2026): the browser runs the same Marbles code as WebAssembly.
  • 0.5.34: first version (July 2026).