Oscillator pitch rise/fall/hold at given rate/period?


#1

I'm still new to patching, and there may be a simple method to do this which I've missed, but I've searched the forum and tried a few things without the desired result so I'm looking for a gentle push in the right direction...

Basically, I'd like to trigger an oscillator to increase (or decrease) its pitch (freq) within a specified range over a given time (or clock, etc). Very much like sliding up (or down) the scale X# of semitones, then hold at the new pitch.

I think if there were an object for this, it would likely have a trigger input, a boolean input for up/down, 2 parameters (dial or user input) for range, 1 parameter (dial or user input) for rate of change (time/clock) with hold being built in.

I'm sure this has probably been done, and there may even be an object for it, but I'm at a loss right now if I should be thinking math, table, sequence? or some combination. Any guidance is much appreciated. Very long winded so I hope I've explained it clearly enough... :sleeping:


#2

well from a different perspective this is like inputting normal midi note commands, but with a glide portion applied. there are many different ways to do glide in axoloti, just put a (k-rate) lowpass filter between the midi note object and the input of the oscillator. there are also dedicated smooth and glide modules. the glide time would then be your rate of change, and old and new pitch would be your "range".

or what are you trying to do? should it always be the same frequency sweep? you could also use an lfo (saw) for this. set at a slow speed and increase/decrease gain of the lfo to get the desired range. (and add an offset to get a different starting point than zero) invert to get sweep down...etc.


#3

@lokki thanks for that info, I'll look at those objects.
I'm attempting to build a noodling patch is what I believe they call it... and a certain trigger toggles the pitch shift in the oscillator. Much like sliding up the neck of a bass but from (in this case) B3 to E5, hold at E5 until triggered to slide back down to B3. The rate of change should be linear (or adjustable) but the length of the change is important. I could do this easily with midi using the little test circuit I built tonight with a digi-pot, but would like to leave that out of the equation for now. I'll look at those items you mentioned in the coming days... morning comes early... :wink: :sleeping:


#4

ok, so a basic lfo setup will not work, since once at the top, you go to the bottom again. you will need to stop the lfo exactly when you are at the maximum value. might be easier with two dials (to set the notes) and an or object, that selects which of the dials is used. follow this by a smooth/glide object (to adjust glide rate) and you should be good to go.