I'm trying to use an offset to select what part of an N-1 and/or 1-N gets scanned through but as I turn it up higher you can see it is offsetting past the last step and hangs on 16. How do I set it up so it wraps back around instead of hanging?
Hard to see what's causing this, it could be clock timing, no idea where the S&H input comes from.
Have you monitored the index signal with the more precise port scope (long-press)?
The sample hold is taking input from the length knob just to keep changes in time you can kinda ignore it. Add is adding the pink sequencer with the Offset knob and then going to the 1-N index. It works fine until the value gets too high where instead of wrapping back around it just hangs at 16.
Can you share the patch here (or send me pm)?
I took out all the stuff not pertaining to the problem just so it's easier to understand. This is a small section of the Turing Machine I shared recently. Turning up offset moves the sequence through the 1-N but when it gets too high it sticks on the last step instead of wrapping back around. I want to find a way to make it wrap back around.
OK, choosing an offset between 0.75 and 0.81 seems to work for choosing steps 13 to 16 so it's simply a scaling issue.
To solve it, you could reduce the Offset knob's max. Value from 1.0 to 0.75.
The N-switches always expect a value range from 0.0 to 1.0 for the index that will be split equally over the number of buttons you're using.
Right but limiting the Offset knob range only works if the sequencer length doesn't change. If the seq length is 4 and I limit the offset knobs range it will work fine till I increase the length of the sequencer. It's like I need to find a way to change the range of the Offset based on the length of the seq pattern. Its a real head scratcher so far.
Well you can always divide the time signal by the length value 😉
If I may suggest a thing:
Maybe I need the length knob to control the scale of the offset… hm
or divide it…
“The N-switches always expect a value range from 0.0 to 1.0 for the index that will be split equally over the number of buttons you're using.”
Theres gotta be an easy way to make any signal over 1 get subtracted by 1.
Yes, another way to do it is using the Quantize module. Upscale the signal to be quantized (the higher, the more quantization steps you'll get) and calculate the difference between unquantized and quantized signal. This will always give you the remainings, so to say.
Aha using the length knob to inversely adjust the scale of the Offset did the trick. If length knob is at max Offset scale is at 0 and as you lower the Length the Offset becomes increasingly adjustable.