Ahh that explains it.... the reason I asked about the length of the string is that I was trying to figure out if the bottleneck was the MIDI interface or synthesis engine.... Guess it's synthesis, which is actually not so bad, because it shows that it's midi interface can handle full-speed sysex... So long as that sysex doesn't cause the the synthesis engine to overload the uC. This indicates that the sysex messages don't need to be slowed down, as the midi interface will handle them, but they do need to be spaced out far enough to avoid overloading the uC. I think you will find that the space you created with 6-7 active sense bytes was insufficient. As TK described, 6-7 of these is not even 3ms, probably not long enough - if the pause is audible (which it obviously is) then it's at least 10ms, if the pause is only a 'click'. I think you're going to need more like 30 of those bytes! Give it a try... Although, there still might be problems with the sysex not being sent as fast as you turn the knob. ... I like your new idea, but I was thinking... I would run a timer and just send the value when the pot has not been moved in X milliseconds or something... That way there's no loss in resolution :)