Wavetable LFO
Bitwig Platform
A morphable LFO that scans a loaded Bitwig wavetable as a repeating modulation shape.
What it does
Wavetable LFO reads one cycle from a selected position in a WT wavetable. Phase moves across the current table, while Index chooses or morphs between the tables in the file, allowing the modulation waveform itself to change over time.
Controls and ports
The shared LFO controls provide Rate, Timebase, triggering/synchronization, phase, polarity, polyphony, and modulator output. Wavetable selection and Index choose the shape. Inspector options can latch Index for a complete cycle and control whether each table's end is wrapped toward its beginning.
Practical uses
- Load a wavetable containing contrasting shapes and modulate Index slowly to evolve the modulation contour.
- Enable Hold Shape During Cycle when Index changes should take effect only at cycle boundaries instead of bending a cycle in progress.
- Use pitch-rate and bipolar operation for audio-rate modulation or as an experimental oscillator/control source.
Things to know
- Phase and Index are different axes: Phase scans one waveform, while Index moves through the collection of waveforms.
- Hold Shape During Cycle latches the Index at phase wrap, so one complete cycle uses one stable table position.
- Don't Wrap Tables preserves a difference between the last and first sample of a table; this can create a jump when phase wraps.
- The raw wavetable may contain oscillator-oriented shapes, but at ordinary LFO rates they become modulation curves.
- Audio-rate operation can expose interpolation, discontinuity, and anti-aliasing behavior that is insignificant at slow modulation rates.
Technical details
A high-confidence Nitro implementation candidate supports the technical summary, but the visible-module mapping remains inferred.
The confirmed grid_wavetable_lfo_table_index helper first clamps the modulated index as index = clamp(index_in + table_amount*table_mod, 0, 1). With cycle latching disabled, that value passes through continuously. With latching enabled, it detects a phase wrap when previous_phase > current_phase and updates the held Index only on that sample; otherwise it retains the previous table position. This precisely explains Hold Shape During Cycle. The actual WT frame interpolation and phase-to-sample lookup are outside this body and remain unmapped.
| Nitro port | Type |
|---|---|
in |
InputAudioPortType |
table |
InputAudioPortType |
table_mod |
InputAudioPortType |
phase_in |
InputAudioPortType |
enable_latch |
InputValuePortType |
out |
OutputAudioPortType |
observer |
OutputAudioPortType |
Open questions
- Measure interpolation across WT frames and samples, including Index boundaries and behavior with interpolation or wrapping options.
- Confirm the first-cycle latched Index, simultaneous Index change and phase wrap ordering, and stereo/polyphonic latch independence.
- Document accepted WT structures, table normalization, high-rate alias behavior, and the exact Don't Wrap Tables boundary rule.
Version and sources
Checked against Bitwig Studio 6.0.6. This page combines Bitwig's module metadata, the existing Grid course and guides, and Nitro analysis where the mapping is strong enough to support a technical statement.
Related material
Return to Bitwig Grid Modules or the Grid Modules course lesson.
Also matches: Bitwig Wavetable LFO module, Bitwig Grid Wavetable LFO, Wavetable LFO Grid module