Name: Turing Matrix draft: false summary: Turing Machine sequencer with a switchable mixer layer inspired by the Music Thing Modular Turing Machine and Vactrol Mix combination short-description: Turing Machine sequencer with a switchable mixer layer inspired by the Music Thing Modular Turing Machine and Vactrol Mix combination Language: C++ (Pico SDK + ComputerCard) Creator: Adrian Vos Version: 0.1.0-beta Status: Beta License: GPL-3.0-or-later date-created: 2026-06-26 date-updated: 2026-07-13 demo-link: https://www.youtube.com/watch?v=F59vXwbCjhs panel: inputs: - id: PulseIn1 name: Ext Clock 1 description: Replaces tap tempo and drives the main Turing clock type: pulse - id: PulseIn2 name: Ext Clock 2 description: Independently clocks channel 2 when patched type: pulse - id: CVIn1 name: CV Input 1 description: Divide/multiply modulation in middle mode; mix input 1 in up mode type: cv - id: CVIn2 name: CV Input 2 description: Pitch offset in middle mode; mix input 2 in up mode type: cv - id: AudioIn1 name: Audio/CV In 1 description: Mixer input 1 in up mode; direct audio pass-through source in middle mode type: audio - id: AudioIn2 name: Audio/CV In 2 description: Mixer input 2 in up mode; direct audio pass-through source in middle mode type: audio outputs: - id: PulseOut1 name: Matrix Gate 1 description: Channel 1 matrix gate / pulse output in both layers type: pulse - id: PulseOut2 name: Matrix Gate 2 description: Channel 2 matrix gate / pulse output in both layers type: pulse - id: CVOut1 name: |- Chan 1 Quant CV description: Quantized pitch CV in middle mode; crossfaded CV output 1 in up mode type: cv - id: CVOut2 name: |- Chan 2 Quant CV description: Quantized pitch CV in middle mode; crossfaded CV output 2 in up mode type: cv - id: AudioOut1 name: |- Audio Out 1 Pass-through description: Audio pass-through in middle mode; mixed audio output 1 in up mode type: audio - id: AudioOut2 name: |- Audio Out 2 Pass-through description: Audio pass-through in middle mode; mixed audio output 2 in up mode type: audio tags: - sequencer - turing-machine - random - clock - cv - mixer controls: switch: up: name: Mixer mode description: "Z up: MAIN: Mixer Lag; X: Mix Depth 1; Y: Mix Depth 2. Mixer mode active." middle: name: Turing Mode description: "Z middle: MAIN: Randomness / Write; X: Loop Length; Y: Div / Mult. Turing mode active." down: name: Tap tempo description: "Z down, momentary: MAIN: Tap Tempo." knobs: - main: name: |- Random / Write Mixer Lag description: Drives the main Turing machine write behavior in middle mode and sets mixer lag in up mode x: name: |- Loop Length Mixer Depth 1 description: Sets channel 1 sequence length in middle mode and mixer depth 1 in up mode y: name: |- Div / Mult Mixer Depth 2 description: Sets channel 2 divide/multiply clock relationship in middle mode and mixer depth 2 in up mode leds: - display: list items: - id: LED0 name: LED 1 description: "Z middle: Channel 1 DAC Level; Channel 2 DAC Level; Channel 1 Turing Level; Channel 2 Turing Level; Pulse 1 Activity; Pulse 2 Activity." - id: LED1 name: LED 2 description: "Z up: Mixer position 1; Mixer position 2; Mix depth 1; Mix depth 2; Pulse 1 Activity; Pulse 2 Activity." host: notes: >- Dual-layer Turing-style random sequencer with a switchable mixer layer and tap tempo or external clocking. The beta card builds on ideas and code from Tom Whitwell and Chris Johnson, with the Workshop Computer port adapting those concepts into a two-layer panel workflow. Pulse In 1 overrides tap tempo as the main clock; Pulse In 2 can clock channel 2 independently. CV In 1 controls divide/multiply on channel 2 in middle mode and mix input 1 in up mode. CV In 2 applies quantized pitch offset in middle mode and mix input 2 in up mode. Audio In 1 and Audio In 2 pass through in middle mode and become the mixer inputs in up mode. Web editor via MIDI SysEx: Browser editor reads and writes Turing and mixer settings over USB MIDI SysEx (Chrome recommended) contact: social: github: https://github.com/soveda