Tags: posts polarity-music Bitwig Note-FX Grid

Generating Repeating Patterns from Sample and Hold LFO in Bitwig Studio

Tutorial | Mar 31, 2022

In this video, I show how to get repeating patterns out of the sample and hold LFO in Bitwig Studio. I explain that when you input a signal above one, you can access static values that repeat. I demonstrate how to patch this up using a trigger, quantizer, transpose, sample and hold, clock, oscillator, and attenuate. I also show a quicker approach using a volume knob and bias module. Finally, I thank X iso for giving me the hint about this trick.

You can watch the Video on Youtube - support me on Patreon

Questions & Answers

Maybe you dont watch the video, here are some important takeaways:

How do you get repeating patterns from the sample and hold LFO in Bitwig Studio?

To get repeating patterns from the sample and hold LFO in Bitwig Studio, you need to input phase values into the input Jack with a face signal. This face signal should be amplified beyond the range of 0-1 to access more values. You can also use a bias module to offset the signal to access different patterns.

How does the hold mode affect the sample and hold LFO?

In the hold mode, the sample and hold LFO will only fade between two values that are randomly generated by retriggering the sample and hold LFO. The face signal is used to define the position in the cycle, and anything above one will access static values.

What is the importance of the feedback knob?

The feedback knob can be used to create more repetitive patterns. Positive settings will trend towards small changes over time while negative settings can lead to repeating patterns.

How can you quickly access multiple patterns with the sample and hold LFO?

To quickly access multiple patterns with the sample and hold LFO


This is what im talking about in this video. The text is transcribed by AI, so it might not be perfect. If you find any mistakes, please let me know.
You can also click on the timestamps to jump to the right part of the video, which should be helpful.

[00:00.000] Hey folks, welcome back to another video. Today I'll show you how you can get some repeating
[00:12.440] patterns out of the sample and hold LFO inside Bitwig Studio. And it's not explained in
[00:20.880] the manual, also not on the screen yet. That's a kind of an odd behavior of the sample
[00:27.480] on hold LFO when you have it in the hold mode here. And you need to input some phase values
[00:36.800] here with this input check to actually get something out of it. I have the grid itself
[00:42.560] here in mono mode. I always forget to mention this because people try to replicate what I
[00:48.240] do in the grid. And if you need a self running patch, then you always need to put the grid
[00:54.120] into a monophonic mode. Okay, so now we need here an oscilloscope. Switch this to slow
[01:02.920] mode. It's a bit longer. So you can see what's going on. So when you have this here for instance
[01:09.680] in hertz mode and you get some values out of it and it depends how many or how fast you
[01:19.280] get values out of it by changing here the rate basically. But what you get is an always
[01:27.280] random value at these are teams that way. So you get always fresh new values. So when
[01:35.440] you use this for instance as a node input for pictures, then you get always new kind of
[01:41.400] combinations of nodes or pitch signals or pitch information. So a lot of people actually
[01:49.240] want to do some kind of generator of music. So they need repeating patterns, right? So
[01:54.520] you need a melody and this melody is maybe a bar long or two bars long. And then inside
[02:00.480] these two bars, you want always always have the same notes playing in the same order to
[02:07.120] get a melody. This is how a melody works, right? You have a repeating pattern of nodes.
[02:13.320] So what we do now is we put this back here into hold mode. So you can see there's only
[02:18.440] coming out your one one value. And the user ex ISO actually that you probably already
[02:25.880] know from the bit with this code also link you to the to his channel in the description
[02:30.200] below. Found out by accident or by explaining something different that you actually can input
[02:36.880] into the face Jack here of the sample node LFO values above one. So normally a face signal
[02:46.760] looks like this. So I use a face in here. So this this is how a face signal looks like
[02:53.440] it's a ramp from zero to one. And it defines all kinds of positioning for LFOs where you
[03:01.000] are in the cycle or, you know, yeah, it's basically a positioning signal. So it's always
[03:07.240] from zero to one. And you have to input this also here or you can input this here. Put
[03:14.960] this all the way up and you can see something happens here already, but not really that
[03:20.560] much. And it turns out when you have the sample node LFO in hold mode, you actually only
[03:29.520] fade between two values, two random values. And everything above one, which you don't get
[03:38.200] at the moment because the face signals only from zero to one. You can access all kinds
[03:44.840] of values that are basically static. So if we put a trigger on here, let's see. That's
[03:56.360] one here. And trigger this. You can see something changes here. And when we also use the
[04:04.560] face signal as a second input, you can see every time at the same point on the face signal,
[04:14.320] something happens. We have always at the end of the face signal of the cycle here. Yeah,
[04:20.360] more curve downwards. And when we press V trigger, it looks differently now. So now we
[04:29.240] have this kind of shape here, but it's always the same shape, right? And it turns out that
[04:35.960] in this hold mode, when you input your face signal from zero to one, you fade between
[04:42.480] two values, two random values that are only generated by retry growing the sample
[04:48.800] on hold LFO. So every time you press this, you get a different fade between two values.
[04:54.400] So you can see now we have this kind of shape here. So if we now amplify this face signal
[05:04.240] here, by let's say using multiply constant, what we do now by using maybe two here, we
[05:22.720] make the face signal twice as high as you can see here, we go way beyond of the one value.
[05:31.520] So now the face signal ranges from zero to two. And you can see the shape changes here.
[05:40.080] Even though a face signal is not greater than one, if you input here a signal that's greater
[05:45.960] than one, then you get more out of the sample on hold LFO, which is kind of unique, I think.
[05:53.240] I haven't tested this all, also not with other oscillators, but with the sample on hold
[05:59.520] LFO, it looks that way. So now you can amplify this even more. So let's say eight. You can
[06:10.760] see we have now a shape here that's kind of has more kind of value steps in there, but
[06:17.960] also some curves in it. I think it's just sampled noise. So every time you press this
[06:24.960] trigger button here, it samples a bunch of noise, a chunk of noise, and then it stretches
[06:30.680] it out. And you can use then the hold mode here and access basically the whole range.
[06:40.080] I think you can go up to one of the 24 or something like this here. I'm not even sure
[06:45.760] to access the whole sampled noise part here. But if you go down to eight, for instance,
[06:53.920] you just get an excerpt from this noise. But the important part is that you get now a
[07:02.680] signal that's random when you press the trigger button, but then it repeats. It's probably
[07:14.120] ballistic basically. You know what you're getting out of it. And then you can use the
[07:18.880] signal as a, yeah, as a note source, basically. So we use a quantizer here to bring it to
[07:28.440] a scale, of course. Or maybe you use your D sharp minor. Of course, you like it. I know
[07:36.320] it. So we get into that. And then we obviously get here a lot of high pitch notes because
[07:43.560] this, yeah, this signal, it goes from zero to one. So we need to use an attenuate here
[07:51.120] before that and scale everything down. Maybe took this and see, it's the same, it's the
[07:58.040] same curve. It's just scaled down. Then we use a transpose, as we want to use a minor.
[08:09.840] Back from C down to A, it's minus three. Use a sample and hold. Use a trigger here.
[08:22.200] Not a trigger. But this part is not really important. It's just needed to make some music
[08:28.240] with important parts. Basically, this, this party of it generates the notes. Clock quantizer.
[08:38.600] There it is. Maybe 7, 16. Then we use a sign, oscillator. We use the notes. The trigger
[08:51.440] sample note with this. And we use an ad. We need an output, of course. So I get pretty
[09:17.400] much a lot of different things here. If you want to change basically this melody, want
[09:23.520] to have a different melody, then you can trigger. And it randomly samples another bunch
[09:30.000] of noise. And you get a different curve and a different melody line. You can also access
[09:42.480] here or change the melody by using this feedback thing here. And I think the feedback knob
[09:57.600] also applies exactly like it's explained here in the description. Correlation of successive,
[10:06.200] output values where positive settings trend towards small changes all the time. And negative
[10:13.920] settings can lead to repeating patterns. Okay, so this should be more repetitive here
[10:24.760] than this one. Then you can also dial, dial in at the epoch settings. Okay, so you can
[10:38.880] play around with this also. Another trick that also ex ISO found out is, oh, it's actually
[10:45.960] not a trick. What you can offset this range here. So now we basically have a phase signal
[10:55.320] as you can see here from zero to eight because we amplify it here by eight. So this ramp
[11:01.040] signal here is going from zero to eight. But you can also offset. So we can say we want
[11:06.480] not from, we don't want to have the sample or the noise sample from zero to eight. We
[11:12.600] want to have it from eight to 16 maybe, right? So you can use some math here. We need an
[11:22.360] add and another multiply in a constant. So, so two times, two times eight, right? Which
[11:42.280] means we scale this up from from eight to 16, then, and then we add these two together.
[11:53.920] We can see now the phase signal is completely out of reach here. It doesn't start at zero.
[12:01.800] It starts at eight and goes up to 16. So what this means is this is here kind of a pattern
[12:08.640] so now you have the first pattern, which is repeating, but random and this is the first pattern.
[12:21.880] It's also randomly generated, but it's always the same. And the third pattern
[12:37.320] we have a lot of patterns you can access here from this noise, which is just stretched
[12:44.520] out. And it's always re-sampled when you hit this trigger button here. So if you press
[12:52.360] this, we sample a new chunk of noise. We get new values and we can access these values
[12:59.160] here with these math operations. So the sample and hold module here in this hold mode is
[13:15.800] actually a nice source of pitch signals, which are repeating and you can create new random
[13:26.200] combinations of values by pushing this trigger button here or by re-triggering the sample
[13:31.160] and hold LFO. And you can also use here this kind of math operation to actually access
[13:39.360] some patterns. You can define how long the pattern is, which is more like the sample
[13:43.720] size here, live, and then you can iterate through different patterns, getting different
[13:49.000] melodies, but these melodies are always the same. If you think this whole pattern thing here
[14:01.200] is too much work and you can't remember how to patch it here, there's a quicker way,
[14:07.200] which is probably better for if you do this kind of patching live. So we'll move this
[14:13.320] here and you can see we have your multiplication operation and just an add operation, which
[14:19.880] is just scaling and then offsetting here. And when we remove this, we can also do the scaling
[14:27.960] by using a volume knob. You can see here it's going from zero to one like before and when
[14:36.600] we amplify the signal, it's now going from zero to I don't know eight, something above
[14:43.400] one. And then to offset this, we can use the bias module and say just offset the whole
[14:53.000] thing. Now let's go back to zero to one here. You can see it. So now it goes from zero to
[15:00.360] one and then we offset. And it starts somewhere above zero here, maybe at zero dot five and
[15:07.880] it goes up to one dot five, for instance. So you can access multiple patterns with the bias
[15:14.440] module. You can even modulate this better. So it's maybe a quicker approach. And of course,
[15:21.800] for the generation, you don't need this here, only this. So this is an offset and amplify.
[15:39.720] That's that's all you need to read random reoccurring patterns with a sample and hold LFO.
[15:47.240] That's it for this video. Thanks for watching. Please if you like, if you like the video,
[15:53.480] ask me some questions in the comments and make sure you also follow X iso here on YouTube.
[16:00.200] And thanks also to X iso for giving me this hint about this trick because it's actually pretty neat.
[16:06.280] Thanks for watching and I'll see you in the next video. Bye.