Stepper-like behavior with meta devices in FX chains?

Hey all, looking for an assist here…

I’d like to be able to emulate the stepper modulation device’s behavior in the instrument or track fx section using currently available native meta devices. I’ve been able to achieve some stepwise motion using a couple of different approaches…

First, using an odd combo of a key tracker, hydra, and lfo and some destination splitting and feedback, but the movement was not regular, and the desired looping behavior wasn’t achieved. I also used a signal follower and a very short trigger sound tied to lfo frequency to step through a series of values. Satisfactory movement, with some fiddling, but same issue with a lack of cyclical movement.

I’m a dunce when it comes to the formula device, but I wonder if there is some way to utilize this (or some other combination of meta devices) to replicate the utility of the stepper device in fx chains.

Love to hear your ingenious solutions if you’ve got em!

eternal gratitude if so!

1 Like

You could “alias” your meta signal using a math device doing simple math in there, similar like:

a is amount input (range 0 to 1)
x is signal input (range -1 to 1)
y is signal output (range -1 to 1)

amount = (1-a) * 255 + 1 (range now is 256 to 1)
y = math.floor(x * amount) / amount

EDIT: I forgot that meta signals are unipolar in Renoise, too (0 to 1), but above should still work. You might want then scale change into a logarithmic curve or so, because like this, most likely the heaviest effect will be at the right end of the slider, so you want that area zoomed in.

Maybe then similar like:

amount = 1 - log(x) * 0.5 * 256/2

2 Likes

thanks for the input!
I’m having a hard time getting this to work inside the formula device. I’m guessing it’s because I know next to nothing about coding and am botching the syntax somehow…

how would this look inside the formula device?

Well, maybe it is not such a good approach, just tested it.

1 Like

no worries. let me know if you get any other ideas how this might work. I think for now I can get away with using a trigger sample on a separate (muted) fx chain running through a signal follower triggering the frequency value of an lfo to cycle through values. takes some fiddling to dial it in, but seems functional… Actually, scratch that. On testing, it doesn’t sync to keypress the way I want it to… back to the drawing board.

I Imagine it can be done more precisely through the formula device, it’s just that I don’t know lua, and haven’t done any serious math in a loooong time :upside_down_face:

If anyone knows the way, please do show it!

OK, this is very interesting, and seems useful. Thank you! Is there a way to make values “wrap around” in the formula device? I’m looking for a continuous, linearly cycling progression of values tied to keypress, much as the stepper mod device offers.

I notice that you are using an effect command to sync the lfo reset on the first line… this I would also want to find a work around for.

Basically I want to be able to quantize a set of values to keypress, and be able to have that set of values cycle without needing to trigger an lfo reset. The reason for this being that I want to be able to use this through phrases, which can’t trigger sample fx chain commands. I’m looking for complex, generative, non-random, event-specific dsp modulation independent of the pattern editor.

Maybe it can’t be done?

Would be great if the stepper was available as a meta device OR the lfo was beefed up a little to include the stepper’s functionality… Any chance of this happening in a future update @taktik?

I’m sure I can find workarounds via automation, but it would be an awesome addition to renoise’s functionality to be able to step cycle through any modulatable dsp parameter via keypress. The musical possibilities with that capability would be huge

1 Like

Already going to make a proper stepper fx chain doofer. I think I even found a bug in the LFO, which I am able to compensate though. Gonna try to test & finish the thing later tonight…using the custom LFO as table for the stepper values…!!!

2 Likes

AWESOME!!!
:crossed_fingers:
please post a link in this thread, too, for future seekers

might be tricky getting the modulation out of the doofer though? Might have to bring dsp inside the doofer to modulate it…

It already works very well, cycling with positive and negative steps, using step 0 does a random step. But I am still trying to figure out how to do a proper reset. Chosing a reset point in the table by fx column work would be neat, but it is very tricky to do, not sure if I can make that. I think I can only support resetting to a configurable starting value for now. Trying not to make things too complicated to work with.

Oh and yes the doofer is locked in, and sadly there seems to be no “unpack doofer” command or tool. If I manually unpack each device, they loose their modulation targets, and even get wrong targets - a bug? I tried saving it as a device chain, as a workaround…well, loading it will replace a device chain, but at least the mappings mostly stay intact. And then the the key tracker looses it’s target as well, but the other devices keep it? A vel tracker will also keep it? Definitely another bug! I’ll just use the velocity tracker for cycling the values.

1 Like

I’ve done it! :clownstep:

1 Like

¿ Looks kind of fiddly … No idea what you guys are trying to achieve :laughing:

complex, generative, non-random, event-specific dsp modulation independent of the pattern editor :fire: :metal: :fire:

And, by god, @OopsIFly’s done it! :fireworks: :partying_face: :tada:

So exact the stepper thing which advances only on next note? And not some of the usual suspects like sample and hold?

correct. you can now make non-random modulation patterns for any dsp parameter without using automation at the level of the pattern editor. Very useful in conjunction with phrases, especially probabilistic/generative ones where you want a class of values (for pitch, cutoff, whatever parameter you want, dsp included!) to cycle through, asynchronous (but crucially, not randomly in relation) to note events - whether triggered probabilistically or not

it’s a game changer for me, at least :upside_down_face:

I was working on something like this last month for a potential video subject. Mine is a bit simpler, since it just relies on the Formula to boost the value. Ran into the same LFO decay problem with fast activations at low BPM/LPB.

Effects Stepper.xrnt (6.5 KB)

3 Likes

Yeah, I’m at the point where I’m trying to get it as precise as possible. Set the trigger LFO to size 16 points at one LPC (max TPL resolution) with only the first point up, this will give the greatest resolution. But I found no way so far to know whether more than one note was played during a tick.

Don’t the limitations for the slow songspeeds apply for the pattern data, as well, just the song will play back so slow that the notes will always also be very slow, yet if you keyjazz the resolution will be higher than the tickrate that the modulation devices run on? Maybe it is time to allow upping the tickrate higher than 16? I know that renoise can work crazy fast if you up the LPB massively.

1 Like

Isn’t this limitation largely immaterial? I’m seeing these fx steppers as acting primarily on monophonic material by virtue of how the various dsp operate on a signal… we don’t exactly have parallel processing except by using sends, and in that instance, each chain could have its own stepper if desired. That might be how I would approach polyphonic material in this case. But maybe I’m missing something? Do you have an example where you would want the fx stepper to register simultaneous note events?

Yeah, well, it would be consequent behavior that two notes triggered also skip by 2 steps. Instead, when they happen on the same tick, only one would be registered. But you are right, it is basically monophonic behavior and doesn’t matter so much, as the stepper can only control a single voice anyways. And it goes through for me as kind of intrinsic behavior, like it is just the character of the setup, it works well this way.

Just had another session tweaking my initial patch for version 1.2. I now have a working reset knob with which you can manually scan through the whole range and reset to custom points, it can be controlled by pattern fx and also by key/vel trackers and point modulation envelopes. Really nice, I like it a lot. Now thinking about what could still be done. Not sure about automating the step value, if it would really be useful. I don’t want to make the patch too complicated. Step Formula still has a free control though.

1 Like

Very cool, this ^

Definitely post it up when you are ready with it!!

I know this thread has been mostly just a few voices, but I am sure this device chain will be very useful for many people down the line!

2 Likes

Oh hey, I made a video about this topic.

2 Likes