sample and hold module that stores the last N inputs and loops the first M of them

Is there an easy way to do this with the existing modules? If not i’d like to develop it, just wanted to make sure i’m not reinventing the wheel. if my title is unclear, the idea is a sample and hold with a variable number of slots that is constantly recording into a buffer, which would be just a queue/stream of values. by default, it’s just passing through the recorded cv with no change, but you can trigger it to freeze the buffer and loop over the recorded values. you have two knobs, one to control how the length of the recording buffer, and another to control the playback length. basically a very simple discrete sampler that you could use for repeating stuff musically.

1 Like

You’re talking about a shift register. There are several in vcv rack. I don’t think any have a freeze and loop option as you describe.

There are also other modules that can loop through a sequence. So, you could accomplish this with two or three modules. If you have set values for cv you can just use a plain sequencer like

What are you sampling?

Have you looked at Turing Machine or Audible Instruments Random Sampler?

i know both marbles and turing machine can loop stuff but thats for the internally generated random sequences, right? not sample and hold/shift register

3 Likes

I think you are looking for this:

unfortunately there’s no documentation for that online and i cant figure it out

Oh right, the 23Voltes GitHub disappeared, I forgot…

Basically the Trig Input is like the normal Sample & Hold Trigger for the IN-Signal (In this example we clock it with a clock x1) You set the no. of samples in the right click menu, let’s say 8. When you now start the clock, it will record 8 samples into the buffer (red light goes on). After the 8 samples are recorded it will generate voltage based on noise (blue light). When you trigger the reset input, it will play back the 8 recorded samples (green light) and then returns to voltage based on noise (blue again). So if you want to always play back the recorded samples and no noise you will have to clock the reset input with a clock divided by no. of samples (in our case clock /8). If you want the pass-through you mentioned just add a switch clocked by the divided clock.

I like to do something like this,.

you can change the loop length by moving the cable returning to Bsl1r from the SPLIT, and toggle loop or input (in this case noise) using the btn. SIPO is the best (i.e. smallest with a full display of the registers contents with 16 steps). for longer sequences of values pd ~array does any length,. . curious how your implementation would work, could be nice to have more features packed in a nice looking functional setup.

Hm, maybe have a look at this Permutation Overview and Tutorial - YouTube - locking random sequences is really easily done with permutation (which is a turing machine).

Permutation is interesting but not as a sample and hold,. as far as i know. How many steps are available in the 23volts Mem ?