Curves
Bitwig Platform
A phase-driven LFO whose repeating modulation shape is drawn as editable curve segments and can be saved as a BWCURVE file.
What it does
Curves replaces a fixed oscillator waveform with a user-defined sequence of points and segment shapes. Its LFO clock scans the complete drawing from left to right, while smoothing, polarity, retrigger, synchronization, and phase controls determine how that shape becomes a modulation signal.
Controls and ports
The shared LFO controls set Rate, Timebase, trigger/sync mode, phase, polarity, smoothing, and modulator output. The pop-out editor adds and moves points, changes segment shapes, snaps them to horizontal and vertical grids, and loads or saves BWCURVE data.
Practical uses
- Draw a one-bar rhythmic pattern, snap its points to beat divisions, and use transport synchronization for repeatable filter, level, or effect movement.
- Use Note retrigger when the curve should behave like a complex per-note envelope, or enable polyphonic operation for independent voice cycles.
- Switch to Hold and control Phase externally when the drawing should become an addressable lookup curve instead of a self-running LFO.
Things to know
- The horizontal editor axis represents one normalized cycle; Rate and Timebase decide how long that cycle takes.
- Sharp jumps in the drawing remain real discontinuities unless smoothing is enabled, so audio-rate use can click or alias.
- Grid snapping changes editing precision, not the internal LFO rate by itself.
- BWCURVE support lets the shape be stored and recalled separately from the patch.
- The related Curves modulator uses Free, Note, Sync/Groove, Random, Hold, bipolar, and polyphonic workflows; exact availability and naming should be checked against the current Grid wrapper.
Technical details
No Nitro implementation has been confirmed for this visible module. The behavior is described conservatively from module metadata and editorial research.
A useful model is out = curve(fract(phase)): the current phase selects a segment between neighboring control points, and the stored segment type determines interpolation inside that interval. The BWCURVE parser, segment equations, boundary rules, and complete Grid wrapper are not present as a dedicated mapped Nitro body. The atlas does contain generic curve_smooth helpers implementing a one-pole low-pass stage, state = (1-c)*state + c*input with c = w/(w+1) and w = 2*pi*frequency/sample_rate, but a direct link from those helpers to this visible module has not been proven.
Open questions
- Recover the BWCURVE point and segment representation and measure each editor segment type with known phase addresses.
- Confirm whether the visible smoothing option uses the recovered one-pole helper, including its cutoff mapping and initialization.
- Test curve endpoints, discontinuities, phase values outside 0 to 1, BWCURVE round trips, and live edits during playback.
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 Curves module, Bitwig Grid Curves, Curves Grid module