Sticky Note Perseveres through Patch Changes

I’m using Cantabile and a MIDI Bass Pedal to send CC to a Kemper Profiler (MIDI-controlled Guitar Hardware/Software Amplifier). With this arrangement, I can step on any Bass Pedal Note and turn on a +3 dB boost (or any other effect) on the Kemper (pretty much all Kemper parameters are CC controllable). Cantabile gets a midi note from the bass pedal, then this single note is turned into a CC and passed to the Kemper. This is the MIDI filter sequence:

  1. Map Key Range to a Target Note (in this case 32 thru 52 all goes to 48). Step on any bass pedal note and 48 MIDI note is generated. No particular reason for those notes other than my bass pedals run from 32-52 and I’ve settled on 48 for this exercise.

  2. Note as Controller, Set as Multiple button controller with a single note range (48 in this case). For the Kemper, the effect CC I’m using is 23, so when a Bass Pedal is pressed, the PRESSED = 127 and the RELEASED = 0. When the Kemper receives 23CC=127, the boost is on. When the Kemper receives 23CC=0, the boost is off.

To summarize, step on a Bass note and 23CC at a value of 127 is sent to the Kemper and the boost is activated. When the pedal is released, 23CC at 0 goes to Kemper and the boost is deactivated. This is MOMENTARY. Using Cantabile MIDI filters to send CC to the Kemper has many possibilities. Step on one Bass note for a Wah Pedal, another for a Chorus, etc. It works great!

I wanted to step on any Bass Pedal Note and TOGGLE the boost, so I inserted a Sticky Note Midi filter to turn the 48-Note on/and off with each press of any Bass Pedal Note. That also works great. Step on a Bass Pedal note, Kemper boost turns on, walk away and play a guitar solo, walk back to Bass Pedals, hit any note, and the Kemper boost turns off.

Here’s the problem: If I change patches (both Cantabile and Kemper), the Sticky Note status seems to persevere through the Cantabile patch change. So in some situations when moving from a patch that just used a Sticky Note filter to another patch with a Sticky Note filter, the Sticky Note has to be pressed twice to “Unstick” the note. I do not want the Sticky Note to persevere through a patch change and the only way I see to release is with a Master Release Note and/or a Master Release CC which appears to be too late for my need as I can’t think of a way to send a CC into Cantabile with a patch change (out of Cantabile is easy with the background rack).

The midi output to the Kemper can be monitored and the Notes and CC appear to stay latched or unlatched from patch to patch. I’ve also tried the Latched Controller Filter, and that seems to do the same thing (Cantabile holds the status through a patch change).

With this stated above, 1) Has anyone noticed that the Sticky Note Midi Filter perseveres through patch changes? and 2) any other ideas to reset the sticky notes and/or latch controller filters with a patch change? Maybe this behavior is by design and I’ll just have to deal with it.

Hi @easteelreath,

Thanks for reporting this. What you’re describing is a side effect of the MIDI filter implementation in Cantabile - they can affect MIDI events as they pass through, but that’s it. They have no control over things once they’re unloaded.

One possible fix might be to use a state or song unload binding to send a note off for the stuck note.

Brad

1 Like

Mr. Robinson,
Thank you for your reply. I believe I’m reading your response to be: Once the CC is transmitted outside of the Cantabile host, the receiving MIDI device remains in that state until the CC is changed again. I totally agree.

I deactivated the Note to Controller midi filter for clarity, and this is the behavior displayed in the Midi Monitor:

  1. Press and release any Bass Pedal note and note 48 is ON (held) in the midi monitor. This is the expected behavior from the Sticky Note Filter.
  2. Change patches and Cantabile sends an OFF for note 48 (did not touch the bass pedals, so I assume Cantabile sends note off signals for any held note during a patch change).
  3. Press any Bass Pedal note and Note 48 gets another OFF signal. It looks like the sticky note filter doesn’t reset with a patch change. Note 48 got two sequential OFF signals. Seems like one from the patch change and one from the Sticky Note.

Maybe this behavior is by design, but when I move to a new patch, I’d like the state of the Sticky Note to be in a reproducible/predictable state that is not related to the previous patch. I searched for this “Unload Binding” and do not see it on the forums. But that concept makes sense to send the note OFF for 48, OR the master release note or master release CC at the start of the patch. How would you suggest putting the Sticky Note Midi Filter to “Unsticky” at every patch change?

Coo coo ca-choo Mr. Robinson :grin:

3 Likes

Yes,

The only way I could think to reset the sticky note filter in this case is as follows:

  1. In the stick note filter, set a master release note or CC. I’m using note 36 but use whatever suits you.

  2. In Options → Miscellaneous → turn on Show Loopback Ports

  3. Create a binding like so to send that note when you want the filter reset. eg: here I’m sending on state load. Make sure you send it to the loopback port that the sticky filter is listening on.

Brad

1 Like

Yes, the Loopback ports work and they are an interesting feature I’ve never used. I’ve got to think really hard about the sequence of unsticking a note and loading a new patch as there are delays and multiple hardware midi paths in my setup. In the background rack, the Sticky Note Master Release CC is first, THEN the patch is changed in Cantabile. Seems like I read somewhere that the Background rack is executed sequentially for same trigger (in this case a particular patch change). Even though I send a CC to the Sticky Note Master Release to unstick the note, the unstucking still generates a MIDI event which can effect the next Kemper patch (or at least that’s what I think I’m seeing). What I believe is happening is a hardware and software delay such that the Kemper Patch Change can never happen after Cantabile unsticks the note. Here is the sequence:

  1. Kemper and Cantabile PC get a patch change signal from Midi Splitter
  2. Kemper changes patches right then when the command is received
  3. Cantabile calculates a few cycles, does the loopback CC, unsticks the note, and generates a midi event which then goes to the Kemper
  4. Delayed unstuck note midi event can therefore effect the Kemper after the patch change is executed.

A working solution appears to be perform the patch change twice via background rack, so the Master Release CC unsticks the note, then the patch changes, then the CC again, then the patch change. That works in all situations. I have some patches that load with the boost activated and the “Note to Controller” is reverse acting than those patches that load with the boost not activated. In other words, if there is a sticky note in the patch, press the program change 2x to make sure all the midi events are flushed out going the the Kemper and the new patch is initialized AFTER all the notes are unstuck.

Another solution might be to let Cantabile send patch changes to the Kemper so the order of events can be controlled.

To summarize, the Loopback ports solve the problem, but a midi event is still generated during the unsticking process, so the patch change is done twice to ensure the patch is not effected by a stray midi event.

It works… Thank you for the Loopback port suggestion.