buggles
buggles · modulation · schema v1Chaotic random voltage source — clean-room functional implementation of the Buchla / Make Noise wogglebug archetype. Internal "woggle clock" emits triggers at the RATE knob; outputs include SMOOTH (slewed random), STEPPED (sample-and-held), CLOCK (woggle gate), BURST (probabilistic clusters of 3-7 triggers), and RING (smooth × sub-osc ring-mod, the signature dirty texture). CV inputs modulate rate + chaos; EXT CLK replaces the internal scheduler when patched. The "Wogglebug" name is Make Noise's trademark — BUGGLES is our name; no proprietary schematic is copied.
the faceplate
3 inputs · 5 outputs · 5 params
inputs
| id | cable | what it does |
|---|---|---|
clock_cv | cv | CV that sums onto the Rate knob, speeding up or slowing the internal woggle clock (sampled at each woggle event rather than continuously). control voltage (CV) |
chaos_cv | cv | CV that sums onto the Chaos knob, modulating how random/jittery the voltages and timing get. control voltage (CV) |
external_clock | gate | External clock input: when patched, its rising edges replace the internal woggle clock — each pulse fires one woggle event (new random voltages + a CLOCK/BURST output), so the chaos locks to your tempo. The internal clock resumes about a second after the pulses stop. gate / trigger |
outputs
| id | cable | what it does |
|---|---|---|
smooth | cv | A slowly-shifting random voltage: it slews toward each new random target instead of jumping, so it behaves like a lazy random LFO — good for warbling pitch, filter, or pan modulation. The Smooth control sets how lazily it glides. control voltage (CV) |
stepped | cv | A sample-and-held random voltage that hard-jumps to a fresh value on every woggle event — brittle, steppy modulation for random melodies or jumpy timbres. control voltage (CV) |
clock | gate | A gate output that pulses (~5 ms) on every woggle event — a chaotic clock you can use to trigger sequencers, envelopes, or drums; its rate and jitter follow Rate + Chaos. gate / trigger |
burst | gate | A gate output that, with probability set by the Burst control, fires a cluster of 3–7 closely-spaced trigger pulses on a woggle event — for ratchets, stutters, and fills. gate / trigger |
ring | audio | An audio-rate output: the smooth voltage ring-modulated against a sub-oscillator tracking the woggle rate — the Buchla 'complex random' texture, patchable straight into the audio path. audio signal |
params
| id | label | range | default | curve |
|---|---|---|---|---|
rate | Rate | 0..1 | 0.4 | linear |
chaos | Chaos | 0..1 | 0.3 | linear |
smoothness | Smooth | 0..1 | 0.5 | linear |
burst_probability | Burst | 0..1 | 0.2 | linear |
level | Level | 0..1 | 0.7 | linear |
controls
| control | what it does |
|---|---|
| Burst | Chance (0..1) that a given woggle event fires a BURST cluster instead of a single pulse — 0 never bursts, 1 bursts every event. |
| Chaos | Chaos depth (0..1): at 0 the stepped output is a clean S&H of a stable random walk and timing is steady; turning it up makes each step a fresh independent value and adds up to ±50% jitter to the woggle period. |
| Level | Output scaling (0..1) applied to the SMOOTH, STEPPED, and RING outputs (the CLOCK and BURST gates keep a clean 0/1 swing regardless). |
| Rate | Internal woggle-clock speed (0..1, log-mapped to roughly 0.1–50 Hz): how often new random voltages are rolled. The Clock CV input adds to this. |
| Smooth | How lazily the SMOOTH output glides toward each new target (0..1): low is almost a step, high stretches the slew to about twice the woggle period for very gentle drift. |
source
buggles.ts on GitHub.