Someone knowing better about all that will have to answer you. If your control surface sends MIDI messages sequentially, you need access to a larger buffer of received MIDI events than just a single message etc...I have no idea how that works, sorry...