Raw MIDI values via MIDI OUT: issues with interleaving or interference?

Michael DeFiore's icon

Hi,

I'm creating a device which sends out raw midi values via midi out. A message box contains the midi values, which is sent to [midiout] via a bangs. Some of the values are sysex which are 8 values.

Do I need to be concerned about different sysex values interleaving with each other?

For example, I send sysex value "F0 01 02 03 04 05 06 07 F7" and sysex value "F0 01 02 03 04 05 06 07 F7" at the same time via the same midiout. Does Max somehow deal with such a situation or is this something I need to deal with in my device?

Thanks,
Mike

pdelges's icon

You should be concerned about MIDI interleaving. It's easy to corrupt sysex streams in Max, and some hardware don't like corrupted datas (like old iConnect interfaces that just freeze when this happen).

Michael DeFiore's icon

It does not seem like Max has objects needed to ensure non-interleaving. Can anyone advise how to deal with the potential issues?

Source Audio's icon

it is not max, but ableton, which merges all midi out objects in a device
into single out stream.
in max you use separate midi objects without such problems.
in live, you have to time or better say put in a queue sysex messages.
or try 3rd party direct out midi externals, like imp.midi for example

Michael DeFiore's icon

Many thanks SourceAudio. Imp.midi worked very well to resolve the midi corruption I was getting when sending sysex. I've suspected for a while that Ableton's under-the-hood midi implementation left much to be desired; this experience confirmed it.