This is my first unit I made that I feel like is actually worth posting here, so I hope you guys enjoy! The Infinite Arp is a continuous arpeggiating sequencer that will run a sequence so long as the gate input and the arp trigger input are active. The first note is always the note you play, then the sequence begins with the next arp trigger. The sequence will be repeating when triggered by a steady clock, though after a while it slowly evolves one note at a time. The idea for this came from seeing my buddy play his Korg MS2000 and I always loved the arpeggio effect it had, so that any note he played would start a sequence and repeat it. I couldn’t seem to find this type of custom unit here that functioned like this, so I figured I would take my shot at recreating this effect. Currently made with Firmware V5.0.4 and haven’t tried it with V6.0, but it’s using only built in units so I think it would still work.
How To Use - Note: A Scale Quantizer is required for this to work properly. Insert the Infinite Arp after the pitch input of an oscillator and place the Scale Quantizer after the Infinite Arp to quantize the notes being generated.
Gate Input - This starts/stops the sequence; I typically just use the same gate as the oscillator.
Arp Trigger Input - This triggers the S&H value that becomes each note in the sequence; each time this is triggered, a new note is captured to use in the sequence. Because of this, using a clock is highly recommended if you want a repeating sequence. I typically use 1/8th and 1/16th note clocks for this and get really satisfying results, but you can use any note division you want.
Seq Length - Sets the length of the sequence and in turn changes the pattern. It goes up to 64 steps in length, but honestly it’s only limited by the range and the starting note you play, so in theory if you play a C0 and add enough range you can play 96 steps through a scale quantizer set to chromatic. At a value of 0, the sequence is 2 notes; this means that every value above 0 will have a sequence length equal to the Length value + 2 notes. For example, if Length is set at 2 then the total sequence will be 4 notes.
Range - Set the range of notes you want the sequence to run with. Use negative values for descending patterns or positive values for ascending. It isn’t a 1:1 ratio; a range of 1 doesn’t mean exactly 1 octave of notes will be used based on the incoming V/Oct value, but it’s close.
Variance - Adds random notes to the sequence so that a higher value means larger note shifts in the original sequence.
CPU - Including a Scale Quantizer in front of it, I was seeing ~6% CPU when running. If recreated in the middle layer SDK I imagine it could get even lower.
With a clock used for the Arp Trigger, the sequence will repeat itself for a while until the generated note values drift enough to shift one of the notes a half/whole step in the scale.The repeatability problem seems to come from a small latency that accumulates over time; the unit is sampling a sine save that’s frequency synced to the trigger input while that same trigger input is used on a S&H to capture a value from it. While running, I can see the S&H values slightly changing over time until they become large enough to shift one of the notes in the scale. A reliable clock will help to keep the sequence repeating for longer, but I use Pam’s New Workout and still have this issue. I haven’t figured out how to fix this yet but I’m sure someone here could figure it out! This is the first unit I’ve created and shared on here, so I’m totally open to all suggestions for improving it. It can create some really interesting patterns and the slow evolving of the sequence one note at a time actually sounds really cool if you don’t mind it lol.
Tip: When the Gate Input isn’t active, the Arp Trigger Input will reset the sequencer’s note output to 0 so that the incoming V/Oct will be unaffected by the unit. Range values of 1 or higher typically yield the best results; a range of 0.5 or less might not create large enough values to register a new note in the scale and result in two of the same notes next to each other in the sequence. Sometimes this same issue happens if the length is changed while the gate is still high, but just re-trigger the gate to get a new sequence and it will go away.
Infinity Arp.unit (26.5 KB)