Default Protocol (bMIDIProtocol) – The Group Terminals which are members of the
Group Terminal Block may have a default MIDI Protocol. If a Group Terminal's default
protocol is unknown, MIDI-CI Protocol Negotiation may be used to discover the current
Protocol. MIDI-CI may also be used to set a different Protocol choice on that Group
Terminal.
Since MIDI-CI protocol negotiation ha been deprecated (3P-1), some question about how these values should be interpreted by application:
[a] In case bProtocol is set to MIDI 2.0. is the device required to also accept MIDI 1.0 voice message UMP type packets ?
In case bProtocol is set to MIDI 1.0 128 bits. is the device required to also accept MIDI 2 voice message UMP type packets ? Suppose MIDI 1.0 only ?
[c] in case bProtocol is set to 0, What type of message can/cannot be sent ? Should this fallback to MIDI 1.0 64 bits ?
Suppose a client must know about all the settings. For example, if a MIDI clip file would be in MIDI 2.0 UMP format, and if the device reports bProtocol 1 ~ 4 should the client convert all messages to MIDI 1.0 UMP Voice messages ?
P.S for Bandwidth,
[d] Is the application or the driver responsible for such scheduling ? How is this support or is implemented in current Desktop/Mobile OS'es?
[e] 0 mean basically means unlimited bandwidth ?
Just replying to bump this up. I think it got lost in a deluge of spam.
See these articles:
https://midi.org/midi-articles/building-a-usb-midi-2-0-device-part-1
https://midi.org/midi-articles/building-a-usb-midi-2-0-device-part-2
Chair of MIDI 2.0 Working Group