The MIDI sequence STEPPER

CCStepper.pdf (810.2 KB)

I’ve been having some fun the the two finger MIDI sequence GP script, and though I’m not really a script genius in any way shape or form, I can just comprehend how two MIDI note names can be assigned in that script and a third MID note to reset it, I had some fun adding some keyboard parts to songs I play with a cover band, and really enjoyed triggering the keyboard sequences such as Billy Idol Rebel Yell, the intro synth before the verse, in that performance, I would be lucky to pull that off live on the small Akai MPK3 controller I have, so I thought midi clocking it would be great, and it was, yippee, but also sad face I couldn’t play the guitar while I was busy playing two notes back and forth, so I had the midi sequence also drive a Kontakt instrument with my underlying guitar parts in there, DI guitar sound through the same VST3 amp modeller du jour, wow okay that’s cool, it was, but then again the sad face, wearing the guitar but playing two plastic keys still didn’t thrill me, the sound was great but I wasn’t playing the guitar part there, hmmm, somehow I have to drive the MID sequence with my feet, so I can play the guitar AND look cool. If you don’t look cool doing it why bother?

Then I thought how the heck can I drive two midi note on’s fast enough to propel the small seagoing vessel that is the the sequence?
I lucked out ! Stumbled across a technique using MIDI pipe app and utilizing the message converter, I would like to say it was complete forethought to realize one step with it’s inherent press and release could manufacture two note on’s, a note on via the depression and another note on via the release!

Nope pure dumb foolery, I was baffled for days why this worked but I only assume that MIDI pipe doesn’t discriminate WHICH CC value I send it, whether its 127 or 0 or anything in between, it will convert that CC into a note on in the case of setting the message converter from CC to Note On, there one press and release will generate two pretty rapid note on’s NOW WE CAN BOOGIE!

The caveat and hereto still afflicting downside is the CC value for resetting the midi sequence, in this case having two note on’s for this purpose is a wrench in the cog , depressing the reset MIDI CC in my case 29 resets the sequence , however releasing the CC29 switch also resets the sequence after all it’s just another note on, hmm, how to send only one value ? perplexed I came up with a workaround, but still not the greatest, having a control split on that CC29 midi pipe removes one offending note on release, however in the case of the midi sequences I’ve tried, creating a reset note etc, a chord, something to preface the midi sequence I intend still leaves the next CC70 driving note on’s in an offset of an eight or quarter or what have, therefore what works for the interim is a routine where before you reset the midi CC70 you first depress the CC29, therefore once the midi file has been reset by CC70 the first note on of a sequence, then the subsequent note off of that first CC70 note on can by realized by the release of CC70 and you’re off to the races, in time, the downbeat of CC70 you just plough on happily in time with yourself or a drummer or any pace you would like, you’re the boss and you’re driving the midi sequence hands free and you can squeal away on guitar, but now, how to play with way while I’m busy tapping up a storm, hmmm, back to the drawing board…


I fixed the YouTube video + separated the PDF. Bonus, here’s the PDF content:

Thanks for sharing! :slight_smile:


awesome ! I appreciate it , now my burning question is thus : stepping through the midi sequence is solved , reset that works for the midi sequence is my conundrum , I’m sure there is a logical approach but I can’t see it !
It’s great that the CC converter through the midi pipe app turns each CC (127 and 0) into note ons , that value really makes it tick for the sequence using the feet , but for the midi note that resets the midi sequence , whatever note you choose to specify in the GP script , having two note on’s from the reset CC # makes triggering the sample redundant , twice and leaves you in an offbeat state for lack of a better analogy ? I can’t see the forest for the trees , so what is required is a standard note on and off generated from the reset CC or perhaps a work around where that pedal isn’t leveraging the midi pipe , that one goes straight into a GP midi in block , but the script only see’s one midi in block ? I’m getting close but no cigar yet …
OR!! perhaps a tweak to the two finger midi sequence script could do all this magic without the need for midi pipe ! That would be the schiznay !!

First, did you check out this: [Gig] MIDI Stepper

Second, you should able to use a Gig script and eliminate the MIDI Pipe application - I believe that some of the scripting gurus can help you with that.

1 Like

A good workout for the left calf also, I presume :thinking:

Edit: It is impressive, however :+1:

1 Like

yes ! this script/gig file does almost all the magic and definitely solves the reset issue , I only require one midi pipe to convert the CC’s (127and 0) to subsequent note on’s … it’s fabulous .
happy dance , the only wish list item would be tweaking the script to take the CC’s themselves and drive the midi file sequence , I would assume instead of two note on’s you could associate two different CC values for the handsfree types , aka guitar players , the guitarists midi stepper gig perhaps ?

1 Like

Yes, scripting is required. An example of a gig script is here: Load gig File as it was saved: Setlist View et al - #28 by dhj

(you need CC to Note)

1 Like

Digging and delving , using the aforementioned midi stepper gig with it’s rack space GPScript , I can get decent traction with a momentary pedal driving two sub sequential note on’s great , but really not perfect timing , the caveat is as you release the pedal the timing of the gate is typically either early or late producing a swing effect which is typically undesired when driving a midi file , even, and consistent pulses are required .
Two pedals isn’t really an option though it would work , and require a seated position which isn’t great.

What about using a callback associated with the incoming midi note to SendLater ?
" SendLater : Schedule a MIDI event to be sent out in the future - only for use in a Scriptlet

  • Declaration: function SendLater (m : midiMessage, delayInMS : double) Autotype
  • Category: ScriptletBlock
    Parameters * m : midiMessage
    • delayInMS : double"

I’m not really qualified to insert this into a script but that’s a thought I had .
Triggering the midi sequence with a depress , just one , the release being ignored but another midi note on set at a desired delay in milliseconds , that could work for my particular case , each rack space would have a particular script defining the callback with it’s associated same note and sent later in regards to the milliseconds that would be training and error guessed from the tempo of the song , it would be fixed to a value but would allow for less tapping and in the case of many midi parts make it feasible to actually perform ? Script gurus ?
Happy Friday y’all !