Ein Midievent hat 2-3 Zeichen, die du (ohne Buffer) mit 9600 nicht schnell genug wieder rauskriegst.

Ich würde es umgekehrt machen:
--> den Output mit softUart
--> und das MIDI-in mit der HW und
Config serialin =buffered , size = 12
da ist der Empfang dann automatisch gebuffert, damit nix verloren geht

EDIT: MIDI hat nur ein Stopp-bit, aber die HW macht eh nix anderes