Trigger Script Issue

First there are probably other way to do this even without a GPScript:

Getting back to your local GPScript, I don’t like the fact that you don’t take into account the actual state of your controller (newValue), but another Boolean variable (i). You could make this work by setting i=True in the initialization and the On Activate callback, but this is the kind of source of confusion that leads to the kind of weird behavior you are faced to.

With the widget settings proposed by @Schamass (you could additionally use ignore variation), the callback could something like that (I didn’t test) :

On WidgetValueChanged(newValue : double) from LeftHold  
  SendNow(BottomKbdIn, MakeNoteMessage(70, newValue*127))      
End

But again, no GPScript is necessary for that or perhaps I missed something. :wink: